[docs]
class slapROI():
"""
A class used to store information related to region of interests.
Attributes
----------
constructor : str
The constructor of the ROI.
roiType : str
The type of ROI in question (rectangle vs arbitary ROI).
imageMode : str
A string that represent how the ROI is imaged (raster vs integrated).
targetRate : int
The target sample rate that the user inputted (default is 2 kHz).
shapeData : list
A list that represent the shape of the ROI.
z : int
An integer that represent the z layer of the ROI in question.
Descriptions for methods:
--------------------------
Methods
---------
__init__() :
Initialize all of the fields with values, which takes an input of h5file (a file that is created after recording) and a reference to the ROI in question.
Return
-------
Self with populated fields.
"""
def __init__(self, h5file, roiRef):
self.constructor = None
self.roiType = None
self.imageMode = None
self.targetRate = None
self.shapeData = None
self.z = None
self.constructor = ''.join([chr(_char[0]) for _char in h5file[roiRef]['constructor']])
if 'Rectangle' in self.constructor:
self.roiType = 'RectangleRoi'
else:
self.roiType = 'ArbitraryRoi'
self.shapeData = h5file[roiRef]['shapeData'][:].copy()
if h5file[roiRef]['imagingMode']['ClassName'][0][0] == 1:
self.imageMode = "Raster"
else:
self.imageMode = 'Integrate'
self.targetRate = h5file[roiRef]['targetRate'][0][0]
self.z = h5file[roiRef]['z'][0][0]