ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HepRepInstance.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file HepRepInstance.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_HEPREPINSTANCE_H
8 #define HEPREP_HEPREPINSTANCE_H 1
9 
10 // Copyright 2000-2005, FreeHEP.
11 
12 #include <vector>
13 
14 #include "HEPREP/HepRepAttribute.h"
15 
16 namespace HEPREP {
17 
18 class HepRepInstanceTree;
19 class HepRepPoint;
20 class HepRepSelectFilter;
21 class HepRepType;
22 class HepRepTypeTree;
23 
29 class HepRepInstance : virtual public HepRepAttribute {
30 
31 public:
33  virtual ~HepRepInstance() { /* nop */; }
34 
42  virtual void overlay(HepRepInstance * instance) = 0;
43 
49  virtual void addInstance(HepRepInstance * instance) = 0;
50 
56  virtual void removeInstance(HepRepInstance * instance) = 0;
57 
63  virtual std::vector<HepRepInstance *> getInstances() = 0;
64 
70  virtual HepRepType * getType() = 0;
71 
77  virtual void addPoint(HepRepPoint * point) = 0;
78 
84  virtual std::vector<HepRepPoint *> getPoints() = 0;
85 
115  virtual HepRepInstance * getSuperInstance() = 0;
116 
125  virtual HepRepInstance * copy(HepRepTypeTree * typeTree, HepRepInstance * parent, HepRepSelectFilter * filter = NULL) = 0;
126 
135  virtual HepRepInstance * copy(HepRepTypeTree * typeTree, HepRepInstanceTree * parent, HepRepSelectFilter * filter = NULL) = 0;
136 }; // class
137 } // namespace HEPREP
138 #endif /* ifndef HEPREP_HEPREPINSTANCE_H */