Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
rtt
typekit
StdStringTypeInfo.hpp
Go to the documentation of this file.
1
/***************************************************************************
2
tag: The SourceWorks Tue Sep 7 00:55:18 CEST 2010 StdStringTypeInfo.hpp
3
4
StdStringTypeInfo.hpp - description
5
-------------------
6
begin : Tue September 07 2010
7
copyright : (C) 2010 The SourceWorks
8
email : peter@thesourceworks.com
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 <string>
40
#include "../types/SequenceTypeInfo.hpp"
41
#include "../types/TemplateTypeInfo.hpp"
42
43
namespace
RTT
44
{
45
namespace
types
46
{
47
51
struct
StdStringTypeInfo
:
public
SequenceTypeInfo
<std::string, true>
52
{
53
StdStringTypeInfo
(
const
std::string&
tname
=
"string"
) :
54
SequenceTypeInfo
<
std
::string, true> (
tname
)
55
{
56
}
57
58
base::AttributeBase
*
buildVariable
(std::string name,
int
size)
const
59
{
60
std::string t_init(size,
' '
);
// we can't use the default char(), which is null !
61
62
// returned type is identical to parent, but we set spaces.
63
base::AttributeBase
* ret =
SequenceTypeInfo<std::string, true>::buildVariable
(name, size);
64
Attribute<std::string>
tt
= ret;
65
tt.
set
(t_init);
66
return
ret;
67
}
68
69
virtual
bool
composeType
(
base::DataSourceBase::shared_ptr
source,
base::DataSourceBase::shared_ptr
result)
const
70
{
71
return
result->update( source.get() );
72
}
73
77
virtual
base::DataSourceBase::shared_ptr
decomposeType
(
base::DataSourceBase::shared_ptr
source)
const
{
78
return
source;
79
}
80
81
};
82
}
83
}
RTT::types::StdStringTypeInfo
Definition:
StdStringTypeInfo.hpp:51
boost
Definition:
EdgeCondition.hpp:61
RTT::types::StdStringTypeInfo::decomposeType
virtual base::DataSourceBase::shared_ptr decomposeType(base::DataSourceBase::shared_ptr source) const
Definition:
StdStringTypeInfo.hpp:77
std
Definition:
mystd.hpp:163
RTT::Attribute::set
void set(T const &t)
Definition:
Attribute.hpp:199
RTT::types::StdStringTypeInfo::StdStringTypeInfo
StdStringTypeInfo(const std::string &tname="string")
Definition:
StdStringTypeInfo.hpp:53
RTT::types::PrimitiveTypeInfo< std::string, use_ostream >::tname
const std::string tname
Definition:
PrimitiveTypeInfo.hpp:76
RTT::base::AttributeBase
Definition:
AttributeBase.hpp:52
RTT::types::StdStringTypeInfo::composeType
virtual bool composeType(base::DataSourceBase::shared_ptr source, base::DataSourceBase::shared_ptr result) const
Definition:
StdStringTypeInfo.hpp:69
RTT::types::StdStringTypeInfo::buildVariable
base::AttributeBase * buildVariable(std::string name, int size) const
Definition:
StdStringTypeInfo.hpp:58
RTT::base::DataSourceBase::shared_ptr
boost::intrusive_ptr< DataSourceBase > shared_ptr
Definition:
DataSourceBase.hpp:99
RTT::Attribute
Definition:
Attribute.hpp:56
RTT
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
Definition:
Activity.cpp:53
RTT::types::SequenceTypeInfo
Definition:
rtt-types-fwd.hpp:69
RTT::types::SequenceTypeInfo::buildVariable
base::AttributeBase * buildVariable(std::string name, int size) const
Definition:
SequenceTypeInfo.hpp:77
rtt
Author(s): RTT Developers
autogenerated on Fri Oct 25 2019 03:59:44