BinaryReader1X¶
class BinaryReader1X(settings: Optional[dict] = None)
Bases: MetaReader
Subclass of MetaReader for reading chimera VC1100 .log files
Public Methods¶
- BinaryReader1X.close_resources(channel: int | None = None) None¶
Perform any actions necessary to gracefully close resources before app exit
- Parameters:
channel (Optional[int]) – channel ID
- BinaryReader1X.get_empty_settings(globally_available_plugins: Dict[str, List[str]] | None = None, standalone: bool = False) Dict[str, Dict[str, Any]]¶
Declare the settings this reader exposes, on top of the base contract.
Called by poriscope when the plugin is instantiated or reconfigured, to build the settings dialog and to sanity-check whatever the user enters; the accepted values are then readable through
self.settings. Seeget_empty_settings()for the structure of the dict and whatType,Value,Min,Max,OptionsandUnitsmean in it, and for the reserved keys the GUI builds file pickers from.The keys this plugin adds:
Input File- the.binfile to read. Its companion.jsonheader, written alongside it by the acquisition software, supplies the sample rate and scaling, so no other settings are needed.
- Parameters:
- Returns:
the dict that must be filled in to initialize the filter
- Return type:
Private Methods¶
- BinaryReader1X._convert_data(data: ndarray[tuple[int, ...], dtype[int16]], config: dict) ndarray[tuple[int, ...], dtype[float64]]¶
Convert raw data from disk into rescaled current, in pA.
- Parameters:
data (npt.NDArray[np.int16]) – Data to convert.
config (dict) – Configuration dictionary for data conversion.
- Returns:
The data, rescaled to pA.
- Return type:
npt.NDArray[np.float64]
- BinaryReader1X._get_configs(datafiles: List[str]) List[dict]¶
Load configuration files as dictionaries, corresponding to datamaps as needed. Default behavior assumes there are no config files needed.
- Parameters:
datafiles (List[str]) – List of data file paths.
- Returns:
List of configuration dictionaries.
- Return type:
List[dict]
- Raises:
ValueError – If a filename does not match the required ‘_<samplerate>Hz.bin’ pattern.
- BinaryReader1X._get_file_channel_stamps(file_names: List[str], configs: List[dict]) List[int]¶
Get a list of serialization keys used to sort the list of files associated to the experiment.
- BinaryReader1X._get_file_pattern(file_name: str) str¶
Get the base name for matching other files to the same dataset as the initial one provided to the constructor.
- BinaryReader1X._get_file_time_stamps(file_names: List[str], configs: List[dict]) List[int]¶
Get a list of serialization keys used to sort the list of files associated to the experiment.
- BinaryReader1X._map_data(datafiles: List[str], configs: List[dict]) List[ndarray]¶
Map data files into a set of memmaps or similarly define a way to access the raw data on disk. Returns a list of memmaps corresponding to each datafile/configfile pair.
- Parameters:
- Returns:
List of memmaps containing raw data.
- Return type:
List[np.ndarray]
- Raises:
FileNotFoundError – If at least one of the input raw data files is missing or renamed.
OSError – If the file indicated is inaccessible.
- BinaryReader1X._set_file_extension() str¶
Set the expected file extension for files read using this reader subclass
- BinaryReader1X._validate_file_type(filename: PathLike) None¶
Check that the file(s) being opened are of the correct type, and raise IOError if not
- Parameters:
filename (os.PathLike) – the path to one of the files to be opened