00001 00039 #ifndef LibMultiSense_CamSetTriggerSourceMessage 00040 #define LibMultiSense_CamSetTriggerSourceMessage 00041 00042 #include "details/utility/Portability.hh" 00043 00044 namespace crl { 00045 namespace multisense { 00046 namespace details { 00047 namespace wire { 00048 00049 class CamSetTriggerSource { 00050 public: 00051 static CRL_CONSTEXPR IdType ID = ID_CMD_CAM_SET_TRIGGER_SOURCE; 00052 static CRL_CONSTEXPR VersionType VERSION = 1; 00053 00054 static CRL_CONSTEXPR uint32_t SOURCE_INTERNAL = 0; 00055 static CRL_CONSTEXPR uint32_t SOURCE_EXTERNAL = 1; // OPTO_RX 00056 00057 // 00058 // Parameters 00059 00060 uint32_t source; 00061 00062 // 00063 // Constructors 00064 00065 CamSetTriggerSource(utility::BufferStreamReader&r, VersionType v) {serialize(r,v);}; 00066 CamSetTriggerSource(uint32_t s=SOURCE_INTERNAL) : source(s) {}; 00067 00068 // 00069 // Serialization routine 00070 00071 template<class Archive> 00072 void serialize(Archive& message, 00073 const VersionType version) 00074 { 00075 message & source; 00076 } 00077 }; 00078 00079 }}}}; // namespaces 00080 00081 #endif