spikeinterface icon indicating copy to clipboard operation
spikeinterface copied to clipboard

Add additional "check functions" for modules à la `available_sorters`

Open zm711 opened this issue 6 months ago • 2 comments

          Hello, I'd quite like the user to be able to get a list of available preprocessing steps, like we have for sorters: https://github.com/SpikeInterface/spikeinterface/blob/d142fe41d7b6177aea2591d68196b7cf4b6354a3/src/spikeinterface/sorters/sorterlist.py#L56 

So I'd like to expose a list, which is something like:

available_preprocessors = [foo.__name__ for foo in pp.preprocessor_dict.values()]

Originally posted by @chrishalcrow in https://github.com/SpikeInterface/spikeinterface/pull/3898#discussion_r2075021023

zm711 avatar May 15 '25 20:05 zm711

Copying over from #3898 so we don't lose this suggestion for discussion.

zm711 avatar May 15 '25 20:05 zm711

Thanks! I think it'd be great to have a unified way for the user to check what's available for them. We currently have:

si.available_sorters() returns the supported sorters. si.get_available_analyzer_extensions() returns the supported sorting analyzer extensions

I quite like the get and function call. So I think it'd be great to add:

si.get_available_extractors() made from the many extractor dicts si.get_available_widgets() made from widget_list in spikeinterface.widgets si.get_available_preprocessors() made from preprocessor_list

And deprecate available_sorters in favour of get_available_sorters, then document.

I think these are cool cause they expose the user to the breadth of spikeinterface, and are helpful! Any other points in a worflow when you're stuck wondering "what options do I have??". Maybe with metrics...

chrishalcrow avatar May 18 '25 13:05 chrishalcrow