$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-tu-darmstadt-ros-pkg/doc_stacks/2013-03-05_12-22-58.304137/ublox/ublox_msgs/msg/NavSVINFO.msg */ 00002 #ifndef UBLOX_MSGS_MESSAGE_NAVSVINFO_H 00003 #define UBLOX_MSGS_MESSAGE_NAVSVINFO_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 "ublox_msgs/NavSVINFO_SV.h" 00018 00019 namespace ublox_msgs 00020 { 00021 template <class ContainerAllocator> 00022 struct NavSVINFO_ { 00023 typedef NavSVINFO_<ContainerAllocator> Type; 00024 00025 NavSVINFO_() 00026 : iTOW(0) 00027 , numCh(0) 00028 , globalFlags(0) 00029 , reserved2(0) 00030 , sv() 00031 { 00032 } 00033 00034 NavSVINFO_(const ContainerAllocator& _alloc) 00035 : iTOW(0) 00036 , numCh(0) 00037 , globalFlags(0) 00038 , reserved2(0) 00039 , sv(_alloc) 00040 { 00041 } 00042 00043 typedef uint32_t _iTOW_type; 00044 uint32_t iTOW; 00045 00046 typedef uint8_t _numCh_type; 00047 uint8_t numCh; 00048 00049 typedef uint8_t _globalFlags_type; 00050 uint8_t globalFlags; 00051 00052 typedef uint16_t _reserved2_type; 00053 uint16_t reserved2; 00054 00055 typedef std::vector< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> >::other > _sv_type; 00056 std::vector< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> >::other > sv; 00057 00058 enum { CLASS_ID = 1 }; 00059 enum { MESSAGE_ID = 48 }; 00060 enum { CHIPGEN_ANTARIS = 0 }; 00061 enum { CHIPGEN_UBLOX5 = 1 }; 00062 enum { CHIPGEN_UBLOX6 = 2 }; 00063 00064 ROS_DEPRECATED uint32_t get_sv_size() const { return (uint32_t)sv.size(); } 00065 ROS_DEPRECATED void set_sv_size(uint32_t size) { sv.resize((size_t)size); } 00066 ROS_DEPRECATED void get_sv_vec(std::vector< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> >::other > & vec) const { vec = this->sv; } 00067 ROS_DEPRECATED void set_sv_vec(const std::vector< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> >::other > & vec) { this->sv = vec; } 00068 private: 00069 static const char* __s_getDataType_() { return "ublox_msgs/NavSVINFO"; } 00070 public: 00071 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00072 00073 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00074 00075 private: 00076 static const char* __s_getMD5Sum_() { return "92fe4aa48b81d4da7a58f2d2e63a7ca7"; } 00077 public: 00078 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00079 00080 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00081 00082 private: 00083 static const char* __s_getMessageDefinition_() { return "# NAV-SVINFO (0x01 0x30)\n\ 00084 # Space Vehicle Information\n\ 00085 #\n\ 00086 \n\ 00087 uint8 CLASS_ID = 1\n\ 00088 uint8 MESSAGE_ID = 48\n\ 00089 \n\ 00090 uint32 iTOW # GPS Millisecond time of week [ms]\n\ 00091 \n\ 00092 uint8 numCh # Number of channels\n\ 00093 \n\ 00094 uint8 globalFlags # Bitmask\n\ 00095 uint8 CHIPGEN_ANTARIS = 0 # Antaris, Antaris 4\n\ 00096 uint8 CHIPGEN_UBLOX5 = 1 # u-blox 5\n\ 00097 uint8 CHIPGEN_UBLOX6 = 2 # u-blox 6\n\ 00098 \n\ 00099 uint16 reserved2 # Reserved\n\ 00100 \n\ 00101 NavSVINFO_SV[] sv\n\ 00102 \n\ 00103 ================================================================================\n\ 00104 MSG: ublox_msgs/NavSVINFO_SV\n\ 00105 # see message NavSVINFO\n\ 00106 #\n\ 00107 \n\ 00108 uint8 chn # Channel number, 255 for SVs not assigned to a channel\n\ 00109 uint8 svid # Satellite ID\n\ 00110 \n\ 00111 uint8 flags # Bitmask\n\ 00112 uint8 FLAGS_SVUSED = 1 # SV is used for navigation\n\ 00113 uint8 FLAGS_DIFFCORR = 2 # Differential correction data is available for this SV\n\ 00114 uint8 FLAGS_ORBITAVAIL = 4 # Orbit information is available for this SV (Ephemeris or Almanach)\n\ 00115 uint8 FLAGS_ORBITEPH = 8 # Orbit information is Ephemeris\n\ 00116 uint8 FLAGS_UNHEALTHY = 16 # SV is unhealthy / shall not be used\n\ 00117 uint8 FLAGS_ORBIT_ALM = 32 # Orbit information is Almanac Plus\n\ 00118 uint8 FLAGS_ORBIT_AOP = 64 # Orbit information is AssistNow Autonomous\n\ 00119 uint8 FLAGS_SMOOTHED = 128 # Carrier smoothed pseudorange used\n\ 00120 \n\ 00121 uint8 quality # Bitfield\n\ 00122 # qualityInd: Signal Quality indicator (range 0..7). The following list shows the meaning of the different QI values:\n\ 00123 uint8 QUALITY_IDLE = 0 # This channel is idle\n\ 00124 uint8 QUALITY_SEARCHING = 1 # Channel is searching\n\ 00125 uint8 QUALITY_AQUIRED = 2 # Signal aquired\n\ 00126 uint8 QUALITY_DETECTED = 3 # Signal detected but unusable\n\ 00127 uint8 QUALITY_CODE_LOCK = 4 # Code Lock on Signal\n\ 00128 uint8 QUALITY_CODE_AND_CARRIER_LOCKED1 = 5 # Code and Carrier locked\n\ 00129 uint8 QUALITY_CODE_AND_CARRIER_LOCKED2 = 6 # Code and Carrier locked\n\ 00130 uint8 QUALITY_CODE_AND_CARRIER_LOCKED3 = 7 # Code and Carrier locked\n\ 00131 \n\ 00132 uint8 cno # Carrier to Noise Ratio (Signal Strength) [dbHz]\n\ 00133 int8 elev # Elevation in integer degrees [deg]\n\ 00134 int16 azim # Azimuth in integer degrees [deg]\n\ 00135 int32 prRes # Pseudo range residual in centimetres [cm]\n\ 00136 \n\ 00137 "; } 00138 public: 00139 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00140 00141 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00142 00143 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00144 { 00145 ros::serialization::OStream stream(write_ptr, 1000000000); 00146 ros::serialization::serialize(stream, iTOW); 00147 ros::serialization::serialize(stream, numCh); 00148 ros::serialization::serialize(stream, globalFlags); 00149 ros::serialization::serialize(stream, reserved2); 00150 ros::serialization::serialize(stream, sv); 00151 return stream.getData(); 00152 } 00153 00154 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00155 { 00156 ros::serialization::IStream stream(read_ptr, 1000000000); 00157 ros::serialization::deserialize(stream, iTOW); 00158 ros::serialization::deserialize(stream, numCh); 00159 ros::serialization::deserialize(stream, globalFlags); 00160 ros::serialization::deserialize(stream, reserved2); 00161 ros::serialization::deserialize(stream, sv); 00162 return stream.getData(); 00163 } 00164 00165 ROS_DEPRECATED virtual uint32_t serializationLength() const 00166 { 00167 uint32_t size = 0; 00168 size += ros::serialization::serializationLength(iTOW); 00169 size += ros::serialization::serializationLength(numCh); 00170 size += ros::serialization::serializationLength(globalFlags); 00171 size += ros::serialization::serializationLength(reserved2); 00172 size += ros::serialization::serializationLength(sv); 00173 return size; 00174 } 00175 00176 typedef boost::shared_ptr< ::ublox_msgs::NavSVINFO_<ContainerAllocator> > Ptr; 00177 typedef boost::shared_ptr< ::ublox_msgs::NavSVINFO_<ContainerAllocator> const> ConstPtr; 00178 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00179 }; // struct NavSVINFO 00180 typedef ::ublox_msgs::NavSVINFO_<std::allocator<void> > NavSVINFO; 00181 00182 typedef boost::shared_ptr< ::ublox_msgs::NavSVINFO> NavSVINFOPtr; 00183 typedef boost::shared_ptr< ::ublox_msgs::NavSVINFO const> NavSVINFOConstPtr; 00184 00185 00186 template<typename ContainerAllocator> 00187 std::ostream& operator<<(std::ostream& s, const ::ublox_msgs::NavSVINFO_<ContainerAllocator> & v) 00188 { 00189 ros::message_operations::Printer< ::ublox_msgs::NavSVINFO_<ContainerAllocator> >::stream(s, "", v); 00190 return s;} 00191 00192 } // namespace ublox_msgs 00193 00194 namespace ros 00195 { 00196 namespace message_traits 00197 { 00198 template<class ContainerAllocator> struct IsMessage< ::ublox_msgs::NavSVINFO_<ContainerAllocator> > : public TrueType {}; 00199 template<class ContainerAllocator> struct IsMessage< ::ublox_msgs::NavSVINFO_<ContainerAllocator> const> : public TrueType {}; 00200 template<class ContainerAllocator> 00201 struct MD5Sum< ::ublox_msgs::NavSVINFO_<ContainerAllocator> > { 00202 static const char* value() 00203 { 00204 return "92fe4aa48b81d4da7a58f2d2e63a7ca7"; 00205 } 00206 00207 static const char* value(const ::ublox_msgs::NavSVINFO_<ContainerAllocator> &) { return value(); } 00208 static const uint64_t static_value1 = 0x92fe4aa48b81d4daULL; 00209 static const uint64_t static_value2 = 0x7a58f2d2e63a7ca7ULL; 00210 }; 00211 00212 template<class ContainerAllocator> 00213 struct DataType< ::ublox_msgs::NavSVINFO_<ContainerAllocator> > { 00214 static const char* value() 00215 { 00216 return "ublox_msgs/NavSVINFO"; 00217 } 00218 00219 static const char* value(const ::ublox_msgs::NavSVINFO_<ContainerAllocator> &) { return value(); } 00220 }; 00221 00222 template<class ContainerAllocator> 00223 struct Definition< ::ublox_msgs::NavSVINFO_<ContainerAllocator> > { 00224 static const char* value() 00225 { 00226 return "# NAV-SVINFO (0x01 0x30)\n\ 00227 # Space Vehicle Information\n\ 00228 #\n\ 00229 \n\ 00230 uint8 CLASS_ID = 1\n\ 00231 uint8 MESSAGE_ID = 48\n\ 00232 \n\ 00233 uint32 iTOW # GPS Millisecond time of week [ms]\n\ 00234 \n\ 00235 uint8 numCh # Number of channels\n\ 00236 \n\ 00237 uint8 globalFlags # Bitmask\n\ 00238 uint8 CHIPGEN_ANTARIS = 0 # Antaris, Antaris 4\n\ 00239 uint8 CHIPGEN_UBLOX5 = 1 # u-blox 5\n\ 00240 uint8 CHIPGEN_UBLOX6 = 2 # u-blox 6\n\ 00241 \n\ 00242 uint16 reserved2 # Reserved\n\ 00243 \n\ 00244 NavSVINFO_SV[] sv\n\ 00245 \n\ 00246 ================================================================================\n\ 00247 MSG: ublox_msgs/NavSVINFO_SV\n\ 00248 # see message NavSVINFO\n\ 00249 #\n\ 00250 \n\ 00251 uint8 chn # Channel number, 255 for SVs not assigned to a channel\n\ 00252 uint8 svid # Satellite ID\n\ 00253 \n\ 00254 uint8 flags # Bitmask\n\ 00255 uint8 FLAGS_SVUSED = 1 # SV is used for navigation\n\ 00256 uint8 FLAGS_DIFFCORR = 2 # Differential correction data is available for this SV\n\ 00257 uint8 FLAGS_ORBITAVAIL = 4 # Orbit information is available for this SV (Ephemeris or Almanach)\n\ 00258 uint8 FLAGS_ORBITEPH = 8 # Orbit information is Ephemeris\n\ 00259 uint8 FLAGS_UNHEALTHY = 16 # SV is unhealthy / shall not be used\n\ 00260 uint8 FLAGS_ORBIT_ALM = 32 # Orbit information is Almanac Plus\n\ 00261 uint8 FLAGS_ORBIT_AOP = 64 # Orbit information is AssistNow Autonomous\n\ 00262 uint8 FLAGS_SMOOTHED = 128 # Carrier smoothed pseudorange used\n\ 00263 \n\ 00264 uint8 quality # Bitfield\n\ 00265 # qualityInd: Signal Quality indicator (range 0..7). The following list shows the meaning of the different QI values:\n\ 00266 uint8 QUALITY_IDLE = 0 # This channel is idle\n\ 00267 uint8 QUALITY_SEARCHING = 1 # Channel is searching\n\ 00268 uint8 QUALITY_AQUIRED = 2 # Signal aquired\n\ 00269 uint8 QUALITY_DETECTED = 3 # Signal detected but unusable\n\ 00270 uint8 QUALITY_CODE_LOCK = 4 # Code Lock on Signal\n\ 00271 uint8 QUALITY_CODE_AND_CARRIER_LOCKED1 = 5 # Code and Carrier locked\n\ 00272 uint8 QUALITY_CODE_AND_CARRIER_LOCKED2 = 6 # Code and Carrier locked\n\ 00273 uint8 QUALITY_CODE_AND_CARRIER_LOCKED3 = 7 # Code and Carrier locked\n\ 00274 \n\ 00275 uint8 cno # Carrier to Noise Ratio (Signal Strength) [dbHz]\n\ 00276 int8 elev # Elevation in integer degrees [deg]\n\ 00277 int16 azim # Azimuth in integer degrees [deg]\n\ 00278 int32 prRes # Pseudo range residual in centimetres [cm]\n\ 00279 \n\ 00280 "; 00281 } 00282 00283 static const char* value(const ::ublox_msgs::NavSVINFO_<ContainerAllocator> &) { return value(); } 00284 }; 00285 00286 } // namespace message_traits 00287 } // namespace ros 00288 00289 namespace ros 00290 { 00291 namespace serialization 00292 { 00293 00294 template<class ContainerAllocator> struct Serializer< ::ublox_msgs::NavSVINFO_<ContainerAllocator> > 00295 { 00296 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00297 { 00298 stream.next(m.iTOW); 00299 stream.next(m.numCh); 00300 stream.next(m.globalFlags); 00301 stream.next(m.reserved2); 00302 stream.next(m.sv); 00303 } 00304 00305 ROS_DECLARE_ALLINONE_SERIALIZER; 00306 }; // struct NavSVINFO_ 00307 } // namespace serialization 00308 } // namespace ros 00309 00310 namespace ros 00311 { 00312 namespace message_operations 00313 { 00314 00315 template<class ContainerAllocator> 00316 struct Printer< ::ublox_msgs::NavSVINFO_<ContainerAllocator> > 00317 { 00318 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::ublox_msgs::NavSVINFO_<ContainerAllocator> & v) 00319 { 00320 s << indent << "iTOW: "; 00321 Printer<uint32_t>::stream(s, indent + " ", v.iTOW); 00322 s << indent << "numCh: "; 00323 Printer<uint8_t>::stream(s, indent + " ", v.numCh); 00324 s << indent << "globalFlags: "; 00325 Printer<uint8_t>::stream(s, indent + " ", v.globalFlags); 00326 s << indent << "reserved2: "; 00327 Printer<uint16_t>::stream(s, indent + " ", v.reserved2); 00328 s << indent << "sv[]" << std::endl; 00329 for (size_t i = 0; i < v.sv.size(); ++i) 00330 { 00331 s << indent << " sv[" << i << "]: "; 00332 s << std::endl; 00333 s << indent; 00334 Printer< ::ublox_msgs::NavSVINFO_SV_<ContainerAllocator> >::stream(s, indent + " ", v.sv[i]); 00335 } 00336 } 00337 }; 00338 00339 00340 } // namespace message_operations 00341 } // namespace ros 00342 00343 #endif // UBLOX_MSGS_MESSAGE_NAVSVINFO_H 00344