New class which will contain the raw-data event tag information
authorcvetan <cvetan@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 18 Dec 2006 15:54:02 +0000 (15:54 +0000)
committercvetan <cvetan@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 18 Dec 2006 15:54:02 +0000 (15:54 +0000)
RAW/AliRawEventTag.cxx [new file with mode: 0644]
RAW/AliRawEventTag.h [new file with mode: 0644]
RAW/RAWbaseLinkDef.h
RAW/libRAWDatabase.pkg

diff --git a/RAW/AliRawEventTag.cxx b/RAW/AliRawEventTag.cxx
new file mode 100644 (file)
index 0000000..878a7fe
--- /dev/null
@@ -0,0 +1,61 @@
+/**************************************************************************
+ * Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
+ *                                                                        *
+ * Author: The ALICE Off-line Project.                                    *
+ * Contributors are mentioned in the code where appropriate.              *
+ *                                                                        *
+ * Permission to use, copy, modify and distribute this software and its   *
+ * documentation strictly for non-commercial purposes is hereby granted   *
+ * without fee, provided that the above copyright notice appears in all   *
+ * copies and that both the copyright notice and this permission notice   *
+ * appear in the supporting documentation. The authors make no claims     *
+ * about the suitability of this software for any purpose. It is          *
+ * provided "as is" without express or implied warranty.                  *
+ **************************************************************************/
+
+//////////////////////////////////////////////////////////////////////////////
+//                                                                          //
+// The AliRawEventTag class handles the raw-data event-oriented tag         //
+// information. One object for each raw-data event is stored in a ROOT      //
+// tree inside the file controled by AliTagDB class.                        //
+// For the moment the tag information includes the raw-data event header +  //
+// the raw-data file GUID and the event index.                              //
+//                                                                          //
+//////////////////////////////////////////////////////////////////////////////
+
+#include "AliRawEventTag.h"
+#include "AliRawEventHeaderBase.h"
+
+ClassImp(AliRawEventTag)
+
+//______________________________________________________________________________
+AliRawEventTag::AliRawEventTag() :
+  fHeader(NULL),
+  fGUID(""),
+  fEvent(-1)
+{
+  // Default constructor
+}
+
+//___________________________________________________________________________
+AliRawEventTag::AliRawEventTag(const AliRawEventTag & tag) :
+  TObject(tag),
+  fHeader(tag.fHeader),
+  fGUID(tag.fGUID),
+  fEvent(tag.fEvent)
+{
+  // copy constructor
+}
+
+//___________________________________________________________________________
+AliRawEventTag & AliRawEventTag::operator=(const AliRawEventTag &tag) {
+  // assignment operator
+  if (this != &tag) {
+    TObject::operator=(tag);
+
+    SetHeader(tag.GetHeader());
+    SetGUID(tag.GetGUID());
+    SetEventNumber(tag.GetEventNumber());
+  }
+  return *this;
+}
diff --git a/RAW/AliRawEventTag.h b/RAW/AliRawEventTag.h
new file mode 100644 (file)
index 0000000..555afe4
--- /dev/null
@@ -0,0 +1,49 @@
+#ifndef ALIRAWEVENTTAG_H
+#define ALIRAWEVENTTAG_H
+
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
+
+//////////////////////////////////////////////////////////////////////////////
+//                                                                          //
+// The AliRawEventTag class handles the raw-data event-oriented tag         //
+// information. One object for each raw-data event is stored in a ROOT      //
+// tree inside the file controled by AliTagDB class.                        //
+// For the moment the tag information includes the raw-data event header +  //
+// the raw-data file GUID and the event index.                              //
+//                                                                          //
+//////////////////////////////////////////////////////////////////////////////
+
+#include <TObject.h>
+#include <TString.h>
+
+class AliRawEventHeaderBase;
+
+class AliRawEventTag: public TObject {
+ public:
+
+  AliRawEventTag();
+  virtual ~AliRawEventTag() {};
+
+  void             SetHeader(AliRawEventHeaderBase *header) { fHeader = header; }
+  void             SetGUID(const char *guid) { fGUID = guid; }
+  void             SetEventNumber(Int_t event) { fEvent = event; }
+
+  
+  AliRawEventHeaderBase *GetHeader() const { return fHeader; }
+  const char *     GetGUID() const { return fGUID.Data(); }
+  Int_t            GetEventNumber() const { return fEvent; }
+
+ private:
+
+   AliRawEventTag(const AliRawEventTag& tag);
+   AliRawEventTag& operator = (const AliRawEventTag& tag);
+
+   AliRawEventHeaderBase *fHeader;    // raw data event header
+   TString                fGUID;      // GUID of the raw data file
+   Int_t                  fEvent;     // raw data event number inside the file
+
+   ClassDef(AliRawEventTag,1)  // Raw data event tag
+};
+
+#endif
index 911f35c..a20d511 100644 (file)
@@ -11,6 +11,7 @@
 #pragma link C++ class AliRawEquipment;
 #pragma link C++ class AliRawData;
 #pragma link C++ class AliStats;
+#pragma link C++ class AliRawEventTag;
 #pragma link C++ class AliAltroMapping+;
 #pragma link C++ class AliCaloAltroMapping+;
 #pragma link C++ class AliDAQ+;
index f31ccda..d3acf3f 100644 (file)
@@ -2,7 +2,7 @@
 
 SRCS:=  AliRawEventHeaderBase.cxx AliRawEquipmentHeader.cxx \
        AliRawData.cxx AliRawEquipment.cxx AliRawEvent.cxx \
-       AliStats.cxx \
+       AliStats.cxx AliRawEventTag.cxx \
        AliAltroMapping.cxx AliCaloAltroMapping.cxx \
        AliDAQ.cxx