g2o
Toggle main menu visibility
Loading...
Searching...
No Matches
g2o
core
parameter_container.h
Go to the documentation of this file.
1
// g2o - General Graph Optimization
2
// Copyright (C) 2011 R. Kuemmerle, G. Grisetti, W. Burgard
3
// All rights reserved.
4
//
5
// Redistribution and use in source and binary forms, with or without
6
// modification, are permitted provided that the following conditions are
7
// met:
8
//
9
// * Redistributions of source code must retain the above copyright notice,
10
// this list of conditions and the following disclaimer.
11
// * Redistributions in binary form must reproduce the above copyright
12
// notice, this list of conditions and the following disclaimer in the
13
// documentation and/or other materials provided with the distribution.
14
//
15
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
16
// IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
17
// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
18
// PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
19
// HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
21
// TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
22
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
24
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
27
#ifndef G2O_GRAPH_PARAMETER_CONTAINER_HH_
28
#define G2O_GRAPH_PARAMETER_CONTAINER_HH_
29
30
#include <iosfwd>
31
#include <map>
32
#include <string>
33
34
namespace
g2o
{
35
36
class
Parameter
;
37
41
class
ParameterContainer
:
protected
std::map<int, Parameter*> {
42
public
:
43
typedef
std::map<int, Parameter*>
BaseClass
;
44
50
ParameterContainer
(
bool
isMainStorage_ =
true
);
51
virtual
~ParameterContainer
();
53
bool
addParameter
(
Parameter
* p);
55
Parameter
*
getParameter
(
int
id
);
57
const
Parameter
*
getParameter
(
int
id
)
const
;
59
Parameter
*
detachParameter
(
int
id
);
61
virtual
bool
read
(std::istream& is,
62
const
std::map<std::string, std::string>* renamedMap = 0);
64
virtual
bool
write
(std::ostream& os)
const
;
65
bool
isMainStorage
()
const
{
return
_isMainStorage
; }
66
void
clear
();
67
68
// stuff of the base class that should re-appear
69
using
BaseClass::size;
70
71
protected
:
72
bool
_isMainStorage
;
73
};
74
75
}
// namespace g2o
76
77
#endif
g2o::ParameterContainer::write
virtual bool write(std::ostream &os) const
write the data to a stream
Definition
parameter_container.cpp:84
g2o::ParameterContainer::~ParameterContainer
virtual ~ParameterContainer()
Definition
parameter_container.cpp:54
g2o::ParameterContainer::BaseClass
std::map< int, Parameter * > BaseClass
Definition
parameter_container.h:43
g2o::ParameterContainer::isMainStorage
bool isMainStorage() const
Definition
parameter_container.h:65
g2o::ParameterContainer::_isMainStorage
bool _isMainStorage
Definition
parameter_container.h:72
g2o::ParameterContainer::ParameterContainer
ParameterContainer(bool isMainStorage_=true)
Definition
parameter_container.cpp:43
g2o::ParameterContainer::detachParameter
Parameter * detachParameter(int id)
remove a parameter from the container, i.e., the user now owns the pointer
Definition
parameter_container.cpp:76
g2o::ParameterContainer::addParameter
bool addParameter(Parameter *p)
add parameter to the container
Definition
parameter_container.cpp:56
g2o::ParameterContainer::getParameter
Parameter * getParameter(int id)
return a parameter based on its ID
Definition
parameter_container.cpp:64
g2o::ParameterContainer::read
virtual bool read(std::istream &is, const std::map< std::string, std::string > *renamedMap=0)
read parameters from a stream
Definition
parameter_container.cpp:95
g2o::ParameterContainer::clear
void clear()
Definition
parameter_container.cpp:46
g2o::Parameter
Definition
parameter.h:36
g2o
Definition
dl_wrapper.cpp:55
Generated on
for g2o by
1.17.0