tue_config
src
sequence.cpp
Go to the documentation of this file.
1
#include "
tue/config/sequence.h
"
2
#include "
tue/config/data.h
"
3
4
namespace
tue
5
{
6
7
namespace
config
8
{
9
10
NodePtr
Sequence::deepCopy
(
const
Data
& source,
NodeIdx
target_idx,
Data
& target)
const
11
{
12
boost::shared_ptr<Sequence> n(
new
Sequence
(
name
()));
13
14
n->children_.resize(
children_
.
size
());
15
for
(
unsigned
int
i = 0; i <
children_
.
size
(); ++i)
16
{
17
NodeIdx
child_idx = target.
addNode
(
NodePtr
(), target_idx);
18
target.
nodes
[child_idx] = source.
nodes
[
children_
[i]]->deepCopy(source, child_idx, target);
19
n->children_[i] = child_idx;
20
21
if
(i > 0)
22
target.
setRightSibling
(n->children_[i - 1], child_idx);
23
}
24
25
return
n;
26
}
27
28
}
29
30
}
// end namespace tue
31
std::vector::size
T size(T... args)
tue::config::NodeIdx
unsigned int NodeIdx
Definition:
data_pointer.h:12
tue::config::Sequence::children_
std::vector< NodeIdx > children_
Definition:
sequence.h:40
sequence.h
tue::config::Data::nodes
std::vector< NodePtr > nodes
Definition:
data.h:77
tue::config::Data::setRightSibling
void setRightSibling(NodeIdx n, NodeIdx sibling)
Definition:
data.h:75
tue::config::Sequence::Sequence
Sequence(const Label &name)
Definition:
sequence.h:19
tue::config::Data::addNode
NodeIdx addNode(const NodePtr &n, NodeIdx parent)
Definition:
data.h:61
tue::config::Sequence::deepCopy
NodePtr deepCopy(const Data &source, NodeIdx target_idx, Data &target) const
Definition:
sequence.cpp:10
tue::config::Data
Definition:
data.h:17
data.h
tue::config::NodePtr
boost::shared_ptr< Node > NodePtr
Definition:
types.h:21
tue::config::Node::name
const Label & name() const
Definition:
node.h:54
tue
config
tue::config::ReaderWriter config
Definition:
sdf_gtest.cpp:9
Generated on Sun Feb 23 2025 04:34:23 for tue_config by
1.8.17