source: trunk/source/visualization/HepRep/include/HEPREP/HepRepTypeTree.h @ 834

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

import all except CVS

File size: 1.6 KB
Line 
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_HEPREPTYPETREE_H
8#define HEPREP_HEPREPTYPETREE_H 1
9
10// Copyright 2000-2005, FreeHEP.
11
12#include <string>
13#include <vector>
14
15#include "HEPREP/HepRepTreeID.h"
16
17namespace HEPREP {
18
19class HepRepType;
20
21/**
22 * HepRepTypeTree interface.
23 *
24 * @author Mark Donszelmann
25 */
26class HepRepTypeTree : virtual public HepRepTreeID {
27
28public: 
29    /// Destructor.
30    virtual ~HepRepTypeTree() { /* nop */; }
31
32    /**
33     * Adds a type to this typetree.
34     *
35     * @param type to be added.
36     */
37    virtual void addType(HepRepType * type) = 0;
38
39    /**
40     * Returns a collection of all types in this tree.
41     *
42     * @return collection of HepRepTypes.
43     */
44    virtual std::vector<HepRepType *>  getTypeList() = 0;
45
46    /**
47     * Returns type
48     */
49    virtual HepRepType * getType(std::string fullName) = 0;
50
51    /**
52     * Returns a deep copy of this typetree.
53     *
54     * @return copy of this typetree.
55     */
56    virtual HepRepTypeTree * copy() = 0;
57
58//         
59// To be enable in g++ 3.0
60//    using HepRep::HepRepTreeID::copy;
61// To be disabled in g++ 3.0
62//    HepRepTreeID * copy();
63//     
64}; // class
65} // namespace HEPREP
66#endif /* ifndef HEPREP_HEPREPTYPETREE_H */
Note: See TracBrowser for help on using the repository browser.