00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043 config_description = [{'srcline': 70, 'description': 'Projector pulse frequency in Hz.', 'max': 120.0, 'cconsttype': 'const double', 'ctype': 'double', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'projector_rate', 'edit_method': '', 'default': 60.0, 'level': 31, 'min': 40.0, 'type': 'double'}, {'srcline': 71, 'description': 'Length of the projector pulses in s. At high currents the hardware may limit the pulse length.', 'max': 0.002, 'cconsttype': 'const double', 'ctype': 'double', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'projector_pulse_length', 'edit_method': '', 'default': 0.002, 'level': 31, 'min': 0.001, 'type': 'double'}, {'srcline': 72, 'description': 'How far off-center the intermediate projector pulses are. Zero is on-center, one is touching the following pulse.', 'max': 1.0, 'cconsttype': 'const double', 'ctype': 'double', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'projector_pulse_shift', 'edit_method': '', 'default': 0.0, 'level': 31, 'min': 0.0, 'type': 'double'}, {'srcline': 73, 'description': 'Indicates whether the projector should be off, on when in use or on all the time.', 'max': 3, 'cconsttype': 'const int', 'ctype': 'int', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'projector_mode', 'edit_method': "{'enum_description': 'The projectors operating mode.', 'enum': [{'srcline': 55, 'description': 'The projector is always off.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 1, 'ctype': 'int', 'type': 'int', 'name': 'ProjectorOff'}, {'srcline': 56, 'description': 'The projector is on if one of the cameras is using it.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 2, 'ctype': 'int', 'type': 'int', 'name': 'ProjectorAuto'}, {'srcline': 57, 'description': 'The projector is always on.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 3, 'ctype': 'int', 'type': 'int', 'name': 'ProjectorOn'}]}", 'default': 2, 'level': 31, 'min': 1, 'type': 'int'}, {'srcline': 74, 'description': 'Indicates if the projector should turn off when the prosilica camera is exposing.', 'max': True, 'cconsttype': 'const bool', 'ctype': 'bool', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'prosilica_projector_inhibit', 'edit_method': '', 'default': False, 'level': 16, 'min': False, 'type': 'bool'}, {'srcline': 76, 'description': 'Indicates the frame rate for both stereo cameras in Hz. (Gets rounded to suitable divisors of projector_rate.)', 'max': 60.0, 'cconsttype': 'const double', 'ctype': 'double', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'stereo_rate', 'edit_method': '', 'default': 30.0, 'level': 3, 'min': 1.0, 'type': 'double'}, {'srcline': 78, 'description': 'Indicates the triggering mode of the wide stereo camera.', 'max': 4, 'cconsttype': 'const int', 'ctype': 'int', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'wide_stereo_trig_mode', 'edit_method': "{'enum_description': 'The triggering mode for the wide camera.', 'enum': [{'srcline': 61, 'description': 'The cameras frequency can be set independently of the projector frequency. There is no deterministic phase relation between projector firing and camera triggering.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 2, 'ctype': 'int', 'type': 'int', 'name': 'IgnoreProjector'}, {'srcline': 62, 'description': 'The camera always exposes while the projector is on.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 3, 'ctype': 'int', 'type': 'int', 'name': 'WithProjector'}, {'srcline': 63, 'description': 'The camera always exposes while the projector is off.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 4, 'ctype': 'int', 'type': 'int', 'name': 'WithoutProjector'}]}", 'default': 4, 'level': 3, 'min': 2, 'type': 'int'}, {'srcline': 79, 'description': 'Indicates the triggering mode of the narrow stereo camera.', 'max': 5, 'cconsttype': 'const int', 'ctype': 'int', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'narrow_stereo_trig_mode', 'edit_method': "{'enum_description': 'The triggering mode for the narrow camera.', 'enum': [{'srcline': 61, 'description': 'The cameras frequency can be set independently of the projector frequency. There is no deterministic phase relation between projector firing and camera triggering.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 2, 'ctype': 'int', 'type': 'int', 'name': 'IgnoreProjector'}, {'srcline': 62, 'description': 'The camera always exposes while the projector is on.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 3, 'ctype': 'int', 'type': 'int', 'name': 'WithProjector'}, {'srcline': 63, 'description': 'The camera always exposes while the projector is off.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 4, 'ctype': 'int', 'type': 'int', 'name': 'WithoutProjector'}, {'srcline': 64, 'description': 'The camera alternates between frames with and without the projector.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 5, 'ctype': 'int', 'type': 'int', 'name': 'AlternateProjector'}]}", 'default': 4, 'level': 3, 'min': 2, 'type': 'int'}, {'srcline': 81, 'description': 'Indicates the frame rate for the right forearm camera in Hz. (Gets rounded to suitable divisors of projector_rate.)', 'max': 60.0, 'cconsttype': 'const double', 'ctype': 'double', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'forearm_r_rate', 'edit_method': '', 'default': 30.0, 'level': 4, 'min': 1.0, 'type': 'double'}, {'srcline': 82, 'description': 'Indicates the triggering mode of the right forearm camera.', 'max': 4, 'cconsttype': 'const int', 'ctype': 'int', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'forearm_r_trig_mode', 'edit_method': "{'enum_description': 'The triggering mode for a forearm camera.', 'enum': [{'srcline': 60, 'description': 'The camera does not use the trigger input.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 1, 'ctype': 'int', 'type': 'int', 'name': 'InternalTrigger'}, {'srcline': 61, 'description': 'The cameras frequency can be set independently of the projector frequency. There is no deterministic phase relation between projector firing and camera triggering.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 2, 'ctype': 'int', 'type': 'int', 'name': 'IgnoreProjector'}, {'srcline': 62, 'description': 'The camera always exposes while the projector is on.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 3, 'ctype': 'int', 'type': 'int', 'name': 'WithProjector'}, {'srcline': 63, 'description': 'The camera always exposes while the projector is off.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 4, 'ctype': 'int', 'type': 'int', 'name': 'WithoutProjector'}]}", 'default': 1, 'level': 4, 'min': 1, 'type': 'int'}, {'srcline': 84, 'description': 'Indicates the frame rate for the left forearm camera in Hz. (Gets rounded to suitable divisors of projector_rate.)', 'max': 60.0, 'cconsttype': 'const double', 'ctype': 'double', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'forearm_l_rate', 'edit_method': '', 'default': 30.0, 'level': 8, 'min': 1.0, 'type': 'double'}, {'srcline': 85, 'description': 'Indicates the triggering mode of the left forearm camera.', 'max': 4, 'cconsttype': 'const int', 'ctype': 'int', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'forearm_l_trig_mode', 'edit_method': "{'enum_description': 'The triggering mode for a forearm camera.', 'enum': [{'srcline': 60, 'description': 'The camera does not use the trigger input.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 1, 'ctype': 'int', 'type': 'int', 'name': 'InternalTrigger'}, {'srcline': 61, 'description': 'The cameras frequency can be set independently of the projector frequency. There is no deterministic phase relation between projector firing and camera triggering.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 2, 'ctype': 'int', 'type': 'int', 'name': 'IgnoreProjector'}, {'srcline': 62, 'description': 'The camera always exposes while the projector is on.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 3, 'ctype': 'int', 'type': 'int', 'name': 'WithProjector'}, {'srcline': 63, 'description': 'The camera always exposes while the projector is off.', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'cconsttype': 'const int', 'value': 4, 'ctype': 'int', 'type': 'int', 'name': 'WithoutProjector'}]}", 'default': 1, 'level': 8, 'min': 1, 'type': 'int'}, {'srcline': 87, 'description': 'Adds a time shift in seconds to the projector timing. Useful for debugging but not in normal use.', 'max': 0.10000000000000001, 'cconsttype': 'const double', 'ctype': 'double', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'projector_tweak', 'edit_method': '', 'default': 0.0, 'level': 31, 'min': -0.10000000000000001, 'type': 'double'}, {'srcline': 89, 'description': 'Does a hard reset of all the cameras using a long pulse on the trigger line. This parameter resets itself to false after 3 to 4 seconds.', 'max': True, 'cconsttype': 'const bool', 'ctype': 'bool', 'srcfile': '../cfg/CameraSynchronizer.cfg', 'name': 'camera_reset', 'edit_method': '', 'default': False, 'level': 31, 'min': False, 'type': 'bool'}]
00044
00045 min = {}
00046 max = {}
00047 defaults = {}
00048 level = {}
00049 type = {}
00050 all_level = 0
00051
00052 for param in config_description:
00053 min[param['name']] = param['min']
00054 max[param['name']] = param['max']
00055 defaults[param['name']] = param['default']
00056 level[param['name']] = param['level']
00057 type[param['name']] = param['type']
00058 all_level = all_level | param['level']
00059
00060 CameraSynchronizer_ProjectorOff = 1
00061 CameraSynchronizer_ProjectorAuto = 2
00062 CameraSynchronizer_ProjectorOn = 3
00063 CameraSynchronizer_InternalTrigger = 1
00064 CameraSynchronizer_IgnoreProjector = 2
00065 CameraSynchronizer_WithProjector = 3
00066 CameraSynchronizer_WithoutProjector = 4
00067 CameraSynchronizer_AlternateProjector = 5