Source code for larpix.configuration.configuration_lightpix_v1

from bitarray import bitarray
import os
import errno
import functools
from collections import OrderedDict

from .. import bitarrayhelper as bah
from .. import configs
from . import Configuration_v2, _Smart_List
from . import configuration_v2 as conf_v2
from . import configuration_v2_base as v2_base

[docs]class Configuration_Lightpix_v1(Configuration_v2): ''' Represents the desired configuration state of a LightPix v1 chip. This is a small extension of the LArPix v2 configuration register space to include the additional registers associated with LightPix, see the v2 configuration class for a more detailed description of the implementation. ''' asic_version = 'lightpix-v1.0' default_configuration_file = 'chip/default_lightpix_v1.json' num_registers = 239 num_bits = 1912 # Additional class properties regarding configuration registers are set at the end of the file. def __init__(self): # Note: properties, getters and setters are constructed after this class definition at the bottom of the file. super(Configuration_Lightpix_v1, self).__init__() return
## Set up property info # _property_configuration = OrderedDict([ ('lightpix_mode', (v2_base._compound_property, (['lightpix_mode','hit_threshold'], (int,bool), 0, 1), (1896, 1897))), ('hit_threshold', (v2_base._compound_property, (['lightpix_mode','hit_threshold'], int, 0, 127), (1897, 1904))), ('timeout', (v2_base._basic_property, (int, 0, 255), (1904, 1912))), ]) _property_configuration.update(conf_v2._property_configuration) # GENERATE THE PROPERTIES! Configuration_Lightpix_v1.bit_map = OrderedDict() Configuration_Lightpix_v1.register_map = OrderedDict() Configuration_Lightpix_v1.register_names = [] v2_base._generate_properties(Configuration_Lightpix_v1, _property_configuration, verbose=False)