- Implementing functions for the GRP preprocessor to retrieve DA output files from...
[u/mrichter/AliRoot.git] / SHUTTLE / AliShuttleLogbookEntry.cxx
index a5b049c..41d6215 100644 (file)
@@ -31,9 +31,12 @@ ClassImp(AliShuttleLogbookEntry)
 AliShuttleLogbookEntry::AliShuttleLogbookEntry() :
 TObject(),
 fRun(-1),
-fRunParameters(0)
+fRunParameters(0),
+fDATestMode(kFALSE)
 {
-  // default constructor
+       //
+       // default constructor
+       //
 
        const UInt_t nDet = AliShuttleInterface::NDetectors();
        memset(fDetectorStatus, kUnprocessed, nDet*sizeof(Status));
@@ -44,9 +47,12 @@ fRunParameters(0)
 AliShuttleLogbookEntry::AliShuttleLogbookEntry(Int_t run, Status* status) :
 TObject(),
 fRun(run),
-fRunParameters(0)
+fRunParameters(0),
+fDATestMode(kFALSE)
 {
-// default constructor
+       //
+       // default constructor
+       //
 
        const UInt_t nDet = AliShuttleInterface::NDetectors();
        memset(fDetectorStatus, kUnprocessed, nDet*sizeof(Status));
@@ -56,17 +62,22 @@ fRunParameters(0)
 
 //______________________________________________________________________________________________
 AliShuttleLogbookEntry::~AliShuttleLogbookEntry() {
-// destructor
-
+       //
+       // destructor
+       //
+       fRunParameters.DeleteAll();
 }
 
 //______________________________________________________________________________________________
 AliShuttleLogbookEntry::AliShuttleLogbookEntry(const AliShuttleLogbookEntry &c) :
 TObject(),
 fRun(c.fRun),
-fRunParameters(0)
+fRunParameters(0),
+fDATestMode(c.fDATestMode)
 {
-  // copy constructor
+       //
+       // copy constructor
+       //
 
        SetDetectorStatus(c.GetDetectorStatus());
        fRunParameters.SetOwner(1);
@@ -77,13 +88,14 @@ fRunParameters(0)
                TObjString* aValue= dynamic_cast<TObjString*>(aPair->Value());
                fRunParameters.Add(aKey->Clone(), aValue->Clone());
        }
-
 }
 
 //______________________________________________________________________________________________
 AliShuttleLogbookEntry &AliShuttleLogbookEntry::operator=(const AliShuttleLogbookEntry &c)
 {
-  // assigment operator
+       //
+       // assigment operator
+       //
 
        if (this != &c)
                ((AliShuttleLogbookEntry &) c).Copy(*this);
@@ -93,7 +105,9 @@ AliShuttleLogbookEntry &AliShuttleLogbookEntry::operator=(const AliShuttleLogboo
 //______________________________________________________________________________________________
 void AliShuttleLogbookEntry::Copy(TObject& c) const
 {
-  // copy function
+       //
+       // copy function
+       //
 
        AliShuttleLogbookEntry& target = (AliShuttleLogbookEntry &) c;
 
@@ -108,20 +122,15 @@ void AliShuttleLogbookEntry::Copy(TObject& c) const
        }
 
        target.SetDetectorStatus(GetDetectorStatus());
-}
-
-//______________________________________________________________________________________________
-AliShuttleLogbookEntry::Status AliShuttleLogbookEntry::GetDetectorStatus(const char* detName) const
-{
-// get detector status from detector code
-
-       return GetDetectorStatus(AliShuttleInterface::GetDetPos(detName));
+       target.fDATestMode = fDATestMode;
 }
 
 //______________________________________________________________________________________________
 AliShuttleLogbookEntry::Status AliShuttleLogbookEntry::GetDetectorStatus(Int_t detPos) const
 {
-// get detector status from detector code
+       //
+       // get detector status from detector code
+       //
 
        if(detPos < 0 || detPos >= (Int_t) AliShuttleInterface::NDetectors()) {
                AliError(Form("Invalid parameter: %d", detPos));
@@ -133,7 +142,9 @@ AliShuttleLogbookEntry::Status AliShuttleLogbookEntry::GetDetectorStatus(Int_t d
 //______________________________________________________________________________________________
 void AliShuttleLogbookEntry::SetDetectorStatus(const char* detName, Status status)
 {
-// set detector status from detector code
+       //
+       // set detector status from detector code
+       //
 
        Int_t detPos = AliShuttleInterface::GetDetPos(detName);
        if(detPos<0) return;
@@ -143,7 +154,9 @@ void AliShuttleLogbookEntry::SetDetectorStatus(const char* detName, Status statu
 //______________________________________________________________________________________________
 void AliShuttleLogbookEntry::SetDetectorStatus(const char* detName, const char* statusName)
 {
-// set detector status from detector code
+       //
+       // set detector status from detector code
+       //
 
        Int_t detPos = AliShuttleInterface::GetDetPos(detName);
        if(detPos<0) return;
@@ -153,7 +166,9 @@ void AliShuttleLogbookEntry::SetDetectorStatus(const char* detName, const char*
 //______________________________________________________________________________________________
 void AliShuttleLogbookEntry::SetDetectorStatus(Status* status)
 {
-// set detector status from detector code
+       //
+       // set detector status from detector code
+       //
 
        for(UInt_t i=0; i < AliShuttleInterface::NDetectors(); i++){
                fDetectorStatus[i] = status[i];
@@ -163,7 +178,9 @@ void AliShuttleLogbookEntry::SetDetectorStatus(Status* status)
 //______________________________________________________________________________________________
 void AliShuttleLogbookEntry::SetDetectorStatus(UInt_t detPos, Status status)
 {
-// set detector status from detector code
+       //
+       // set detector status from detector code
+       //
 
        if(detPos >= AliShuttleInterface::NDetectors()) {
                AliError(Form("Shuttle has only %d subdetectors!", AliShuttleInterface::NDetectors()));
@@ -175,7 +192,9 @@ void AliShuttleLogbookEntry::SetDetectorStatus(UInt_t detPos, Status status)
 //______________________________________________________________________________________________
 void AliShuttleLogbookEntry::SetDetectorStatus(UInt_t detPos, const char* statusName)
 {
-// set detector status from detector code
+       //
+       // set detector status from detector code
+       //
 
        if(detPos >= AliShuttleInterface::NDetectors()) {
                AliError(Form("Shuttle has only %d subdetectors!", AliShuttleInterface::NDetectors()));
@@ -197,7 +216,9 @@ void AliShuttleLogbookEntry::SetDetectorStatus(UInt_t detPos, const char* status
 
 //______________________________________________________________________________________________
 Bool_t AliShuttleLogbookEntry::IsDone() const{
-// return TRUE if all subdetectors are in status DONE, FAILED or INACTIVE
+       //
+       // return TRUE if all subdetectors are in status DONE, FAILED or INACTIVE
+       //
 
        for(UInt_t i=0; i < AliShuttleInterface::NDetectors(); i++){
                if(fDetectorStatus[i] == kUnprocessed) return kFALSE;
@@ -208,7 +229,9 @@ Bool_t AliShuttleLogbookEntry::IsDone() const{
 //______________________________________________________________________________________________
 const char* AliShuttleLogbookEntry::GetDetectorStatusName(Status status)
 {
-  // returns a name (string) of the detector status
+       //
+       // returns a name (string) of the detector status
+       //
 
       switch (status){
            case kUnprocessed: return "UNPROCESSED";
@@ -223,7 +246,9 @@ const char* AliShuttleLogbookEntry::GetDetectorStatusName(Status status)
 //______________________________________________________________________________________________
 void AliShuttleLogbookEntry::Print(Option_t* option) const
 {
-  // print current shuttle logbook entry
+       //
+       // print current shuttle logbook entry
+       //
 
        TString message = "\n*** Run parameters ***\n";
        TTimeStamp startTimeStamp(GetStartTime());
@@ -233,9 +258,11 @@ void AliShuttleLogbookEntry::Print(Option_t* option) const
        message += Form("\tFinished \t%s\n", endTimeStamp.AsString("s"));
        message += "\n*** Detector status ***\n";
 
-       for(UInt_t i=0; i < AliShuttleInterface::NDetectors(); i++)
-               message += Form("\t%2d - %s: %s\n", i, AliShuttleInterface::GetDetName(i),
+       for (UInt_t i=0; i < AliShuttleInterface::NDetectors(); i++)
+       {
+               message += Form("\t%2d - %s: %s \n", i, AliShuttleInterface::GetDetName(i),
                                        GetDetectorStatusName(fDetectorStatus[i]));
+       }
 
        AliInfo(Form("option: %s",option));
        TString optionStr(option);
@@ -253,16 +280,19 @@ void AliShuttleLogbookEntry::Print(Option_t* option) const
                                if(keyStr.Length()<30) message.Append(' ', 30-keyStr.Length());
                                message += Form("%s\n", aValue->GetName());
                        } else {
-                               message += "\tlog                            ...\n";
+                               TString logStr(aValue->GetName(), 100);
+                               message += Form("\tlog (first 100 chars)          %s \n",logStr.Data());
                        }
                }
        }
 
-       AliInfo(Form("%s",message.Data()));
+       AliInfo(message.Data());
 }
 //______________________________________________________________________________________________
 void AliShuttleLogbookEntry::SetRunParameter(const char* key, const char* value){
-// set a run parameter (read from the DAQ logbook)
+       //
+       // set a run parameter (read from the DAQ logbook)
+       //
 
        TObjString* keyObj = new TObjString(key);
        if (fRunParameters.Contains(key)) {
@@ -275,7 +305,9 @@ void AliShuttleLogbookEntry::SetRunParameter(const char* key, const char* value)
 }
 //______________________________________________________________________________________________
 const char* AliShuttleLogbookEntry::GetRunParameter(const char* key) const{
-// get a run parameter
+       //
+       // get a run parameter
+       //
 
        TObjString* value = dynamic_cast<TObjString*> (fRunParameters.GetValue(key));
        if(!value) {