BasicLogFilter (implementing interface Transform) should implement a new method, ~GetIndexProvider() that will utlimately be called from the firehose (returns the provider, or nil if anything goes wrong)
in cmd/sfeth/cli/firehose.go, when registering the BasicLogFilterFactory, it should be pre-loaded (using a FactoryFactory :tm: ) with the index store and the indexSizes array.
in bstream and maybe the firehose package, you need to check if GetIndexProvider is implemented via a new interface, and call it on your transforms (see the transformReg.BuildFromTransforms method, that generates a preprocessor, now you need the same mechanism to generate an index)
What to do if more than one tranform generates an index ? panic for now..... or maybe just use one of them.
BasicLogFilter (implementing interface Transform) should implement a new method, ~GetIndexProvider() that will utlimately be called from the firehose (returns the provider, or nil if anything goes wrong)
in cmd/sfeth/cli/firehose.go, when registering the BasicLogFilterFactory, it should be pre-loaded (using a FactoryFactory :tm: ) with the index store and the indexSizes array.
in bstream and maybe the firehose package, you need to check if GetIndexProvider is implemented via a new interface, and call it on your transforms (see the transformReg.BuildFromTransforms method, that generates a preprocessor, now you need the same mechanism to generate an index)
What to do if more than one tranform generates an index ? panic for now..... or maybe just use one of them.