I just noticed that in a Raw instance, raw.proj remains as None even when raw.add_proj() has been called, as add_proj() modifies raw.info['proj'] but not raw.proj. This causes reads of raw.read_raw_segment() not to use projection. It seems like a saner behavior would be to have add_proj set the raw.proj variable, since this is what is examined by raw.read_raw_segment(). Is there a good way to add this?
It might make sense to have it do this, since you can always set the projections "inactive" if you don't want this behavior. I noticed that there is currently a "proj=True/False" option in the Epochs instance---are there other places this behavior would have to be changed (i.e., making it so projection is always done in the Raw class based on the current projection status)?
This could come up if we build other functions that read raw data beyond Evoked. For example, if we computed continuous (raw) projections and added them to raw, and did this repeatedly, we'd get the same projection over and over, which doesn't seem like the desired behavior.
I just noticed that in a Raw instance, raw.proj remains as None even when raw.add_proj() has been called, as add_proj() modifies raw.info['proj'] but not raw.proj. This causes reads of raw.read_raw_segment() not to use projection. It seems like a saner behavior would be to have add_proj set the raw.proj variable, since this is what is examined by raw.read_raw_segment(). Is there a good way to add this?
It might make sense to have it do this, since you can always set the projections "inactive" if you don't want this behavior. I noticed that there is currently a "proj=True/False" option in the Epochs instance---are there other places this behavior would have to be changed (i.e., making it so projection is always done in the Raw class based on the current projection status)?
This could come up if we build other functions that read raw data beyond Evoked. For example, if we computed continuous (raw) projections and added them to raw, and did this repeatedly, we'd get the same projection over and over, which doesn't seem like the desired behavior.