orca-robotics


INTRODUCTION
Overview
Download and Install
Quick Start
Documentation
Publications

REPOSITORY
Interfaces
Components
Libraries
Utilities
Software Map

DEVELOPER
Tutorials
Examples
Dev Guide
Dashboard
Wiki
login/pass: orca/orca

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         

logwriters.h

00001 #ifndef ORCALOGFACTORY_LOGWRITERS_H
00002 #define ORCALOGFACTORY_LOGWRITERS_H
00003 
00004 #include <orcalog/logwriter.h>
00005 #include <orca/cpu.h>
00006 #include <orca/drivebicycle.h>
00007 #include <orca/imu.h>
00008 #include <orca/laserscanner2d.h>
00009 #include <orca/localise2d.h>
00010 #include <orca/localise3d.h>
00011 #include <orca/odometry2d.h>
00012 #include <orca/odometry3d.h>
00013 #include <orca/polarfeature2d.h>
00014 #include <orca/power.h>
00015 #include <orca/wifi.h>
00016 #include <orca/gps.h>
00017 
00018 #include <orca/camera.h>
00019 #include <orca/image.h>
00020 #include "camerawriter.h"
00021 
00022 namespace orcalogfactory {
00023 
00024 //
00025 // A collection of classes capable of writing sub-logfiles for specific
00026 // interface types.
00027 //
00028 
00030 
00031 class CpuLogWriter : public orcalog::LogWriter
00032 {
00033 public:
00034     void checkFormat( const std::string &format );
00035     void write( const orca::CpuData &obj, const orca::Time &arrivalTime );
00036 };
00037 
00039 
00040 class DriveBicycleLogWriter : public orcalog::LogWriter
00041 {
00042 public:
00043     void checkFormat( const std::string &format );
00044     void write( const orca::DriveBicycleData &obj, const orca::Time &arrivalTime  );
00045     void write( const orca::VehicleDescription &descr );
00046 };
00047 
00049 
00050 class ImuLogWriter : public orcalog::LogWriter
00051 {
00052 public:
00053     void checkFormat( const std::string &format );
00054     void write( const orca::ImuData &obj, const orca::Time &arrivalTime  );
00055 };
00056 
00058 
00059 class LaserScanner2dLogWriter : public orcalog::LogWriter
00060 {
00061 public:
00062     void checkFormat( const std::string &format );
00063     void write( const orca::LaserScanner2dDataPtr &obj, const orca::Time &arrivalTime  );
00064     void write( const orca::RangeScanner2dDescription &descr );
00065 };
00066 
00068 
00069 class Localise2dLogWriter : public orcalog::LogWriter
00070 {
00071 public:
00072     void checkFormat( const std::string &format );
00073     void write( const orca::Localise2dData &obj, const orca::Time &arrivalTime  );
00074     void write( const orca::VehicleGeometryDescriptionPtr &descr );
00075 };
00076 
00078 
00079 class Localise3dLogWriter : public orcalog::LogWriter
00080 {
00081 public:
00082     void checkFormat( const std::string &format );
00083     void write( const orca::Localise3dData &obj, const orca::Time &arrivalTime  );        
00084     void write( const orca::VehicleGeometryDescriptionPtr &descr );
00085 };
00086 
00088 
00089 class Odometry2dLogWriter : public orcalog::LogWriter
00090 {
00091 public:
00092     void checkFormat( const std::string &format );
00093     void write( const orca::Odometry2dData &obj, const orca::Time &arrivalTime  );
00094     void write( const orca::VehicleDescription &descr );
00095 };
00096 
00098 
00099 class Odometry3dLogWriter : public orcalog::LogWriter
00100 {
00101 public:
00102     void checkFormat( const std::string &format );
00103     void write( const orca::Odometry3dData &obj, const orca::Time &arrivalTime  );
00104     void write( const orca::VehicleDescription &descr );
00105 };
00106 
00108 
00109 class PolarFeature2dLogWriter : public orcalog::LogWriter
00110 {
00111 public:
00112     void checkFormat( const std::string &format );
00113     void write( const orca::PolarFeature2dData &obj, const orca::Time &arrivalTime  );
00114 };
00115 
00117 
00118 class PowerLogWriter : public orcalog::LogWriter
00119 {
00120 public:
00121     void checkFormat( const std::string &format );
00122     void write( const orca::PowerData &obj, const orca::Time &arrivalTime  );
00123 };
00124 
00126 
00127 class WifiLogWriter : public orcalog::LogWriter
00128 {
00129 public:
00130     void checkFormat( const std::string &format );
00131     void write( const orca::WifiData &obj, const orca::Time &arrivalTime  );
00132 };
00133 
00135 
00136 class GpsLogWriter : public orcalog::LogWriter
00137 {
00138 public:
00139     void checkFormat( const std::string &format );
00140     void write( const orca::GpsData &obj, const orca::Time &arrivalTime  );
00141     void write( const orca::GpsDescription &descr );
00142 };
00143 
00145 
00146 class ImageLogWriter : public orcalog::LogWriter
00147 {
00148 public:
00149     void checkFormat( const std::string &format );
00150     void write( const orca::ImageDataPtr &obj, const orca::Time &arrivalTime  );
00151     void write( const orca::ImageDescriptionPtr &descr );
00152 };
00153 
00155 
00156 class CameraLogWriter : public orcalog::LogWriter
00157 {
00158 public:
00159     void checkFormat( const std::string &format );
00160     void write( const orca::ImageDataPtr &obj, const orca::Time &arrivalTime  );
00161     void write( const orca::CameraDescriptionPtr &descr );
00162     void createLogFile( const std::string &filename, const std::string &format );
00163 private:
00164 // alen - member class for camera logging so we can handle jpegs
00165     CameraWriter cameraWriter;
00166 
00167 };
00168 
00170 
00171 
00172 }
00173 
00174 #endif
 

Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)


Generated for Orca Robotics by  doxygen 1.4.5