[docs]@dataclassclassBrainsetDescription(temporaldata.Data):r"""A class for describing a brainset. Parameters ---------- id : str Unique identifier for the brainset origin_version : str Version identifier for the original data source derived_version : str Version identifier for the derived/processed data source : str Original data source (usually a URL, or a short description otherwise) description : str Text description of the brainset brainsets_version : str, optional Version of brainsets package used, defaults to current version temporaldata_version : str, optional Version of temporaldata package used, defaults to current version """id:strorigin_version:strderived_version:strsource:strdescription:strbrainsets_version:str=brainsets.__version__temporaldata_version:str=temporaldata.__version__
[docs]@dataclassclassSubjectDescription(temporaldata.Data):r"""A class for describing a subject. Parameters ---------- id : str Unique identifier for the subject species : Species Species of the subject age : float, optional Age of the subject in days, defaults to 0.0 sex : Sex, optional Sex of the subject, defaults to UNKNOWN genotype : str, optional Genotype of the subject, defaults to "unknown" cre_line : Cre_line, optional Cre line of the subject, defaults to None """id:strspecies:Speciesage:float=0.0# in dayssex:Sex=Sex.UNKNOWNgenotype:str="unknown"# no idea how many there will be for now.cre_line:Optional[Cre_line]=None
[docs]@dataclassclassSessionDescription(temporaldata.Data):r"""A class for describing an experimental session. Parameters ---------- id : str Unique identifier for the session recording_date : datetime.datetime Date and time when the recording was made task : Task Task performed during the session """id:strrecording_date:datetime.datetimetask:Optional[Task]=None
[docs]@dataclassclassDeviceDescription(temporaldata.Data):r"""A class for describing a recording device. Parameters ---------- id : str Unique identifier for the device recording_tech : RecordingTech or List[RecordingTech], optional Recording technology used, defaults to None processing : str, optional Processing applied to the recording, defaults to None chronic : bool, optional Whether the device was chronically implanted, defaults to False start_date : datetime.datetime, optional Date when device was implanted/first used, defaults to None end_date : datetime.datetime, optional Date when device was removed/last used, defaults to None imaging_depth : float, optional Depth of imaging in micrometers, defaults to None target_area : BrainRegion, optional Target brain region for recording, defaults to None """id:str# units: List[str]# areas: Union[List[StringIntEnum], List[Macaque]]recording_tech:Union[RecordingTech,List[RecordingTech]]=Noneprocessing:Optional[str]=Nonechronic:bool=Falsestart_date:Optional[datetime.datetime]=Noneend_date:Optional[datetime.datetime]=None# Ophysimaging_depth:Optional[float]=None# in umtarget_area:Optional[BrainRegion]=None