authoragrigora <>
Wed, 26 Nov 2014 12:37:49 +0000 (13:37 +0100)
committeragrigora <>
Mon, 15 Dec 2014 12:52:02 +0000 (13:52 +0100)
32 files changed:
TPC/DA/CMakeLists.txt [new file with mode: 0644]
TPC/DA/TPCCEda.cxx [moved from TPC/TPCCEda.cxx with 100% similarity]
TPC/DA/TPCCEnewda.cxx [moved from TPC/TPCCEnewda.cxx with 100% similarity]
TPC/DA/TPCPEDESTALda.cxx [moved from TPC/TPCPEDESTALda.cxx with 100% similarity]
TPC/DA/TPCPULSERda.cxx [moved from TPC/TPCPULSERda.cxx with 100% similarity]
TPC/DA/TPCQAda.cxx [moved from TPC/TPCQAda.cxx with 100% similarity]
TPC/DA/TPCRAWda.cxx [moved from TPC/TPCRAWda.cxx with 100% similarity]
TPC/TPCbase/AliClusters.cxx [moved from TPC/TPCrec/AliClusters.cxx with 100% similarity]
TPC/TPCbase/AliClusters.h [moved from TPC/TPCrec/AliClusters.h with 100% similarity]
TPC/TPCbase/AliComplexCluster.cxx [moved from TPC/TPCrec/AliComplexCluster.cxx with 100% similarity]
TPC/TPCbase/AliComplexCluster.h [moved from TPC/TPCrec/AliComplexCluster.h with 100% similarity]
TPC/TPCbase/AliTPCClusterParam.cxx [moved from TPC/TPCrec/AliTPCClusterParam.cxx with 100% similarity]
TPC/TPCbase/AliTPCClusterParam.h [moved from TPC/TPCrec/AliTPCClusterParam.h with 100% similarity]
TPC/TPCbase/AliTPCClustersRow.cxx [moved from TPC/TPCrec/AliTPCClustersRow.cxx with 100% similarity]
TPC/TPCbase/AliTPCClustersRow.h [moved from TPC/TPCrec/AliTPCClustersRow.h with 100% similarity]
TPC/TPCbase/AliTPCQADataMakerRec.cxx [moved from TPC/TPCrec/AliTPCQADataMakerRec.cxx with 100% similarity]
TPC/TPCbase/AliTPCQADataMakerRec.h [moved from TPC/TPCrec/AliTPCQADataMakerRec.h with 100% similarity]
TPC/TPCbase/AliTPCRecoParam.cxx [moved from TPC/TPCrec/AliTPCRecoParam.cxx with 100% similarity]
TPC/TPCbase/AliTPCRecoParam.h [moved from TPC/TPCrec/AliTPCRecoParam.h with 100% similarity]
TPC/TPCbase/AliTPCclusterInfo.cxx [moved from TPC/TPCrec/AliTPCclusterInfo.cxx with 100% similarity]
TPC/TPCbase/AliTPCclusterInfo.h [moved from TPC/TPCrec/AliTPCclusterInfo.h with 100% similarity]
TPC/TPCbase/AliTPCclusterMI.cxx [moved from TPC/TPCrec/AliTPCclusterMI.cxx with 100% similarity]
TPC/TPCbase/AliTPCclusterMI.h [moved from TPC/TPCrec/AliTPCclusterMI.h with 100% similarity]

index 96776d4..4381453 100644 (file)
@@ -21,6 +21,10 @@ add_subdirectory(TPCsim)
+    add_subdirectory(DA)
 # Installing the mapping
diff --git a/TPC/DA/CMakeLists.txt b/TPC/DA/CMakeLists.txt
new file mode 100644 (file)
index 0000000..604394f
--- /dev/null
@@ -0,0 +1,87 @@
+# **************************************************************************
+# * Copyright(c) 1998-2014, 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.                  *
+# **************************************************************************
+# Module include folder
+# Additional include folders in alphabetical order
+                    ${AliRoot_SOURCE_DIR}/RAW/RAWDatarec
+                    ${AliRoot_SOURCE_DIR}/STEER/STEERBase
+                    ${AliRoot_SOURCE_DIR}/TPC/TPCbase
+                   )
+# DIM
+#daqDA flags
+# AMORE definitions
+# Generating the DA executable
+add_executable(TPCCEda TPCCEda.cxx) #1
+add_executable(TPCCEnewda TPCCEnewda.cxx) #2
+add_executable(TPCPEDESTALda TPCPEDESTALda.cxx) #3
+add_executable(TPCPULSERda TPCPULSERda.cxx) #4
+add_executable(TPCQAda TPCQAda.cxx) #5
+add_executable(TPCRAWda TPCRAWda.cxx) #6
+target_link_libraries(TPCCEda RAWDatarec-static STEERBase-static TPCbase-static ${AMORE_AUXLIBS} daqDA ${DATE_MONLIBRARIES} ${DATE_RCPROXYLIBRARIES} RootExtra Root) # 1
+target_link_libraries(TPCCEnewda RAWDatarec-static STEERBase-static TPCbase-static ${AMORE_AUXLIBS} daqDA ${DATE_MONLIBRARIES} ${DATE_RCPROXYLIBRARIES} Root RootExtra) # 2
+target_link_libraries(TPCPEDESTALda RAWDatarec-static STEERBase-static TPCbase-static ${AMORE_AUXLIBS} daqDA ${DATE_MONLIBRARIES} ${DATE_RCPROXYLIBRARIES} Root RootExtra) # 3
+target_link_libraries(TPCPULSERda RAWDatarec-static STEERBase-static TPCbase-static ${AMORE_AUXLIBS} daqDA ${DATE_MONLIBRARIES} ${DATE_RCPROXYLIBRARIES} Root RootExtra) # 4
+target_link_libraries(TPCQAda RAWDatarec-static STEERBase-static TPCbase-static ${AMORE_AUXLIBS} daqDA ${DATE_MONLIBRARIES} ${DATE_RCPROXYLIBRARIES} Root RootExtra) # 5
+target_link_libraries(TPCRAWda RAWDatarec-static STEERBase-static TPCbase-static ${AMORE_AUXLIBS} daqDA ${DATE_MONLIBRARIES} ${DATE_RCPROXYLIBRARIES} Root RootExtra) # 6
+# different flags
+set_target_properties(TPCCEda PROPERTIES LINK_FLAGS "${MODULE_LINK_FLAGS}") # 1
+set_target_properties(TPCCEnewda PROPERTIES LINK_FLAGS "${MODULE_LINK_FLAGS}") # 2
+set_target_properties(TPCQAda PROPERTIES LINK_FLAGS "${MODULE_LINK_FLAGS}") # 5
+set_target_properties(TPCRAWda PROPERTIES LINK_FLAGS "${MODULE_LINK_FLAGS}") # 6
+# Installation
+                TPCCEda
+                TPCCEnewda
+                TPCPEDESTALda
+                TPCPULSERda
+                TPCQAda
+                TPCRAWda
\ No newline at end of file
similarity index 100%
rename from TPC/TPCCEda.cxx
rename to TPC/DA/TPCCEda.cxx
similarity index 100%
rename from TPC/TPCCEnewda.cxx
rename to TPC/DA/TPCCEnewda.cxx
similarity index 100%
rename from TPC/TPCPULSERda.cxx
rename to TPC/DA/TPCPULSERda.cxx
similarity index 100%
rename from TPC/TPCQAda.cxx
rename to TPC/DA/TPCQAda.cxx
similarity index 100%
rename from TPC/TPCRAWda.cxx
rename to TPC/DA/TPCRAWda.cxx
index fc7d120..de35821 100644 (file)
 #include "AliTPCcalibDB.h"
 #include "AliTPCExB.h"
-#include "AliTPCRecoParam.h"
+//#include "AliTPCRecoParam.h"
 #include "TLinearFitter.h"
 #include <AliSysInfo.h>
index 5a3f92f..05319f5 100644 (file)
@@ -28,12 +28,13 @@ include_directories(${ROOT_INCLUDE_DIRS}
-                    ${AliRoot_SOURCE_DIR}/TPC/TPCrec
 # Sources in alphabetical order
+    AliClusters.cxx
+    AliComplexCluster.cxx
@@ -57,6 +58,10 @@ set(SRCS
+    AliTPCclusterInfo.cxx
+    AliTPCclusterMI.cxx
+    AliTPCClusterParam.cxx
+    AliTPCClustersRow.cxx
@@ -85,7 +90,9 @@ set(SRCS
+    AliTPCQADataMakerRec.cxx
+    AliTPCRecoParam.cxx
@@ -107,18 +114,28 @@ string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
 get_directory_property(incdirs INCLUDE_DIRECTORIES)
 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
+set(ROOT_DEPENDENCIES Core EG GenVector Geom Gpad Graf Gui Hist MathCore Matrix Minuit Physics Proof RIO Spectrum Tree)
 # Generate the ROOT map
 # Dependecies
-set(LIBDEPS STEERBase STEER CDB ESD RAWDatabase RAWDatarec Core EG GenVector Geom Gpad Graf Gui Hist MathCore Matrix Minuit Physics Proof RIO Spectrum Tree)
 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
+# Create an object to be reused in case of static libraries 
+# Otherwise the sources will be compiled twice
+add_library(${MODULE}-object OBJECT ${SRCS} G__${MODULE}.cxx)
+# Add a library to the project using the object
+add_library(${MODULE} SHARED $<TARGET_OBJECTS:TPCbase-object>)
+# Linking
-# Add a library to the project using the specified source files
-add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
-target_link_libraries(${MODULE} STEERBase STEER CDB ESD RAWDatabase RAWDatarec Core EG GenVector Geom Gpad Graf Gui Hist MathCore Matrix Minuit Physics Proof RIO Spectrum Tree)
+# Public include folders that will be propagated to the dependecies
+target_include_directories(${MODULE} PUBLIC ${incdirs})
 # Additional compilation flags
-set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
+set_target_properties(${MODULE}-object PROPERTIES COMPILE_FLAGS "-O -g")
 # System dependent: Modify the way the library is build
@@ -130,4 +147,24 @@ install(TARGETS ${MODULE}
-install(FILES ${HDRS} DESTINATION include)
\ No newline at end of file
+install(FILES ${HDRS} DESTINATION include)
+# Static version if DA enabled
+    add_library(${MODULE}-static STATIC $<TARGET_OBJECTS:TPCbase-object>)
+    set_target_properties(${MODULE}-static PROPERTIES OUTPUT_NAME ${MODULE})
+    # list of shared dependencies / the name of the variable containing the list of static ones
+    generate_static_dependencies("${ALIROOT_DEPENDENCIES}" "STATIC_ALIROOT_DEPENDENCIES")
+    target_link_libraries(${MODULE}-static ${STATIC_ALIROOT_DEPENDENCIES} Root RootExtra)
+    # Public include folders that will be propagated to the dependecies
+    target_include_directories(${MODULE}-static PUBLIC ${incdirs})
+    set_target_properties(${MODULE}-static PROPERTIES LINK_FLAGS "-Wl,--whole-archive")
+    # Installation
+    install(TARGETS ${MODULE}-static
+            ARCHIVE DESTINATION lib
+            LIBRARY DESTINATION lib)
index 5b2046a..614f783 100644 (file)
 #pragma link C++ class AliTPCExBEffectiveSector+;      // sectorwise above
                                                        // --- still used in CalibMacros --- move to attic if removed there
+// Solving the circular rependecies
+#pragma link C++ class AliTPCClusterParam+;   // Cluster parametrization - Moved from TPCrec
+#pragma link C++ class AliTPCQADataMakerRec+; // Offline QA - Moved from TPCrec
+#pragma link C++ class AliTPCRecoParam+;      // Config parameters for reconstruction - moved from TPCrec
+#pragma link C++ class AliTPCClustersRow+;    // TPC Container array of "cluster" inside 1 padrow - moved from TPCrec
+#pragma link C++ class AliTPCclusterMI+;      // Derived from Cluster (shape in addition) - moved from TPCrec
+                                              // --- ask Peter what can happen if renamed (add some pragma !??!)
+#pragma link C++ class AliTPCclusterInfo+;    // additional info attach to cluster (add digit map) - moved from TPCrec
+                                              // currently not used by default
+#pragma link C++ class AliClusters+;          // Generic container for clusters derived from segmentID - all clusters - moved from TPCrec
+                                              //   contains 1 AliTPCClustersRow per segment (1 segment = 1 padrow)
+#pragma link C++ class AliComplexCluster+;    // Used to store additional cluster and tracklet information along track - moved from TPCrec
+                                              // Following classes are derived
+                                              // --- Documentation to be added - classes to be cleaned
+                                              // --- Marian to investigate
+#pragma link C++ class AliTPCExactPoint+;     // defined in AliComplexCluster.h -- moved from TPCrec
+#pragma link C++ class AliTPCClusterPoint+;   // defined in AliComplexCluster.h - moved from TPCrec
+#pragma link C++ class AliTPCTrackerPoint+;   // defined in AliComplexCluster.h - moved from TPCrec
+#pragma link C++ class AliTPCTrackPoint+;     // defined in AliComplexCluster.h - moved from TPCrec
+#pragma link C++ class AliTPCTrackPoint2+;    // defined in AliComplexCluster.h - moved from TPCrec
index e8800f9..25c72ec 100644 (file)
@@ -207,7 +207,7 @@ delete stream;
 #include "TObject.h"
 #include "AliPadMax.h"
 #include "AliSimDigits.h"
-#include "AliTPCv4.h"
+//#include "AliTPCv4.h"
 #include "AliTPCParam.h"
 #include "AliTPCDigitsArray.h"
 #include "AliTPCvtpr.h"
index bf87f0c..d80bc38 100644 (file)
@@ -14,6 +14,7 @@
 //   Origin: 
+#include "TClonesArray.h"
 //class TFile;
 class AliTPCParam;
index a1f2c8f..9998efa 100644 (file)
@@ -30,28 +30,19 @@ include_directories(${ROOT_INCLUDE_DIRS}
-                    ${AliRoot_SOURCE_DIR}/TPC/TPCsim
 # Sources in alphabetical order
-    AliClusters.cxx
-    AliComplexCluster.cxx
-    AliTPCclusterInfo.cxx
-    AliTPCclusterMI.cxx
-    AliTPCClusterParam.cxx
-    AliTPCClustersRow.cxx
-    AliTPCQADataMakerRec.cxx
-    AliTPCRecoParam.cxx
@@ -68,18 +59,28 @@ string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
 get_directory_property(incdirs INCLUDE_DIRECTORIES)
 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
+set(ROOT_DEPENDENCIES Core Gpad Graf Hist MathCore Matrix Minuit Physics RIO Tree)
 # Generate the ROOT map
 # Dependecies
-set(LIBDEPS STEERBase STEER CDB ESD RAWDatabase RAWDatarec ANALYSIS ANALYSISalice TPCbase TPCsim Core Gpad Graf Hist MathCore Matrix Minuit Physics RIO Tree)
 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
+# Create an object to be reused in case of static libraries 
+# Otherwise the sources will be compiled twice
+add_library(${MODULE}-object OBJECT ${SRCS} G__${MODULE}.cxx)
+# Add a library to the project using the object
+add_library(${MODULE} SHARED $<TARGET_OBJECTS:TPCrec-object>)
+# Linking
-# Add a library to the project using the specified source files
-add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
-target_link_libraries(${MODULE}  STEERBase STEER CDB ESD RAWDatabase RAWDatarec ANALYSIS ANALYSISalice TPCbase TPCsim Core Gpad Graf Hist MathCore Matrix Minuit Physics RIO Tree)
+# Public include folders that will be propagated to the dependecies
+target_include_directories(${MODULE} PUBLIC ${incdirs})
 # Additional compilation flags
-set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
+set_target_properties(${MODULE}-object PROPERTIES COMPILE_FLAGS "-O -g")
 # System dependent: Modify the way the library is build
index e65a47f..90015c2 100644 (file)
@@ -8,25 +8,6 @@
 #pragma link off all classes;
 #pragma link off all functions;
-#pragma link C++ class AliTPCclusterMI+;      // Derived from Cluster (shape in addition)
-                                              // --- ask Peter what can happen if renamed (add some pragma !??!)
-#pragma link C++ class AliTPCclusterInfo+;    // additional info attach to cluster (add digit map)
-                                              // currently not used by default
-#pragma link C++ class AliComplexCluster+;    // Used to store additional cluster and tracklet information along track
-                                              // Following classes are derived
-                                              // --- Documentation to be added - classes to be cleaned
-                                              // --- Marian to investigate
-#pragma link C++ class AliTPCTrackerPoint+;   // defined in AliComplexCluster.h
-#pragma link C++ class AliTPCClusterPoint+;   // defined in AliComplexCluster.h
-#pragma link C++ class AliTPCExactPoint+;     // defined in AliComplexCluster.h
-#pragma link C++ class AliTPCTrackPoint+;     // defined in AliComplexCluster.h
-#pragma link C++ class AliTPCTrackPoint2+;    // defined in AliComplexCluster.h
-#pragma link C++ class AliClusters+;          // Generic container for clusters derived from segmentID - all clusters
-                                              //   contains 1 AliTPCClustersRow per segment (1 segment = 1 padrow)
-#pragma link C++ class AliTPCClustersRow+;    // TPC Container array of "cluster" inside 1 padrow
 #pragma link C++ class AliTPCclusterer+;      // The TPC clusterer
 #pragma link C++ class AliTPCtrack+;          // Derived from AliTrack base class for TPC tracks
 #pragma link C++ class AliTPCtracker+;        // The TPC tracker
 #pragma link C++ class AliTPCReconstructor+;  // The TPC reconstructor steering TPC reconstruction
-#pragma link C++ class AliTPCRecoParam+;      // Config parameters for reconstruction
-#pragma link C++ class AliTPCClusterParam+;   // Cluster parametrization
 #pragma link C++ class AliTPCTracklet+;       // Used inside calbration for global fitting
                                               // --- should be removed at a later point after calib reassessment
-#pragma link C++ class AliTPCQADataMakerRec+; // Offline QA
 // Used in Krypton --- Update documentation for all 4 classes
 #pragma link C++ class AliTPCvtpr+;           // Helper class for clusterer --- Rename such that is clear that it is used in Kr
index 55dcf00..44107d7 100644 (file)
@@ -54,18 +54,28 @@ string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
 get_directory_property(incdirs INCLUDE_DIRECTORIES)
 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
+set(ROOT_DEPENDENCIES Core EG GenVector Geom Hist MathCore Matrix Physics RIO Tree VMC)
 # Generate the ROOT map
 # Dependecies
-set(LIBDEPS STEERBase STEER CDB ESD RAWDatabase RAWDatarec RAWDatasim TPCbase Core EG GenVector Geom Hist MathCore Matrix Physics RIO Tree VMC)
 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
+# Create an object to be reused in case of static libraries 
+# Otherwise the sources will be compiled twice
+add_library(${MODULE}-object OBJECT ${SRCS} G__${MODULE}.cxx)
+# Add a library to the project using the object
+add_library(${MODULE} SHARED $<TARGET_OBJECTS:TPCsim-object>)
+# Linking
-# Add a library to the project using the specified source files
-add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
-target_link_libraries(${MODULE} STEERBase STEER CDB ESD RAWDatabase RAWDatarec RAWDatasim TPCbase Core EG GenVector Geom Hist MathCore Matrix Physics RIO Tree VMC)
+# Public include folders that will be propagated to the dependecies
+target_include_directories(${MODULE} PUBLIC ${incdirs})
 # Additional compilation flags
-set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
+set_target_properties(${MODULE}-object PROPERTIES COMPILE_FLAGS "-O -g")
 # System dependent: Modify the way the library is build