X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=RAW%2FAliAltroMapping.cxx;h=749e157fe1dd6c5c15dd2d9467590707124db298;hb=d9c4cb2b7b3b9bce9049ac039e227eba386619bd;hp=eaee471126f2b49e3225ef5a9b99b5231263b56d;hpb=16e29964cd3f9eebb0ba2d3724f76e3bb66ec0b4;p=u%2Fmrichter%2FAliRoot.git diff --git a/RAW/AliAltroMapping.cxx b/RAW/AliAltroMapping.cxx index eaee471126f..749e157fe1d 100644 --- a/RAW/AliAltroMapping.cxx +++ b/RAW/AliAltroMapping.cxx @@ -21,16 +21,28 @@ #include "AliAltroMapping.h" #include "AliLog.h" #include -//#include ClassImp(AliAltroMapping) +//_____________________________________________________________________________ +AliAltroMapping::AliAltroMapping(): + fIn(NULL), + fNumberOfChannels(0), + fMaxHWAddress(0), + fMappingSize(0), + fMapping(NULL) +{ + // Default constructor +} + //_____________________________________________________________________________ AliAltroMapping::AliAltroMapping(const char *mappingFile): fIn(NULL), fNumberOfChannels(0), - fMaxHWAdress(0) + fMaxHWAddress(0), + fMappingSize(0), + fMapping(NULL) { // Constructor // Reads the mapping from an external file @@ -44,27 +56,9 @@ AliAltroMapping::AliAltroMapping(const char *mappingFile): AliAltroMapping::~AliAltroMapping() { // destructor -} + CloseMappingFile(); -//_____________________________________________________________________________ -AliAltroMapping::AliAltroMapping(const AliAltroMapping& mapping): - TObject(mapping), - fIn(mapping.fIn), - fNumberOfChannels(mapping.fNumberOfChannels), - fMaxHWAdress(mapping.fMaxHWAdress) -{ -// Copy Constructor - - Fatal("AliAltroMapping", "copy constructor not implemented"); -} - -//_____________________________________________________________________________ -AliAltroMapping& AliAltroMapping::operator = (const AliAltroMapping& /*mapping*/) -{ -//Assigment operator - - Fatal("operator =", "assignment operator not implemented"); - return *this; + if (fMapping) delete [] fMapping; } //_____________________________________________________________________________ @@ -76,14 +70,17 @@ Bool_t AliAltroMapping::OpenMappingFile(const char *mappingFile) fIn = new ifstream(mappingFile); if (!*fIn) { AliFatal(Form("Missing mapping file (%s) !",mappingFile)); + CloseMappingFile(); return kFALSE; } if (!(*fIn >> fNumberOfChannels)) { AliFatal(Form("Syntax of the mapping file is wrong (%s) !",mappingFile)); + CloseMappingFile(); return kFALSE; } - if (!(*fIn >> fMaxHWAdress)) { + if (!(*fIn >> fMaxHWAddress)) { AliFatal(Form("Syntax of the mapping file is wrong (%s) !",mappingFile)); + CloseMappingFile(); return kFALSE; } @@ -91,14 +88,13 @@ Bool_t AliAltroMapping::OpenMappingFile(const char *mappingFile) } //_____________________________________________________________________________ -Bool_t AliAltroMapping::CloseMappingFile() +void AliAltroMapping::CloseMappingFile() { // Closes the external mapping // file if (fIn) { fIn->close(); + delete fIn; fIn = NULL; } - - return kTRUE; }