MRPT  1.9.9
CObservation.cpp
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 
10 #include "obs-precomp.h" // Precompiled headers
11 
12 #include <mrpt/obs/CObservation.h>
14 #include <mrpt/system/os.h>
16 
17 #include <mrpt/poses/CPose3D.h>
18 #include <iomanip>
19 
20 using namespace mrpt::obs;
21 using namespace mrpt::poses;
22 using namespace mrpt::math;
23 
25 
26 void CObservation::getSensorPose(mrpt::math::TPose3D& out_sensorPose) const
27 {
28  CPose3D p;
29  getSensorPose(p);
30  out_sensorPose = p.asTPose();
31 }
32 
34 {
35  setSensorPose(CPose3D(newSensorPose));
36 }
37 
39 {
40  std::swap(timestamp, o.timestamp);
41  std::swap(sensorLabel, o.sensorLabel);
42 }
43 
44 void CObservation::getDescriptionAsText(std::ostream& o) const
45 {
46  using namespace mrpt::system; // for the TTimeStamp << op
47 
48  o << "Timestamp (UTC): " << mrpt::system::dateTimeToString(timestamp)
49  << std::endl;
50  o << " (as time_t): " << std::fixed << std::setprecision(5)
51  << mrpt::system::timestampTotime_t(timestamp) << std::endl;
52  o << " (as TTimestamp): " << timestamp << std::endl;
53  o << "Sensor label: '" << sensorLabel << "'" << std::endl;
54  o << std::endl;
55 }
void swap(CObservation &o)
Swap with another observation, ONLY the data defined here in the base class CObservation.
This base provides a set of functions for maths stuff.
virtual void setSensorPose(const mrpt::poses::CPose3D &newSensorPose)=0
A general method to change the sensor pose on the robot.
This namespace contains representation of robot actions and observations.
Classes for 2D/3D geometry representation, both of single values and probability density distribution...
std::string sensorLabel
An arbitrary label that can be used to identify the sensor.
Definition: CObservation.h:62
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
mrpt::system::TTimeStamp timestamp
The associated UTC time-stamp.
Definition: CObservation.h:60
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
Definition: CPose3D.h:86
Declares a class that represents any robot&#39;s observation.
Definition: CObservation.h:43
std::string dateTimeToString(const mrpt::system::TTimeStamp t)
Convert a timestamp into this textual form (UTC time): YEAR/MONTH/DAY,HH:MM:SS.MMM.
Definition: datetime.cpp:147
Lightweight 3D pose (three spatial coordinates, plus three angular coordinates).
typedef void(APIENTRYP PFNGLBLENDCOLORPROC)(GLclampf red
GLfloat GLfloat p
Definition: glext.h:6305
double timestampTotime_t(const mrpt::system::TTimeStamp t)
Transform from TTimeStamp to standard "time_t" (actually a double number, it can contain fractions of...
Definition: datetime.cpp:50
#define IMPLEMENTS_VIRTUAL_SERIALIZABLE( class_name, base_class_name, NameSpace)
This must be inserted as implementation of some required members for virtual CSerializable classes: ...
virtual void getDescriptionAsText(std::ostream &o) const
Build a detailed, multi-line textual description of the observation contents and dump it to the outpu...



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 7d5e6d718 Fri Aug 24 01:51:28 2018 +0200 at lun nov 2 08:35:50 CET 2020