SCENE C++ API
2.1.0
Core_API
core_api
lsiterator.h
1
#pragma once
2
3
#include <core_api/lsglobaldefinitions.h>
4
#include <core_api/lsinterface.h>
5
6
namespace
SCENE_API {
7
8
// Forward declarations
9
template
<
typename
ValueT>
class
LSIterator_Implementation;
10
13
template
<
typename
ValueT>
14
class
LSIterator
:
public
LSInterface
15
{
16
public
:
17
20
LSIterator
();
21
25
LSIterator
(
const
LSIterator<ValueT>
& iter);
26
30
LSIterator
&
operator=
(
const
LSIterator<ValueT>
& iter);
31
32
37
bool
moveNext
();
38
42
ValueT
getCurrent
()
const
;
43
47
void
getCurrent
(ValueT& out)
const
;
48
55
LSIterator<ValueT>
where
(
bool
(*func)(
const
ValueT&))
const
;
56
57
61
void
*
operator
new
(
size_t
tSize);
65
void
operator
delete
(
void
* p);
66
67
protected
:
68
LS_INTERFACE_TEMPLATE(
LSIterator
, ValueT,
LSInterface
)
69
};
70
71
}