
                                              orig BFLY																					BFS
		AnalogControl.gain_auto = EnumProperty(this, RootNodeMap::Camera, { "AnalogControl", "GainAuto" });                   same
		AnalogControl.gain = FloatProperty(this, RootNodeMap::Camera, { "AnalogControl", "Gain" });						      same	
		AnalogControl.blacklevel_enable = BooleanProperty(this, RootNodeMap::Camera, { "AnalogControl", "BlackLevelClampingEnable" });    same
		AnalogControl.gamma_enable = BooleanProperty(this, RootNodeMap::Camera, { "AnalogControl", "GammaEnabled" });           GammaEnable  
		AnalogControl.sharpness_enable = BooleanProperty(this, RootNodeMap::Camera, { "AnalogControl", "SharpnessEnabled" });   SharpeningEnable
		AnalogControl.hue_enable = BooleanProperty(this, RootNodeMap::Camera, { "AnalogControl", "HueEnabled" });                not available
		AnalogControl.saturation_enable = BooleanProperty(this, RootNodeMap::Camera, { "AnalogControl", "SaturationEnabled" });  not available

		AcquisitionControl.trigger_mode = EnumProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "TriggerMode" });       same
		AcquisitionControl.trigger_source = EnumProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "TriggerSource" });    same
		AcquisitionControl.trigger_selector = EnumProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "TriggerSelector" });  same
		AcquisitionControl.trigger_cmd = CommandProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "TriggerSoftware" });     same
		AcquisitionControl.exposure_mode = EnumProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "ExposureMode" });   same
		AcquisitionControl.exposure_auto = EnumProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "ExposureAuto" });   same
		AcquisitionControl.exposure_time = FloatProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "ExposureTime" });   same
		AcquisitionControl.acquisition_mode = EnumProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "AcquisitionMode" });  same
		AcquisitionControl.framerate_mode = EnumProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "AcquisitionFrameRateAuto" });   not available
		AcquisitionControl.hdr_enable = BooleanProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "pgrHDRModeEnabled" });             not available
		AcquisitionControl.start = CommandProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "Start" });    AcquisitionStart
		AcquisitionControl.stop = CommandProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "Stop" });   AcquisitionStop

		// this one is a tricky one...
		AcquisitionControl.framerate_enabled = BooleanProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "AcquisitionFrameRateEnabled" });  not available  instead AcquisitionFrameRate  and  AcquisitionResultingFrameRate
		AcquisitionControl.framerate_enable = BooleanProperty(this, RootNodeMap::Camera, { "AcquisitionControl", "AcquisitionFrameRateEnable" });  same

		ImageFormatControl.pixel_format = EnumProperty(this, RootNodeMap::Camera, { "ImageFormatControl",  "PixelFormat" });   same
		ImageFormatControl.bigendian = BooleanProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "pgrPixelBigEndian" });   not available
		ImageFormatControl.colorprocessing = BooleanProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "OnBoardColorProcessEnabled" });  not available
		ImageFormatControl.videomode = EnumProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "VideoMode" });  not available
		ImageFormatControl.reversex = BooleanProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "ReverseX" });   same
		ImageFormatControl.widthmax = IntegerProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "WidthMax" });  same
		ImageFormatControl.heightmax = IntegerProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "HeightMax" });  same
		ImageFormatControl.ofsx = IntegerProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "OffsetX" });     same
		ImageFormatControl.ofsy = IntegerProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "OffsetY" });      same
		ImageFormatControl.width = IntegerProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "Width" });      SensorWidth
		ImageFormatControl.height = IntegerProperty(this, RootNodeMap::Camera, { "ImageFormatControl", "Height" });    SensorHeight

		UserDefinedValues.selector = EnumProperty(this, RootNodeMap::Camera, { "UserDefinedValues", "UserDefinedValueSelector" });   not available
		UserDefinedValues.value = IntegerProperty(this, RootNodeMap::Camera, { "UserDefinedValues", "UserDefinedValue" });  not available

		UserSetControl.selector = EnumProperty(this, RootNodeMap::Camera, { "UserSetControl", "UserSetSelector" });   same
		UserSetControl.load = CommandProperty(this, RootNodeMap::Camera, { "UserSetControl", "UserSetLoad" });   same
		UserSetControl.save = CommandProperty(this, RootNodeMap::Camera, { "UserSetControl", "UserSetSave" });    same

		DeviceInformation.vendor = StringProperty(this, RootNodeMap::TransportLayer, { "DeviceInformation", "DeviceVendorName" });  same
		DeviceInformation.name = StringProperty(this, RootNodeMap::TransportLayer, { "DeviceInformation", "DeviceModelName" });     same
		DeviceInformation.serialnumber = StringProperty(this, RootNodeMap::TransportLayer, { "DeviceInformation", "DeviceSerialNumber" });   same
		DeviceInformation.forceip = CommandProperty(this, RootNodeMap::TransportLayer, { "DeviceInformation", "GevDeviceAutoForceIP" });    same
		DeviceInformation.wrong_subnet = BooleanProperty(this, RootNodeMap::TransportLayer, { "DeviceInformation", "GevDeviceIsWrongSubnet" });  same

		BufferHandlingControl.stream_mode = EnumProperty(this, RootNodeMap::TLStream, { "BufferHandlingControl", "StreamBufferHandlingMode" });  same
	