Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
rtt
marsh
PropertyMarshaller.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
tag: FMTC Tue Mar 11 21:49:21 CET 2008 PropertyMarshaller.cpp
3
4
PropertyMarshaller.cpp - description
5
-------------------
6
begin : Tue March 11 2008
7
copyright : (C) 2008 FMTC
8
email : peter.soetens@fmtc.be
9
10
***************************************************************************
11
* This library is free software; you can redistribute it and/or *
12
* modify it under the terms of the GNU General Public *
13
* License as published by the Free Software Foundation; *
14
* version 2 of the License. *
15
* *
16
* As a special exception, you may use this file as part of a free *
17
* software library without restriction. Specifically, if other files *
18
* instantiate templates or use macros or inline functions from this *
19
* file, or you compile this file and link it with other files to *
20
* produce an executable, this file does not by itself cause the *
21
* resulting executable to be covered by the GNU General Public *
22
* License. This exception does not however invalidate any other *
23
* reasons why the executable file might be covered by the GNU General *
24
* Public License. *
25
* *
26
* This library is distributed in the hope that it will be useful, *
27
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
28
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
29
* Lesser General Public License for more details. *
30
* *
31
* You should have received a copy of the GNU General Public *
32
* License along with this library; if not, write to the Free Software *
33
* Foundation, Inc., 59 Temple Place, *
34
* Suite 330, Boston, MA 02111-1307 USA *
35
* *
36
***************************************************************************/
37
38
39
#include "
PropertyMarshaller.hpp
"
40
#include "rtt-config.h"
41
42
#ifdef ORODAT_CORELIB_PROPERTIES_MARSHALLING_INCLUDE
43
#include ORODAT_CORELIB_PROPERTIES_MARSHALLING_INCLUDE
44
#endif
45
46
#include <
Logger.hpp
>
47
#include <fstream>
48
49
namespace
RTT
{
50
using namespace
detail;
51
PropertyMarshaller::PropertyMarshaller
(
const
std::string& filename)
52
: m( 0 )
53
{
54
Logger::In
in(
"PropertyMarshaller"
);
55
#ifdef ORODAT_CORELIB_PROPERTIES_MARSHALLING_INCLUDE
56
m
=
new
OROCLS_CORELIB_PROPERTIES_MARSHALLING_DRIVER<std::ostream>( filename );
57
#else
58
log
(
Error
) <<
"Orocos RTT was configured without Property Marshalling support !"
<<
endlog
();
59
#endif
60
}
61
62
PropertyMarshaller::~PropertyMarshaller
()
63
{
64
delete
m
;
65
}
66
67
void
PropertyMarshaller::serialize
(
PropertyBase
* v)
68
{
69
Logger::In
in(
"PropertyMarshaller"
);
70
if
(
m
)
71
m
->
serialize
(v);
72
}
73
74
void
PropertyMarshaller::serialize
(
const
PropertyBag
&v)
75
{
76
Logger::In
in(
"PropertyMarshaller"
);
77
if
(
m
)
78
m
->
serialize
(v);
79
}
80
81
void
PropertyMarshaller::flush
()
82
{
83
Logger::In
in(
"PropertyMarshaller"
);
84
if
(
m
)
85
m
->
flush
();
86
}
87
}
88
RTT::marsh::PropertyMarshaller::m
MarshallInterface * m
Definition:
PropertyMarshaller.hpp:56
RTT::marsh::PropertyMarshaller::flush
virtual void flush()
Definition:
PropertyMarshaller.cpp:81
RTT::base::PropertyBase
Definition:
PropertyBase.hpp:56
RTT::marsh::PropertyMarshaller::~PropertyMarshaller
~PropertyMarshaller()
Definition:
PropertyMarshaller.cpp:62
RTT::marsh::MarshallInterface::flush
virtual void flush()=0
RTT::PropertyBag
A container for holding references to properties.
Definition:
PropertyBag.hpp:96
RTT::marsh::PropertyMarshaller::PropertyMarshaller
PropertyMarshaller(const PropertyMarshaller &)
Logger.hpp
RTT::Error
Definition:
Logger.hpp:345
RTT::Logger::In
Definition:
Logger.hpp:159
RTT
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
Definition:
Activity.cpp:53
RTT::marsh::MarshallInterface::serialize
virtual void serialize(base::PropertyBase *v)=0
PropertyMarshaller.hpp
RTT::log
static Logger & log()
Definition:
Logger.hpp:350
RTT::endlog
static Logger::LogFunction endlog()
Definition:
Logger.hpp:362
RTT::marsh::PropertyMarshaller::serialize
virtual void serialize(base::PropertyBase *v)
Definition:
PropertyMarshaller.cpp:67
rtt
Author(s): RTT Developers
autogenerated on Fri Oct 25 2019 03:59:34