def __init__(self):
        CameraBase.__init__(self)
        FilterWheelBase.__init__(self)

        self.__apogee_manager = ApogeeManager()

        self.__cooling = False

        self.__lastFilter = self._getFilterName(0)
        self.__temperature = 20.0
        self.__setpoint = 0
        self.__lastFrameStart = 0
        self.__isFanning = False

        # my internal CCD code
        self._MY_CCD = 1 << 1
        self._MY_ADC = 1 << 2
        self._MY_READOUT_MODE = 1 << 3

        self._ccds = {self._MY_CCD: CCD.IMAGING}

        self._adcs = {"12 bits": self._MY_ADC}

        self._binnings = {"1x1": self._MY_READOUT_MODE}

        self._binning_factors = {"1x1": 1}

        self._supports = {
            CameraFeature.TEMPERATURE_CONTROL: True,
            CameraFeature.PROGRAMMABLE_GAIN: False,
            CameraFeature.PROGRAMMABLE_OVERSCAN: False,
            CameraFeature.PROGRAMMABLE_FAN: True,
            CameraFeature.PROGRAMMABLE_LEDS: False,
            CameraFeature.PROGRAMMABLE_BIAS_LEVEL: False
        }

        readoutMode = ReadoutMode()
        readoutMode.mode = 0
        readoutMode.gain = 1.0
        readoutMode.width = 1024
        readoutMode.height = 1024
        readoutMode.pixelWidth = 9.0
        readoutMode.pixelHeight = 9.0

        self._readoutModes = {
            self._MY_CCD: {
                self._MY_READOUT_MODE: readoutMode
            }
        }

        #  TODO : necessario?
        self._binning_factors = {"1x1": 1, "2x2": 2, "3x3": 3, "9x9": 9}