ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HepRepInstanceTree.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file HepRepInstanceTree.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_HEPREPINSTANCETREE_H
8 #define HEPREP_HEPREPINSTANCETREE_H 1
9 
10 // Copyright 2000-2005, FreeHEP.
11 
12 #include <vector>
13 
14 #include "HEPREP/HepRepTreeID.h"
15 
16 namespace HEPREP {
17 
18 class HepRepInstance;
19 class HepRepSelectFilter;
20 class HepRepTreeID;
21 class HepRepTypeTree;
22 
28 class HepRepInstanceTree : virtual public HepRepTreeID {
29 
30 public:
32  virtual ~HepRepInstanceTree() { /* nop */; }
33 
39  virtual void overlay(HepRepInstanceTree * instanceTree) = 0;
40 
46  virtual void addInstance(HepRepInstance * instance) = 0;
47 
53  virtual void removeInstance(HepRepInstance * instance) = 0;
54 
60  virtual std::vector<HepRepInstance *> getInstances() = 0;
61 
67  virtual void addInstanceTree(HepRepTreeID * instanceTree) = 0;
68 
74  virtual std::vector<HepRepTreeID *> getInstanceTreeList() = 0;
75 
81  virtual HepRepTreeID * getTypeTree() = 0;
82 
89  virtual HepRepInstanceTree * copy(HepRepTypeTree * typeTree, HepRepSelectFilter * filter = NULL) = 0;
90 }; // class
91 } // namespace HEPREP
92 #endif /* ifndef HEPREP_HEPREPINSTANCETREE_H */