ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HepRep.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file HepRep.h
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_HEPREP_H
8 #define HEPREP_HEPREP_H 1
9 
10 // Copyright 2000-2005, FreeHEP.
11 
12 #include <string>
13 #include <vector>
14 
15 // Include all other HepRep header files here for convenience
16 #include "HEPREP/HasHepRep.h"
17 #include "HEPREP/HepRepAction.h"
18 #include "HEPREP/HepRepAttDef.h"
19 #include "HEPREP/HepRepAttribute.h"
21 #include "HEPREP/HepRepAttValue.h"
22 #include "HEPREP/HepRepConstants.h"
24 #include "HEPREP/HepRepFactory.h"
26 #include "HEPREP/HepRepInstance.h"
28 #include "HEPREP/HepRepIterator.h"
29 #include "HEPREP/HepRepPoint.h"
31 #include "HEPREP/HepRepTreeID.h"
32 #include "HEPREP/HepRepType.h"
33 #include "HEPREP/HepRepTypeTree.h"
34 #include "HEPREP/HepRepWriter.h"
35 
36 namespace HEPREP {
37 
38 class HepRepAction;
39 class HepRepInstanceTree;
40 class HepRepSelectFilter;
41 class HepRepTypeTree;
42 
52 class HepRep {
53 
54 public:
56  virtual ~HepRep() { /* nop */; }
57 
64  virtual void addLayer(std::string layer) = 0;
65 
71  virtual std::vector<std::string> getLayerOrder() = 0;
72 
78  virtual void addTypeTree(HepRepTypeTree * typeTree) = 0;
79 
85  virtual void removeTypeTree(HepRepTypeTree * typeTree) = 0;
86 
92  virtual std::vector<HepRepTypeTree *> getTypeTreeList() = 0;
93 
101  virtual HepRepTypeTree * getTypeTree(std::string name, std::string version) = 0;
102 
110 // HepRepType* getType(String name);
116  virtual void addInstanceTree(HepRepInstanceTree * instanceTree) = 0;
117 
123  virtual void overlayInstanceTree(HepRepInstanceTree * instanceTree) = 0;
124 
130  virtual void removeInstanceTree(HepRepInstanceTree * instanceTree) = 0;
131 
137  virtual std::vector<HepRepInstanceTree *> getInstanceTreeList() = 0;
138 
150  virtual HepRepInstanceTree * getInstanceTreeTop(std::string name, std::string version) = 0;
151 
162  virtual HepRepInstanceTree * getInstances(std::string name, std::string version, std::vector<std::string> typeNames) = 0;
163 
190  virtual HepRepInstanceTree * getInstancesAfterAction(std::string name, std::string version, std::vector<std::string> typeNames, std::vector<HepRepAction *> actions, bool getPoints, bool getDrawAtts, bool getNonDrawAtts, std::vector<std::string> invertAtts) = 0;
191 
198  virtual std::string checkForException() = 0;
199 
207  virtual HepRep * copy(HepRepSelectFilter * filter = NULL) = 0;
208 }; // class
209 } // namespace HEPREP
210 #endif /* ifndef HEPREP_HEPREP_H */