FeatureDetectorMetaMessage.hh
Go to the documentation of this file.
1 
38 #ifndef LibMultiSense_FeatureDetectorMetadataMessage
39 #define LibMultiSense_FeatureDetectorMetadataMessage
40 
41 #include <typeinfo>
42 
43 #include "utility/Portability.hh"
44 #include <MultiSense/MultiSenseChannel.hh>
45 
46 using namespace crl::multisense::details;
47 
49  public:
50  static CRL_CONSTEXPR wire::VersionType VERSION = 2;
52  uint32_t length;
53  uint32_t source;
54  int64_t frameId;
55  uint32_t timeSeconds;
56  uint32_t timeNanoSeconds;
57  int64_t ptpNanoSeconds;
58  uint16_t octaveWidth;
59  uint16_t octaveHeight;
60  uint16_t numOctaves;
61  uint16_t scaleFactor;
62  uint16_t motionStatus;
63  uint16_t averageXMotion;
64  uint16_t averageYMotion;
65  uint16_t numFeatures;
66  uint16_t numDescriptors;
67 
68  //
69  // Version 2 additions
70  uint16_t observerStatus;
71  uint16_t observerNum;
72  uint16_t observerIndex;
73  int16_t observerDy;
74  int16_t observerTheta;
75  uint16_t affineCalCount;
76 
78  version(VERSION),
79  length(0),
80  source(0),
81  frameId(0),
82  timeSeconds(0),
83  timeNanoSeconds(0),
84  ptpNanoSeconds(0),
85  octaveWidth(0),
86  octaveHeight(0),
87  numOctaves(0),
88  scaleFactor(0),
89  motionStatus(0),
90  averageXMotion(0),
91  averageYMotion(0),
92  numFeatures(0),
93  numDescriptors(0),
94  observerStatus(0),
95  observerNum(0),
96  observerIndex(0),
97  observerDy(0),
98  observerTheta(0),
99  affineCalCount(0)
100  {};
101 
102 };
103 
104 #ifndef SENSORPOD_FIRMWARE
105 
107 public:
108 
109  //
110  // Constructors
111 
114 
115  //
116  // Serialization routine
117 
118  template<class Archive>
119  void serialize(Archive& message,
120  const wire::VersionType _version)
121  {
122  (void) _version;
123  message & version;
124  message & length;
125  message & source;
126  message & frameId;
127  message & timeSeconds;
128  message & timeNanoSeconds;
129  message & ptpNanoSeconds;
130  message & octaveWidth;
131  message & octaveHeight;
132  message & numOctaves;
133  message & scaleFactor;
134  message & motionStatus;
135  message & averageXMotion;
136  message & averageYMotion;
137  message & numFeatures;
138  message & numDescriptors;
139 
140  if (version >= 2)
141  {
142  message & observerStatus;
143  message & observerNum;
144  message & observerIndex;
145  message & observerDy;
146  message & observerTheta;
147  message & affineCalCount;
148  }
149  }
150 };
151 
152 #endif // !SENSORPOD_FIRMWARE
153 
154 #endif
FeatureDetectorMetaHeader::observerIndex
uint16_t observerIndex
Definition: FeatureDetectorMetaMessage.hh:72
crl::multisense::details
Definition: Legacy/details/channel.cc:63
FeatureDetectorMeta::serialize
void serialize(Archive &message, const wire::VersionType _version)
Definition: FeatureDetectorMetaMessage.hh:119
WIRE_HEADER_ATTRIBS_
#define WIRE_HEADER_ATTRIBS_
Definition: Protocol.hh:65
FeatureDetectorMetaHeader::octaveWidth
uint16_t octaveWidth
Definition: FeatureDetectorMetaMessage.hh:58
FeatureDetectorMetaHeader::observerNum
uint16_t observerNum
Definition: FeatureDetectorMetaMessage.hh:71
FeatureDetectorMetaHeader::numOctaves
uint16_t numOctaves
Definition: FeatureDetectorMetaMessage.hh:60
FeatureDetectorMetaHeader::FeatureDetectorMetaHeader
FeatureDetectorMetaHeader()
Definition: FeatureDetectorMetaMessage.hh:77
FeatureDetectorMetaHeader::observerDy
int16_t observerDy
Definition: FeatureDetectorMetaMessage.hh:73
FeatureDetectorMetaHeader::timeNanoSeconds
uint32_t timeNanoSeconds
Definition: FeatureDetectorMetaMessage.hh:56
FeatureDetectorMetaHeader::length
uint32_t length
Definition: FeatureDetectorMetaMessage.hh:52
FeatureDetectorMetaHeader::observerStatus
uint16_t observerStatus
Definition: FeatureDetectorMetaMessage.hh:70
FeatureDetectorMetaHeader::octaveHeight
uint16_t octaveHeight
Definition: FeatureDetectorMetaMessage.hh:59
CRL_CONSTEXPR
#define CRL_CONSTEXPR
Definition: Legacy/include/MultiSense/details/utility/Portability.hh:49
FeatureDetectorMetaHeader::affineCalCount
uint16_t affineCalCount
Definition: FeatureDetectorMetaMessage.hh:75
FeatureDetectorMetaHeader::ptpNanoSeconds
int64_t ptpNanoSeconds
Definition: FeatureDetectorMetaMessage.hh:57
FeatureDetectorMetaHeader::version
wire::VersionType version
Definition: FeatureDetectorMetaMessage.hh:51
multisense::legacy::serialize
std::vector< uint8_t > serialize(const T &message, uint16_t sequence_id, size_t mtu)
Serialize a MultiSense Wire message for transmission. This adds the wire header to the message for tr...
Definition: message.hh:103
frameId
std::string const * frameId(const M &m)
FeatureDetectorMetaHeader::source
uint32_t source
Definition: FeatureDetectorMetaMessage.hh:53
crl::multisense::details::wire::VersionType
uint16_t VersionType
Definition: Protocol.hh:137
FeatureDetectorMetaHeader::numDescriptors
uint16_t numDescriptors
Definition: FeatureDetectorMetaMessage.hh:66
FeatureDetectorMetaHeader::motionStatus
uint16_t motionStatus
Definition: FeatureDetectorMetaMessage.hh:62
FeatureDetectorMeta::FeatureDetectorMeta
FeatureDetectorMeta()
Definition: FeatureDetectorMetaMessage.hh:113
FeatureDetectorMetaHeader::timeSeconds
uint32_t timeSeconds
Definition: FeatureDetectorMetaMessage.hh:55
FeatureDetectorMetaHeader::observerTheta
int16_t observerTheta
Definition: FeatureDetectorMetaMessage.hh:74
FeatureDetectorMeta
Definition: FeatureDetectorMetaMessage.hh:106
FeatureDetectorMetaHeader::scaleFactor
uint16_t scaleFactor
Definition: FeatureDetectorMetaMessage.hh:61
FeatureDetectorMetaHeader
Definition: FeatureDetectorMetaMessage.hh:48
FeatureDetectorMetaHeader::averageYMotion
uint16_t averageYMotion
Definition: FeatureDetectorMetaMessage.hh:64
FeatureDetectorMetaHeader::numFeatures
uint16_t numFeatures
Definition: FeatureDetectorMetaMessage.hh:65
FeatureDetectorMeta::FeatureDetectorMeta
FeatureDetectorMeta(utility::BufferStreamReader &r, wire::VersionType v)
Definition: FeatureDetectorMetaMessage.hh:112
crl::multisense::details::utility::BufferStreamReader
Definition: BufferStream.hh:192
FeatureDetectorMetaHeader::averageXMotion
uint16_t averageXMotion
Definition: FeatureDetectorMetaMessage.hh:63
FeatureDetectorMetaHeader::frameId
int64_t frameId
Definition: FeatureDetectorMetaMessage.hh:54


multisense_lib
Author(s):
autogenerated on Thu Apr 17 2025 02:49:08