syntax = "proto3"; package cmvr.config; message TaskConfigEntry { enum TaskType { TASK_TYPE_UNKNOWN = 0; TASK_TYPE_TOUCH_SCREEN = 1; TASK_TYPE_GRPC_SERVER = 3; TASK_TYPE_SELF_COLLISION = 4; reserved 2; reserved "TASK_TYPE_ARM_CONTROL"; } enum TaskRunMode { TASK_RUN_MODE_UNKNOWN = 0; TASK_RUN_MODE_PERIODIC_STEP = 1; TASK_RUN_MODE_BLOCKING_SERVICE = 2; } string id = 1; TaskType type = 2; string config_file = 3; bool enable = 4; TaskRunMode run_mode = 5; double control_period_s = 6; } message TaskManagerConfig { repeated TaskConfigEntry tasks = 1; } message TaskManagerRootConfig { TaskManagerConfig task_manager = 1; }