Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HepRepDefinition.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 // AID-GENERATED
3 // =========================================================================
4 // This class was generated by AID - Abstract Interface Definition
5 // DO NOT MODIFY, but use the org.freehep.aid.Aid utility to regenerate it.
6 // =========================================================================
7 #ifndef HEPREP_HEPREPDEFINITION_H
8 #define HEPREP_HEPREPDEFINITION_H 1
9 
10 // Copyright 2000-2005, FreeHEP.
11 
12 #include <set>
13 #include <string>
14 
15 #include "HEPREP/HepRepAttribute.h"
16 
17 namespace HEPREP {
18 
19 class HepRepAttDef;
20 
21 /**
22  * HepRepDefinition interface.
23  *
24  * @author Mark Donszelmann
25  *
26  */
27 class HepRepDefinition : virtual public HepRepAttribute {
28 
29 public:
30  /// Destructor.
31  virtual ~HepRepDefinition() { /* nop */; }
32 
33  /**
34  * Adds an attdef.
35  *
36  * @param name name of the definition.
37  * @param desc description of the definition.
38  * @param category category of the definition.
39  * @param extra extra info of the definition.
40  */
41  virtual void addAttDef(std::string name, std::string desc, std::string category, std::string extra) = 0;
42 
43  /**
44  * Adds an attdef.
45  *
46  * @param attDef to be added.
47  */
48  virtual void addAttDef(HepRepAttDef * attDef) = 0;
49 
50  /**
51  * Return a named attribute definition searched on this node and any parent nodes.
52  *
53  * @param name of attribute definition.
54  * @return attribute definition.
55  */
56  virtual HepRepAttDef * getAttDef(std::string name) = 0;
57 
58  /**
59  * Returns a collection of all attribute definitions defined on this node.
60  *
61  * @return collection of attributes definitions.
62  */
63  virtual std::set<HepRepAttDef *> getAttDefsFromNode() = 0;
64 
65  /**
66  * Returns a named attribute definition defined on this node.
67  *
68  * @param lowerCaseName name of the attribute in lower case.
69  * @return attribute definition.
70  */
71  virtual HepRepAttDef * getAttDefFromNode(std::string lowerCaseName) = 0;
72 }; // class
73 } // namespace HEPREP
74 #endif /* ifndef HEPREP_HEPREPDEFINITION_H */
const XML_Char * name
virtual HepRepAttDef * getAttDefFromNode(std::string lowerCaseName)=0
virtual void addAttDef(std::string name, std::string desc, std::string category, std::string extra)=0
virtual HepRepAttDef * getAttDef(std::string name)=0
virtual std::set< HepRepAttDef * > getAttDefsFromNode()=0
virtual ~HepRepDefinition()
Destructor.