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

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

import all except CVS

File size: 3.7 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_HEPREPATTRIBUTELISTENER_H
8#define HEPREP_HEPREPATTRIBUTELISTENER_H 1
9
10// Copyright 2000-2005, FreeHEP.
11
12#include <string>
13#include <vector>
14
15namespace HEPREP {
16
17class HepRepInstance;
18
19/**
20 * HepRepAttributeListener interface. The implementor is called back for changes
21 * of attributes while using the HepRepIterator to iterate over all the HepRepInstances.
22 *
23 * All names are lowercased.
24 *
25 * @author Mark Donszelmann
26 */
27class HepRepAttributeListener {
28
29public: 
30    /// Destructor.
31    virtual ~HepRepAttributeListener() { /* nop */; }
32
33    /**
34     * Called if attribute key changes its value.
35     *
36     * @param instance instance for which this attribute is set.
37     * @param key name of the changed attribute.
38     * @param value value of the changed attribute.
39     * @param lowerCaseValue lower case value of the changed attribute.
40     * @param showLabel value of showLabel.
41     */
42    virtual void setAttribute(HepRepInstance * instance, std::string key, std::string value, std::string lowerCaseValue, int showLabel) = 0;
43
44    /**
45     * Called if attribute key changes its value.
46     *
47     * @param instance instance for which this attribute is set.
48     * @param key name of the changed attribute.
49     * @param value value of the changed attribute.
50     * @param showLabel value of showLabel.
51     */
52    virtual void setAttribute(HepRepInstance * instance, std::string key, std::vector<double> value, int showLabel) = 0;
53
54    /**
55     * Called if attribute key changes its value.
56     *
57     * @param instance instance for which this attribute is set.
58     * @param key name of the changed attribute.
59     * @param value value of the changed attribute.
60     * @param showLabel value of showLabel.
61     */
62    virtual void setAttribute(HepRepInstance * instance, std::string key, long value, int showLabel) = 0;
63
64    /**
65     * Called if attribute key changes its value.
66     *
67     * @param instance instance for which this attribute is set.
68     * @param key name of the changed attribute.
69     * @param value value of the changed attribute.
70     * @param showLabel value of showLabel.
71     */
72    virtual void setAttribute(HepRepInstance * instance, std::string key, int value, int showLabel) = 0;
73
74    /**
75     * Called if attribute key changes its value.
76     *
77     * @param instance instance for which this attribute is set.
78     * @param key name of the changed attribute.
79     * @param value value of the changed attribute.
80     * @param showLabel value of showLabel.
81     */
82    virtual void setAttribute(HepRepInstance * instance, std::string key, double value, int showLabel) = 0;
83
84    /**
85     * Called if attribute key changes its value.
86     *
87     * @param instance instance for which this attribute is set.
88     * @param key name of the changed attribute.
89     * @param value value of the changed attribute.
90     * @param showLabel value of showLabel.
91     */
92    virtual void setAttribute(HepRepInstance * instance, std::string key, bool value, int showLabel) = 0;
93
94    /**
95     * Called if attribute key is removed from the attribute set.
96     *
97     * @param instance instance for which this attribute is set.
98     * @param key name of the removed attribute.
99     */
100    virtual void removeAttribute(HepRepInstance * instance, std::string key) = 0;
101}; // class
102} // namespace HEPREP
103#endif /* ifndef HEPREP_HEPREPATTRIBUTELISTENER_H */
Note: See TracBrowser for help on using the repository browser.