source: trunk/source/visualization/HepRep/include/cheprep/DefaultHepRepInstanceTree.h @ 1202

Last change on this file since 1202 was 834, checked in by garnier, 16 years ago

import all except CVS

  • Property svn:executable set to *
File size: 1.6 KB
Line 
1// Copyright FreeHEP, 2005.
2#ifndef CHEPREP_DEFAULTHEPREPINSTANCETREE_H
3#define CHEPREP_DEFAULTHEPREPINSTANCETREE_H 1
4
5#include "cheprep/config.h"
6
7#include <string>
8#include <vector>
9#include <set>
10
11#include "HEPREP/HepRep.h"
12#include "HEPREP/HepRepSelectFilter.h"
13#include "HEPREP/HepRepInstanceTree.h"
14#include "HEPREP/HepRepInstance.h"
15#include "HEPREP/HepRepWriter.h"
16#include "HEPREP/HepRepTreeID.h"
17
18#include "DefaultHepRepTreeID.h"
19
20/**
21 * @author Mark Donszelmann
22 * @version $Id: DefaultHepRepInstanceTree.h,v 1.3 2005/06/02 21:28:45 duns Exp $
23 */
24namespace cheprep {
25
26class DefaultHepRepInstanceTree : public DefaultHepRepTreeID, public virtual HEPREP::HepRepInstanceTree {
27
28    private:
29        HEPREP::HepRepTreeID* typeTree;
30        std::vector<HEPREP::HepRepInstance*> instances;
31        std::vector<HEPREP::HepRepTreeID*> instanceTrees;
32
33    public:
34        DefaultHepRepInstanceTree(std::string name, std::string version, HEPREP::HepRepTreeID* typeTree);
35        ~DefaultHepRepInstanceTree();
36
37        void overlay(HEPREP::HepRepInstanceTree * instanceTree);
38        HEPREP::HepRepInstanceTree* copy(HEPREP::HepRepTypeTree* typeTree, HEPREP::HepRepSelectFilter* filter);
39        void addInstance(HEPREP::HepRepInstance* instance);
40        void removeInstance(HEPREP::HepRepInstance* instance);
41        std::vector<HEPREP::HepRepInstance*> getInstances();
42        void addInstanceTree(HEPREP::HepRepTreeID* treeID);
43        HEPREP::HepRepTreeID* getTypeTree();
44        std::vector<HEPREP::HepRepTreeID*> getInstanceTreeList();
45};
46
47} // cheprep
48
49
50#endif
Note: See TracBrowser for help on using the repository browser.