Base class (AliMisaligner); each detector will provide its derived class,
authorrgrosso <rgrosso@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 20 Feb 2009 14:34:24 +0000 (14:34 +0000)
committerrgrosso <rgrosso@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 20 Feb 2009 14:34:24 +0000 (14:34 +0000)
AliDETMisaligner, substituting the macros MakeDET<Zero,Res,Full>MisAlignment.C

AliZDCMisaligner and others will soon be committed and can be used as examples.

This will allow to have a common set of methods to produce alignment objects
without repeating several things as it is done presently in the detectors' macros.

New macro (MakeAlignmentObjs.C) for producing simulated alignment objects
for all detectors or a subset of them, for the three misalignment scenarios
(ideal, residual, full). When all detectors have substituted their macros
MakeDET<Zero,Res,Full>MisAlignment.C into the derived class AliDETMisAligner,
this macro will substitute the three current macros MakeAllDETs<Zero,Res,Full>MisAlignment.

STEER/AliMisAligner.cxx [new file with mode: 0644]
STEER/AliMisAligner.h [new file with mode: 0644]

diff --git a/STEER/AliMisAligner.cxx b/STEER/AliMisAligner.cxx
new file mode 100644 (file)
index 0000000..274b661
--- /dev/null
@@ -0,0 +1,11 @@
+#include "AliMisAligner.h"
+
+ClassImp(AliMisAligner)
+
+//_______________________________________________________________________________________
+AliMisAligner::AliMisAligner():
+  fMisalType("")
+{
+
+}
+
diff --git a/STEER/AliMisAligner.h b/STEER/AliMisAligner.h
new file mode 100644 (file)
index 0000000..a9eb66d
--- /dev/null
@@ -0,0 +1,38 @@
+#ifndef ALI_MISALIGNER_H
+#define ALI_MISALIGNER_H
+
+#include "TObject.h"
+#include "TString.h"
+#include "AliCDBMetaData.h"
+
+class TClonesArray;
+class AliCDBManager;
+
+// Base class for creating a TClonesArray of simulated misalignment objects
+// for a given subdetector of type ideal,residual or full
+//
+
+class AliMisAligner : public TObject {
+
+  public:
+    AliMisAligner();
+    virtual TClonesArray* MakeAlObjsArray() const =0;
+    virtual AliCDBMetaData* GetCDBMetaData() const =0;
+    void SetMisalType(const char* misalType)
+    {
+      fMisalType=misalType;
+    }
+    const char* GetMisalType() const
+    {
+      return fMisalType.Data();
+    }
+
+  protected:
+    TString fMisalType;
+
+  private:
+    ClassDef(AliMisAligner,0);
+};
+
+#endif
+