]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - AliGeant4/AliColourStore.h
Added read support for Altro like data.
[u/mrichter/AliRoot.git] / AliGeant4 / AliColourStore.h
... / ...
CommitLineData
1// $Id$
2// Category: visualization
3//
4// Author: I. Hrivnacova
5//
6// Class AliColourStore
7// --------------------
8// Singleton data type class - store for the predefined colours.
9
10#ifndef ALI_COLOUR_STORE_H
11#define ALI_COLOUR_STORE_H
12
13#include <G4Colour.hh>
14#include <globals.hh>
15#include <g4std/vector>
16
17#include <TColor.h>
18
19class AliColourStore
20{
21 typedef G4std::vector<TColor> ColourVector;
22 typedef ColourVector::iterator ColourIterator;
23 typedef ColourVector::const_iterator ColourConstIterator;
24
25 public:
26 // --> protected
27 // AliColourStore();
28 // AliColourStore(const AliColourStore& right);
29 virtual ~AliColourStore();
30
31 // static methods
32 static AliColourStore* Instance();
33
34 // modifiers
35 G4Colour AddColour(const G4String& name,
36 G4double red, G4double blue, G4double green);
37
38 // get methods
39 G4Colour GetColour(const G4String& name) const;
40 G4Colour GetColour(const TColor& color) const;
41 G4String GetColoursList() const;
42 G4String GetColoursListWithCommas() const;
43
44 protected:
45 AliColourStore();
46 AliColourStore(const AliColourStore& right);
47
48 // operators
49 AliColourStore& operator=(const AliColourStore& right);
50
51 private:
52 // static data members
53 static AliColourStore* fgInstance; //this instance
54
55 // data members
56 ColourVector fColours; //vector of AliColour
57};
58
59#endif //ALI_COLOUR_STORE_H