00001 
00002 #ifndef CLEARPATH_SENSORS_MESSAGE_GPSSTATUS_H
00003 #define CLEARPATH_SENSORS_MESSAGE_GPSSTATUS_H
00004 #include <string>
00005 #include <vector>
00006 #include <map>
00007 #include <ostream>
00008 #include "ros/serialization.h"
00009 #include "ros/builtin_message_traits.h"
00010 #include "ros/message_operations.h"
00011 #include "ros/time.h"
00012 
00013 #include "ros/macros.h"
00014 
00015 #include "ros/assert.h"
00016 
00017 #include "std_msgs/Header.h"
00018 
00019 namespace clearpath_sensors
00020 {
00021 template <class ContainerAllocator>
00022 struct GPSStatus_ {
00023   typedef GPSStatus_<ContainerAllocator> Type;
00024 
00025   GPSStatus_()
00026   : header()
00027   , satellites_used(0)
00028   , satellite_used_prn()
00029   , satellites_visible(0)
00030   , satellite_visible_prn()
00031   , satellite_visible_z()
00032   , satellite_visible_azimuth()
00033   , satellite_visible_snr()
00034   , status(0)
00035   , motion_source(0)
00036   , orientation_source(0)
00037   , position_source(0)
00038   {
00039   }
00040 
00041   GPSStatus_(const ContainerAllocator& _alloc)
00042   : header(_alloc)
00043   , satellites_used(0)
00044   , satellite_used_prn(_alloc)
00045   , satellites_visible(0)
00046   , satellite_visible_prn(_alloc)
00047   , satellite_visible_z(_alloc)
00048   , satellite_visible_azimuth(_alloc)
00049   , satellite_visible_snr(_alloc)
00050   , status(0)
00051   , motion_source(0)
00052   , orientation_source(0)
00053   , position_source(0)
00054   {
00055   }
00056 
00057   typedef  ::std_msgs::Header_<ContainerAllocator>  _header_type;
00058    ::std_msgs::Header_<ContainerAllocator>  header;
00059 
00060   typedef uint16_t _satellites_used_type;
00061   uint16_t satellites_used;
00062 
00063   typedef std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  _satellite_used_prn_type;
00064   std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  satellite_used_prn;
00065 
00066   typedef uint16_t _satellites_visible_type;
00067   uint16_t satellites_visible;
00068 
00069   typedef std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  _satellite_visible_prn_type;
00070   std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  satellite_visible_prn;
00071 
00072   typedef std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  _satellite_visible_z_type;
00073   std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  satellite_visible_z;
00074 
00075   typedef std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  _satellite_visible_azimuth_type;
00076   std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  satellite_visible_azimuth;
00077 
00078   typedef std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  _satellite_visible_snr_type;
00079   std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other >  satellite_visible_snr;
00080 
00081   typedef int16_t _status_type;
00082   int16_t status;
00083 
00084   typedef uint16_t _motion_source_type;
00085   uint16_t motion_source;
00086 
00087   typedef uint16_t _orientation_source_type;
00088   uint16_t orientation_source;
00089 
00090   typedef uint16_t _position_source_type;
00091   uint16_t position_source;
00092 
00093   enum { STATUS_NO_FIX = -1 };
00094   enum { STATUS_FIX = 0 };
00095   enum { STATUS_SBAS_FIX = 1 };
00096   enum { STATUS_GBAS_FIX = 2 };
00097   enum { STATUS_DGPS_FIX = 18 };
00098   enum { STATUS_WAAS_FIX = 33 };
00099   enum { SOURCE_NONE = 0 };
00100   enum { SOURCE_GPS = 1 };
00101   enum { SOURCE_POINTS = 2 };
00102   enum { SOURCE_DOPPLER = 4 };
00103   enum { SOURCE_ALTIMETER = 8 };
00104   enum { SOURCE_MAGNETIC = 16 };
00105   enum { SOURCE_GYRO = 32 };
00106   enum { SOURCE_ACCEL = 64 };
00107 
00108   ROS_DEPRECATED uint32_t get_satellite_used_prn_size() const { return (uint32_t)satellite_used_prn.size(); }
00109   ROS_DEPRECATED void set_satellite_used_prn_size(uint32_t size) { satellite_used_prn.resize((size_t)size); }
00110   ROS_DEPRECATED void get_satellite_used_prn_vec(std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) const { vec = this->satellite_used_prn; }
00111   ROS_DEPRECATED void set_satellite_used_prn_vec(const std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) { this->satellite_used_prn = vec; }
00112   ROS_DEPRECATED uint32_t get_satellite_visible_prn_size() const { return (uint32_t)satellite_visible_prn.size(); }
00113   ROS_DEPRECATED void set_satellite_visible_prn_size(uint32_t size) { satellite_visible_prn.resize((size_t)size); }
00114   ROS_DEPRECATED void get_satellite_visible_prn_vec(std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) const { vec = this->satellite_visible_prn; }
00115   ROS_DEPRECATED void set_satellite_visible_prn_vec(const std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) { this->satellite_visible_prn = vec; }
00116   ROS_DEPRECATED uint32_t get_satellite_visible_z_size() const { return (uint32_t)satellite_visible_z.size(); }
00117   ROS_DEPRECATED void set_satellite_visible_z_size(uint32_t size) { satellite_visible_z.resize((size_t)size); }
00118   ROS_DEPRECATED void get_satellite_visible_z_vec(std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) const { vec = this->satellite_visible_z; }
00119   ROS_DEPRECATED void set_satellite_visible_z_vec(const std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) { this->satellite_visible_z = vec; }
00120   ROS_DEPRECATED uint32_t get_satellite_visible_azimuth_size() const { return (uint32_t)satellite_visible_azimuth.size(); }
00121   ROS_DEPRECATED void set_satellite_visible_azimuth_size(uint32_t size) { satellite_visible_azimuth.resize((size_t)size); }
00122   ROS_DEPRECATED void get_satellite_visible_azimuth_vec(std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) const { vec = this->satellite_visible_azimuth; }
00123   ROS_DEPRECATED void set_satellite_visible_azimuth_vec(const std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) { this->satellite_visible_azimuth = vec; }
00124   ROS_DEPRECATED uint32_t get_satellite_visible_snr_size() const { return (uint32_t)satellite_visible_snr.size(); }
00125   ROS_DEPRECATED void set_satellite_visible_snr_size(uint32_t size) { satellite_visible_snr.resize((size_t)size); }
00126   ROS_DEPRECATED void get_satellite_visible_snr_vec(std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) const { vec = this->satellite_visible_snr; }
00127   ROS_DEPRECATED void set_satellite_visible_snr_vec(const std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > & vec) { this->satellite_visible_snr = vec; }
00128 private:
00129   static const char* __s_getDataType_() { return "clearpath_sensors/GPSStatus"; }
00130 public:
00131   ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00132 
00133   ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00134 
00135 private:
00136   static const char* __s_getMD5Sum_() { return "313baa8951fdd056c78bf61b1b07d249"; }
00137 public:
00138   ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00139 
00140   ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00141 
00142 private:
00143   static const char* __s_getMessageDefinition_() { return "Header header\n\
00144 \n\
00145 # Satellites used in solution\n\
00146 uint16 satellites_used # Number of satellites\n\
00147 int32[] satellite_used_prn # PRN identifiers\n\
00148 \n\
00149 # Satellites visible\n\
00150 uint16 satellites_visible\n\
00151 int32[] satellite_visible_prn # PRN identifiers\n\
00152 int32[] satellite_visible_z # Elevation of satellites\n\
00153 int32[] satellite_visible_azimuth # Azimuth of satellites\n\
00154 int32[] satellite_visible_snr # Signal-to-noise ratios (dB)\n\
00155 \n\
00156 # Measurement status\n\
00157 int16 STATUS_NO_FIX=-1   # Unable to fix position\n\
00158 int16 STATUS_FIX=0       # Normal fix\n\
00159 int16 STATUS_SBAS_FIX=1  # Fixed using a satellite-based augmentation system\n\
00160 int16 STATUS_GBAS_FIX=2  #          or a ground-based augmentation system\n\
00161 int16 STATUS_DGPS_FIX=18 # Fixed with DGPS\n\
00162 int16 STATUS_WAAS_FIX=33 # Fixed with WAAS\n\
00163 int16 status\n\
00164 \n\
00165 uint16 SOURCE_NONE=0 # No information is available\n\
00166 uint16 SOURCE_GPS=1 # Using standard GPS location [only valid for position_source]\n\
00167 uint16 SOURCE_POINTS=2 # Motion/orientation fix is derived from successive points\n\
00168 uint16 SOURCE_DOPPLER=4 # Motion is derived using the Doppler effect\n\
00169 uint16 SOURCE_ALTIMETER=8 # Using an altimeter\n\
00170 uint16 SOURCE_MAGNETIC=16 # Using magnetic sensors\n\
00171 uint16 SOURCE_GYRO=32 # Using gyroscopes\n\
00172 uint16 SOURCE_ACCEL=64 # Using accelerometers\n\
00173 \n\
00174 uint16 motion_source # Source for speed, climb and track\n\
00175 uint16 orientation_source # Source for device orientation\n\
00176 uint16 position_source # Source for position\n\
00177 \n\
00178 \n\
00179 ================================================================================\n\
00180 MSG: std_msgs/Header\n\
00181 # Standard metadata for higher-level stamped data types.\n\
00182 # This is generally used to communicate timestamped data \n\
00183 # in a particular coordinate frame.\n\
00184 # \n\
00185 # sequence ID: consecutively increasing ID \n\
00186 uint32 seq\n\
00187 #Two-integer timestamp that is expressed as:\n\
00188 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00189 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00190 # time-handling sugar is provided by the client library\n\
00191 time stamp\n\
00192 #Frame this data is associated with\n\
00193 # 0: no frame\n\
00194 # 1: global frame\n\
00195 string frame_id\n\
00196 \n\
00197 "; }
00198 public:
00199   ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00200 
00201   ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00202 
00203   ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00204   {
00205     ros::serialization::OStream stream(write_ptr, 1000000000);
00206     ros::serialization::serialize(stream, header);
00207     ros::serialization::serialize(stream, satellites_used);
00208     ros::serialization::serialize(stream, satellite_used_prn);
00209     ros::serialization::serialize(stream, satellites_visible);
00210     ros::serialization::serialize(stream, satellite_visible_prn);
00211     ros::serialization::serialize(stream, satellite_visible_z);
00212     ros::serialization::serialize(stream, satellite_visible_azimuth);
00213     ros::serialization::serialize(stream, satellite_visible_snr);
00214     ros::serialization::serialize(stream, status);
00215     ros::serialization::serialize(stream, motion_source);
00216     ros::serialization::serialize(stream, orientation_source);
00217     ros::serialization::serialize(stream, position_source);
00218     return stream.getData();
00219   }
00220 
00221   ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00222   {
00223     ros::serialization::IStream stream(read_ptr, 1000000000);
00224     ros::serialization::deserialize(stream, header);
00225     ros::serialization::deserialize(stream, satellites_used);
00226     ros::serialization::deserialize(stream, satellite_used_prn);
00227     ros::serialization::deserialize(stream, satellites_visible);
00228     ros::serialization::deserialize(stream, satellite_visible_prn);
00229     ros::serialization::deserialize(stream, satellite_visible_z);
00230     ros::serialization::deserialize(stream, satellite_visible_azimuth);
00231     ros::serialization::deserialize(stream, satellite_visible_snr);
00232     ros::serialization::deserialize(stream, status);
00233     ros::serialization::deserialize(stream, motion_source);
00234     ros::serialization::deserialize(stream, orientation_source);
00235     ros::serialization::deserialize(stream, position_source);
00236     return stream.getData();
00237   }
00238 
00239   ROS_DEPRECATED virtual uint32_t serializationLength() const
00240   {
00241     uint32_t size = 0;
00242     size += ros::serialization::serializationLength(header);
00243     size += ros::serialization::serializationLength(satellites_used);
00244     size += ros::serialization::serializationLength(satellite_used_prn);
00245     size += ros::serialization::serializationLength(satellites_visible);
00246     size += ros::serialization::serializationLength(satellite_visible_prn);
00247     size += ros::serialization::serializationLength(satellite_visible_z);
00248     size += ros::serialization::serializationLength(satellite_visible_azimuth);
00249     size += ros::serialization::serializationLength(satellite_visible_snr);
00250     size += ros::serialization::serializationLength(status);
00251     size += ros::serialization::serializationLength(motion_source);
00252     size += ros::serialization::serializationLength(orientation_source);
00253     size += ros::serialization::serializationLength(position_source);
00254     return size;
00255   }
00256 
00257   typedef boost::shared_ptr< ::clearpath_sensors::GPSStatus_<ContainerAllocator> > Ptr;
00258   typedef boost::shared_ptr< ::clearpath_sensors::GPSStatus_<ContainerAllocator>  const> ConstPtr;
00259   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00260 }; 
00261 typedef  ::clearpath_sensors::GPSStatus_<std::allocator<void> > GPSStatus;
00262 
00263 typedef boost::shared_ptr< ::clearpath_sensors::GPSStatus> GPSStatusPtr;
00264 typedef boost::shared_ptr< ::clearpath_sensors::GPSStatus const> GPSStatusConstPtr;
00265 
00266 
00267 template<typename ContainerAllocator>
00268 std::ostream& operator<<(std::ostream& s, const  ::clearpath_sensors::GPSStatus_<ContainerAllocator> & v)
00269 {
00270   ros::message_operations::Printer< ::clearpath_sensors::GPSStatus_<ContainerAllocator> >::stream(s, "", v);
00271   return s;}
00272 
00273 } 
00274 
00275 namespace ros
00276 {
00277 namespace message_traits
00278 {
00279 template<class ContainerAllocator> struct IsMessage< ::clearpath_sensors::GPSStatus_<ContainerAllocator> > : public TrueType {};
00280 template<class ContainerAllocator> struct IsMessage< ::clearpath_sensors::GPSStatus_<ContainerAllocator>  const> : public TrueType {};
00281 template<class ContainerAllocator>
00282 struct MD5Sum< ::clearpath_sensors::GPSStatus_<ContainerAllocator> > {
00283   static const char* value() 
00284   {
00285     return "313baa8951fdd056c78bf61b1b07d249";
00286   }
00287 
00288   static const char* value(const  ::clearpath_sensors::GPSStatus_<ContainerAllocator> &) { return value(); } 
00289   static const uint64_t static_value1 = 0x313baa8951fdd056ULL;
00290   static const uint64_t static_value2 = 0xc78bf61b1b07d249ULL;
00291 };
00292 
00293 template<class ContainerAllocator>
00294 struct DataType< ::clearpath_sensors::GPSStatus_<ContainerAllocator> > {
00295   static const char* value() 
00296   {
00297     return "clearpath_sensors/GPSStatus";
00298   }
00299 
00300   static const char* value(const  ::clearpath_sensors::GPSStatus_<ContainerAllocator> &) { return value(); } 
00301 };
00302 
00303 template<class ContainerAllocator>
00304 struct Definition< ::clearpath_sensors::GPSStatus_<ContainerAllocator> > {
00305   static const char* value() 
00306   {
00307     return "Header header\n\
00308 \n\
00309 # Satellites used in solution\n\
00310 uint16 satellites_used # Number of satellites\n\
00311 int32[] satellite_used_prn # PRN identifiers\n\
00312 \n\
00313 # Satellites visible\n\
00314 uint16 satellites_visible\n\
00315 int32[] satellite_visible_prn # PRN identifiers\n\
00316 int32[] satellite_visible_z # Elevation of satellites\n\
00317 int32[] satellite_visible_azimuth # Azimuth of satellites\n\
00318 int32[] satellite_visible_snr # Signal-to-noise ratios (dB)\n\
00319 \n\
00320 # Measurement status\n\
00321 int16 STATUS_NO_FIX=-1   # Unable to fix position\n\
00322 int16 STATUS_FIX=0       # Normal fix\n\
00323 int16 STATUS_SBAS_FIX=1  # Fixed using a satellite-based augmentation system\n\
00324 int16 STATUS_GBAS_FIX=2  #          or a ground-based augmentation system\n\
00325 int16 STATUS_DGPS_FIX=18 # Fixed with DGPS\n\
00326 int16 STATUS_WAAS_FIX=33 # Fixed with WAAS\n\
00327 int16 status\n\
00328 \n\
00329 uint16 SOURCE_NONE=0 # No information is available\n\
00330 uint16 SOURCE_GPS=1 # Using standard GPS location [only valid for position_source]\n\
00331 uint16 SOURCE_POINTS=2 # Motion/orientation fix is derived from successive points\n\
00332 uint16 SOURCE_DOPPLER=4 # Motion is derived using the Doppler effect\n\
00333 uint16 SOURCE_ALTIMETER=8 # Using an altimeter\n\
00334 uint16 SOURCE_MAGNETIC=16 # Using magnetic sensors\n\
00335 uint16 SOURCE_GYRO=32 # Using gyroscopes\n\
00336 uint16 SOURCE_ACCEL=64 # Using accelerometers\n\
00337 \n\
00338 uint16 motion_source # Source for speed, climb and track\n\
00339 uint16 orientation_source # Source for device orientation\n\
00340 uint16 position_source # Source for position\n\
00341 \n\
00342 \n\
00343 ================================================================================\n\
00344 MSG: std_msgs/Header\n\
00345 # Standard metadata for higher-level stamped data types.\n\
00346 # This is generally used to communicate timestamped data \n\
00347 # in a particular coordinate frame.\n\
00348 # \n\
00349 # sequence ID: consecutively increasing ID \n\
00350 uint32 seq\n\
00351 #Two-integer timestamp that is expressed as:\n\
00352 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00353 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00354 # time-handling sugar is provided by the client library\n\
00355 time stamp\n\
00356 #Frame this data is associated with\n\
00357 # 0: no frame\n\
00358 # 1: global frame\n\
00359 string frame_id\n\
00360 \n\
00361 ";
00362   }
00363 
00364   static const char* value(const  ::clearpath_sensors::GPSStatus_<ContainerAllocator> &) { return value(); } 
00365 };
00366 
00367 template<class ContainerAllocator> struct HasHeader< ::clearpath_sensors::GPSStatus_<ContainerAllocator> > : public TrueType {};
00368 template<class ContainerAllocator> struct HasHeader< const ::clearpath_sensors::GPSStatus_<ContainerAllocator> > : public TrueType {};
00369 } 
00370 } 
00371 
00372 namespace ros
00373 {
00374 namespace serialization
00375 {
00376 
00377 template<class ContainerAllocator> struct Serializer< ::clearpath_sensors::GPSStatus_<ContainerAllocator> >
00378 {
00379   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00380   {
00381     stream.next(m.header);
00382     stream.next(m.satellites_used);
00383     stream.next(m.satellite_used_prn);
00384     stream.next(m.satellites_visible);
00385     stream.next(m.satellite_visible_prn);
00386     stream.next(m.satellite_visible_z);
00387     stream.next(m.satellite_visible_azimuth);
00388     stream.next(m.satellite_visible_snr);
00389     stream.next(m.status);
00390     stream.next(m.motion_source);
00391     stream.next(m.orientation_source);
00392     stream.next(m.position_source);
00393   }
00394 
00395   ROS_DECLARE_ALLINONE_SERIALIZER;
00396 }; 
00397 } 
00398 } 
00399 
00400 namespace ros
00401 {
00402 namespace message_operations
00403 {
00404 
00405 template<class ContainerAllocator>
00406 struct Printer< ::clearpath_sensors::GPSStatus_<ContainerAllocator> >
00407 {
00408   template<typename Stream> static void stream(Stream& s, const std::string& indent, const  ::clearpath_sensors::GPSStatus_<ContainerAllocator> & v) 
00409   {
00410     s << indent << "header: ";
00411 s << std::endl;
00412     Printer< ::std_msgs::Header_<ContainerAllocator> >::stream(s, indent + "  ", v.header);
00413     s << indent << "satellites_used: ";
00414     Printer<uint16_t>::stream(s, indent + "  ", v.satellites_used);
00415     s << indent << "satellite_used_prn[]" << std::endl;
00416     for (size_t i = 0; i < v.satellite_used_prn.size(); ++i)
00417     {
00418       s << indent << "  satellite_used_prn[" << i << "]: ";
00419       Printer<int32_t>::stream(s, indent + "  ", v.satellite_used_prn[i]);
00420     }
00421     s << indent << "satellites_visible: ";
00422     Printer<uint16_t>::stream(s, indent + "  ", v.satellites_visible);
00423     s << indent << "satellite_visible_prn[]" << std::endl;
00424     for (size_t i = 0; i < v.satellite_visible_prn.size(); ++i)
00425     {
00426       s << indent << "  satellite_visible_prn[" << i << "]: ";
00427       Printer<int32_t>::stream(s, indent + "  ", v.satellite_visible_prn[i]);
00428     }
00429     s << indent << "satellite_visible_z[]" << std::endl;
00430     for (size_t i = 0; i < v.satellite_visible_z.size(); ++i)
00431     {
00432       s << indent << "  satellite_visible_z[" << i << "]: ";
00433       Printer<int32_t>::stream(s, indent + "  ", v.satellite_visible_z[i]);
00434     }
00435     s << indent << "satellite_visible_azimuth[]" << std::endl;
00436     for (size_t i = 0; i < v.satellite_visible_azimuth.size(); ++i)
00437     {
00438       s << indent << "  satellite_visible_azimuth[" << i << "]: ";
00439       Printer<int32_t>::stream(s, indent + "  ", v.satellite_visible_azimuth[i]);
00440     }
00441     s << indent << "satellite_visible_snr[]" << std::endl;
00442     for (size_t i = 0; i < v.satellite_visible_snr.size(); ++i)
00443     {
00444       s << indent << "  satellite_visible_snr[" << i << "]: ";
00445       Printer<int32_t>::stream(s, indent + "  ", v.satellite_visible_snr[i]);
00446     }
00447     s << indent << "status: ";
00448     Printer<int16_t>::stream(s, indent + "  ", v.status);
00449     s << indent << "motion_source: ";
00450     Printer<uint16_t>::stream(s, indent + "  ", v.motion_source);
00451     s << indent << "orientation_source: ";
00452     Printer<uint16_t>::stream(s, indent + "  ", v.orientation_source);
00453     s << indent << "position_source: ";
00454     Printer<uint16_t>::stream(s, indent + "  ", v.position_source);
00455   }
00456 };
00457 
00458 
00459 } 
00460 } 
00461 
00462 #endif // CLEARPATH_SENSORS_MESSAGE_GPSSTATUS_H
00463