ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DefaultHepRepAttribute.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file DefaultHepRepAttribute.h
1 // Copyright FreeHEP, 2005.
2 #ifndef CHEPREP_DEFAULTHEPREPATTRIBUTE_H
3 #define CHEPREP_DEFAULTHEPREPATTRIBUTE_H 1
4 
5 #include "cheprep/config.h"
6 
7 #include <string>
8 #include <map>
9 #include <set>
10 #include <vector>
11 
12 #include "HEPREP/HepRepAttribute.h"
13 #include "HEPREP/HepRepAttValue.h"
14 #include "HEPREP/HepRepConstants.h"
15 #include "HEPREP/HepRepWriter.h"
16 
20 namespace cheprep {
21 
23 
24  private:
25  std::map<std::string, HEPREP::HepRepAttValue*> attValues;
26 
27  public:
30 
31  std::set<HEPREP::HepRepAttValue*> getAttValuesFromNode();
32  void addAttValue(HEPREP::HepRepAttValue* hepRepAttValue);
33  void addAttValue(std::string key, char *value, int showLabel);
34  void addAttValue(std::string key, std::string value, int showLabel);
35  void addAttValue(std::string key, int value, int showLabel);
36  void addAttValue(std::string key, int64 value, int showLabel);
37  void addAttValue(std::string key, double value, int showLabel);
38  void addAttValue(std::string key, bool value, int showLabel);
39  void addAttValue(std::string key, std::vector<double> value, int showLabel);
40  void addAttValue(std::string key, double red, double green, double blue, double alpha, int showLabel);
41  HEPREP::HepRepAttValue* getAttValueFromNode(std::string lowerCaseName);
42  HEPREP::HepRepAttValue* removeAttValue(std::string key);
43 
44  HEPREP::HepRepAttValue* getAttValue(std::string name) = 0;
45 };
46 
47 } // cheprep
48 
49 
50 #endif