FEI Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
fei_ParameterSet.cpp
Go to the documentation of this file.
1/*--------------------------------------------------------------------*/
2/* Copyright 2005 Sandia Corporation. */
3/* Under the terms of Contract DE-AC04-94AL85000, there is a */
4/* non-exclusive license for use of this work by or on behalf */
5/* of the U.S. Government. Export of this program may require */
6/* a license from the United States Government. */
7/*--------------------------------------------------------------------*/
8
9#include <fei_macros.hpp>
10#include <fei_ParameterSet.hpp>
11
13 : params_(NULL)
14{
15 params_ = new std::vector<const Param*>;
16}
17
19{
20 const_iterator iter = begin(), iter_end = end();
21 for(; iter != iter_end; ++iter) {
22 delete &(*iter);
23 }
24
25 delete params_; params_ = NULL;
26}
27
29 int& paramValue) const
30{
31 const fei::Param* param = get(name);
32 if (param == NULL) return(-1);
33
34 if (param->getType() != fei::Param::INT) return(-1);
35
36 paramValue = param->getIntValue();
37 return(0);
38}
39
41 double& paramValue) const
42{
43 const fei::Param* param = get(name);
44 if (param == NULL) return(-1);
45
46 if (param->getType() == fei::Param::INT) {
47 paramValue = param->getIntValue();
48 }
49 else if (param->getType() == fei::Param::DOUBLE) {
50 paramValue = param->getDoubleValue();
51 }
52 else return(-1);
53
54 return(0);
55}
56
58 std::string& paramValue) const
59{
60 const fei::Param* param = get(name);
61 if (param == NULL) return(-1);
62
63 if (param->getType() != fei::Param::STRING) return(-1);
64
65 paramValue = param->getStringValue();
66 return(0);
67}
68
70 bool& paramValue) const
71{
72 const fei::Param* param = get(name);
73 if (param == NULL) return(-1);
74
75 if (param->getType() != fei::Param::BOOL) return(-1);
76
77 paramValue = param->getBoolValue();
78 return(0);
79}
80
82 const void*& paramValue) const
83{
84 const fei::Param* param = get(name);
85 if (param == NULL) return(-1);
86
87 if (param->getType() != fei::Param::VOID) return(-1);
88
89 paramValue = param->getVoidValue();
90 return(0);
91}
const std::string & getStringValue() const
double getDoubleValue() const
ParamType getType() const
Definition fei_Param.hpp:98
bool getBoolValue() const
const void * getVoidValue() const
int getIntValue() const
int getIntParamValue(const char *name, int &paramValue) const
std::vector< const Param * > * params_
int getVoidParamValue(const char *name, const void *&paramValue) const
int getStringParamValue(const char *name, std::string &paramValue) const
int getDoubleParamValue(const char *name, double &paramValue) const
int getBoolParamValue(const char *name, bool &paramValue) const