StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Parameters.h
1 #if !defined(PARAMETERS_H_INCLUDED_)
2 #define PARAMETERS_H_INCLUDED_
3 
4 #if _MSC_VER > 1000
5 #pragma once
6 #endif // _MSC_VER > 1000
7 
8 #include <vector>
9 using namespace std;
10 
11 #include "Sti/Base/Named.h"
12 #include "Sti/Base/Described.h"
13 
14 class Parameter;
15 
16 typedef vector<Parameter*> ParameterVector;
17 typedef ParameterVector::iterator ParameterIterator;
18 typedef ParameterVector::const_iterator ParameterConstIterator;
19 
20 class Parameters : public Named, public Described
21 {
22  public:
23  Parameters();
24  Parameters(const string & name, const string & description);
25  Parameters(const Parameters & parameter);
26  virtual ~Parameters();
27  const Parameters & operator=(const Parameters & parameter);
28  Parameter* add(Parameter * parameter);
29  Parameter * getParameter(const string name);
30  ParameterIterator begin();
31  ParameterIterator end();
32  ParameterConstIterator begin() const;
33  ParameterConstIterator end() const;
34  virtual void initialize()=0;
35  void clear();
36  bool isEnabled();
37  bool isEditable();
38  void setEnabled(bool value);
39  void setEditable(bool value);
40  protected:
41  ParameterVector parameterVector;
42  bool _enabled;
43  bool _editable;
44 };
45 
47 inline void Parameters::clear()
48 {
49  parameterVector.clear();
50 }
51 
56 inline bool Parameters::isEnabled()
57 {
58  return _enabled;
59 }
60 
66 {
67  return _editable;
68 }
69 
74 inline void Parameters::setEnabled(bool value)
75 {
76  _enabled = value;
77 }
78 
83 inline void Parameters::setEditable(bool value)
84 {
85  _editable = value;
86 }
87 
88 
89 
90 #endif // !defined(PARAMETERS_H_INCLUDED_)
void clear()
Clear/delete all parameters held by this container.
Definition: Parameters.h:47
void setEditable(bool value)
Definition: Parameters.h:83
Definition: Named.h:16
bool isEditable()
Definition: Parameters.h:65
bool isEnabled()
Definition: Parameters.h:56
void setEnabled(bool value)
Definition: Parameters.h:74