#ifndef COMMAND_TYPE_H
#define COMMAND_TYPE_H

// Robot_Command

#define NONE                     0
#define STOP_SERVER              1
#define MOVE_JOINTS_TO           2
#define MOVE_JOINTS_BY           3
#define MOVE_JOINT_TO            4
#define MOVE_JOINT_BY            5
#define MOVE_RPY_TO              6
#define MOVE_RPY_BY              7
#define LINEAR_MOVE_TO           8
#define LINEAR_MOVE_BY           9
#define SET_SPEEDS               10
#define SET_LIMITS               11


#define ATTACH_BIG_GRIPPER       20
#define DETACH_BIG_GRIPPER       21
#define ATTACH_SMALL_GRIPPER     22
#define DETACH_SMALL_GRIPPER     23
#define ATTACH_VACUUM_GRIPPER    24
#define DETACH_VACUUM_GRIPPER    25

#define GRASP_OBJECT             30
#define RELEASE_OBJECT           31
#define ADD_OBJECT               32
#define REMOVE_OBJECT            33


// GL_Command
#define SET_NET_TIMEOUT          40
#define SET_CPU_IDLE             41


// Query, one command but with additional parameter (lparam)
#define GET_INFO                 50
// types, used as lparam
#define JOINTS_INFO              51
#define LIMITS_INFO              52
#define SPEEDS_INFO              53


#endif
