YAMI4 Core
parameter_iterator.h
1
// Copyright Maciej Sobczak 2008-2019.
2
// This file is part of YAMI4.
3
//
4
// YAMI4 is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8
//
9
// YAMI4 is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
// GNU General Public License for more details.
13
//
14
// You should have received a copy of the GNU General Public License
15
// along with YAMI4. If not, see <http://www.gnu.org/licenses/>.
16
17
#ifndef YAMICORE_PARAMETER_ITERATOR_H_INCLUDED
18
#define YAMICORE_PARAMETER_ITERATOR_H_INCLUDED
19
20
#include "core.h"
21
#include "dll.h"
22
#include "parameter_entry.h"
23
24
namespace
yami
25
{
26
27
namespace
details
28
{
29
class
allocator;
30
struct
entry;
31
}
// namespace details
32
33
namespace
core
34
{
35
36
class
parameters;
37
46
class
DLL
parameter_iterator
47
{
48
public
:
54
bool
has_next()
const
;
55
61
void
move_next();
62
66
parameter_entry
current()
const
;
67
76
void
remove();
77
78
private
:
79
friend
class
parameters
;
80
81
details::entry * data_;
82
std::size_t current_index_;
83
std::size_t num_of_entries_;
84
details::allocator * allocator_;
85
};
86
87
}
// namespace core
88
89
}
// namespace yami
90
91
#endif // YAMICORE_PARAMETER_ITERATOR_H_INCLUDED
yami::core::parameters
Collection of message parameters.
Definition:
parameters.h:91
yami
Namespace devoted for everything related to YAMI4.
Definition:
agent.h:25
yami::core::parameter_iterator
Iterator to parameter entries.
Definition:
parameter_iterator.h:46
yami::core::parameter_entry
Read-only view on the parameters entry.
Definition:
parameter_entry.h:42
Generated by
1.8.15