// $Id$ // Category: visualization // // See the class description in the header file. #include "AliColourStore.h" #include "AliColour.h" #include "AliGlobals.h" #include // static data members AliColourStore* AliColourStore::fgInstance = 0; // lifecycle AliColourStore::AliColourStore() { // fColours.insert(AliColour("White", 1.0, 1.0, 1.0)); fColours.insert(AliColour("Black", 0.0, 0.0, 0.0)); fColours.insert(AliColour("Red", 1.0, 0.0, 0.0)); fColours.insert(AliColour("RoseDark", 1.0, 0.0, 0.5)); fColours.insert(AliColour("Green", 0.0, 1.0, 0.0)); fColours.insert(AliColour("Green2", 0.0, 1.0, 0.5)); fColours.insert(AliColour("GreenClair",0.5, 1.0, 0.0)); fColours.insert(AliColour("Yellow", 1.0, 1.0, 0.0)); fColours.insert(AliColour("BlueDark", 0.0, 0.0, 1.0)); fColours.insert(AliColour("BlueClair", 0.0, 1.0, 1.0)); fColours.insert(AliColour("BlueClair2",0.0, 0.5, 1.0)); fColours.insert(AliColour("Magenta", 1.0, 0.0, 1.0)); fColours.insert(AliColour("Magenta2", 0.5, 0.0, 1.0)); fColours.insert(AliColour("BrownClair",1.0, 0.5, 0.0)); fColours.insert(AliColour("Gray", 0.3, 0.3, 0.3)); fColours.insert(AliColour("GrayClair", 0.6, 0.6, 0.6)); } AliColourStore::AliColourStore(const AliColourStore& right) { // AliGlobals::Exception( "Attempt to copy AliColourStore singleton."); } AliColourStore::~AliColourStore() { // } // operators AliColourStore& AliColourStore::operator=(const AliColourStore& right) { // check assignement to self if (this == &right) return *this; AliGlobals::Exception( "Attempt to assign AliColourStore singleton."); return *this; } // static methods AliColourStore* AliColourStore::Instance() { // Returns the singleton instance. // Creates the instance if it does not exist. // --- if (fgInstance == 0 ) { fgInstance = new AliColourStore(); } return fgInstance; } // public methods G4Colour AliColourStore::GetColour(G4String name) const { // Retrieves the colour by name. // --- G4int nofCol = fColours.entries(); for (G4int i=0; i