EEG_data was refactored to take the classifier at init time. If no classifier is provided EEG_data will use Null_classifier instead.
EEG_data's reference to the classifier is protected, meaning only sub classes (ERP_data) can touch it. I cleaned up all the tests/examples that were "reaching into" EEG_data to access the classifier.
Note - some of the EEG_data use cases are a bit tangential, which makes injecting a classifier seem wrong. For example: eeg_lsl_sim.py. This uses EEG_data essentially to load a file. In a few more steps, the data loading will be handled by a class that's injected into EEG_data. That means, eeg_lsl_sim.py won't need to depend on EEG_data and the need to inject a classifier will disappear. For compatibility, I made the default classifier Null_classifier, but I think this should be a required parameter in the future. Refactoring can be like that, getting messier as we step out of the local minima.
B4K-216
EEG_data was refactored to take the classifier at init time. If no classifier is provided EEG_data will use Null_classifier instead.
EEG_data's reference to the classifier is protected, meaning only sub classes (ERP_data) can touch it. I cleaned up all the tests/examples that were "reaching into" EEG_data to access the classifier.
Note - some of the EEG_data use cases are a bit tangential, which makes injecting a classifier seem wrong. For example: eeg_lsl_sim.py. This uses EEG_data essentially to load a file. In a few more steps, the data loading will be handled by a class that's injected into EEG_data. That means, eeg_lsl_sim.py won't need to depend on EEG_data and the need to inject a classifier will disappear. For compatibility, I made the default classifier Null_classifier, but I think this should be a required parameter in the future. Refactoring can be like that, getting messier as we step out of the local minima.