PeriDyno
1.0.0
Loading...
Searching...
No Matches
D:
Peridyno
peridyno
src
Framework
NodeIterator.cpp
Go to the documentation of this file.
1
#include "
NodeIterator.h
"
2
#include "
Node.h
"
3
4
namespace
dyno
5
{
6
7
NodeIterator::NodeIterator
()
8
{
9
node_current
=
nullptr
;
10
}
11
12
13
NodeIterator::NodeIterator
(std::list<Node*>& nList, std::map<
ObjectId
, std::shared_ptr<Node>>& nMap)
14
{
15
mNodeList
.clear();
16
17
for
(
auto
it = nList.begin(); it != nList.end(); ++it)
18
{
19
if
(nMap.find((*it)->objectId()) != nMap.end()) {
20
mNodeList
.push_back(nMap[(*it)->objectId()]);
21
}
22
}
23
24
node_current
=
mNodeList
.empty() ? nullptr :
mNodeList
.front();
25
26
if
(!
mNodeList
.empty())
27
mNodeList
.pop_front();
28
}
29
30
31
NodeIterator::~NodeIterator
()
32
{
33
34
}
35
36
NodeIterator
&
NodeIterator::operator++
()
37
{
38
node_current
=
mNodeList
.empty() ? nullptr :
mNodeList
.front();
39
40
if
(!
mNodeList
.empty())
41
mNodeList
.pop_front();
42
43
return
*
this
;
44
}
45
46
47
NodeIterator
&
NodeIterator::operator++
(
int
)
48
{
49
return
operator++
();
50
}
51
52
std::shared_ptr<Node>
NodeIterator::operator->
()
const
53
{
54
return
node_current
;
55
}
56
57
std::shared_ptr<Node>
NodeIterator::get
()
const
58
{
59
return
node_current
;
60
}
61
62
bool
NodeIterator::operator!=
(
const
NodeIterator
& iterator)
const
63
{
64
return
node_current
!= iterator.
get
();
65
}
66
67
bool
NodeIterator::operator==
(
const
NodeIterator
& iterator)
const
68
{
69
return
node_current
== iterator.
get
();
70
}
71
}
Node.h
NodeIterator.h
dyno::NodeIterator::node_current
std::shared_ptr< Node > node_current
Definition
NodeIterator.h:48
dyno::NodeIterator::operator==
bool operator==(const NodeIterator &iterator) const
Definition
NodeIterator.cpp:67
dyno::NodeIterator::get
std::shared_ptr< Node > get() const
Definition
NodeIterator.cpp:57
dyno::NodeIterator::operator!=
bool operator!=(const NodeIterator &iterator) const
Definition
NodeIterator.cpp:62
dyno::NodeIterator::~NodeIterator
~NodeIterator()
Definition
NodeIterator.cpp:31
dyno::NodeIterator::NodeIterator
NodeIterator()
Definition
NodeIterator.cpp:7
dyno::NodeIterator::operator->
std::shared_ptr< Node > operator->() const
Definition
NodeIterator.cpp:52
dyno::NodeIterator::operator++
NodeIterator & operator++()
Definition
NodeIterator.cpp:36
dyno::NodeIterator::mNodeList
std::list< std::shared_ptr< Node > > mNodeList
Definition
NodeIterator.h:52
dyno
This is an implementation of AdditiveCCD based on peridyno.
Definition
Array.h:25
dyno::ObjectId
uint32_t ObjectId
Definition
Object.h:110
Generated by
1.13.2