From: phille Date: Fri, 18 May 2007 18:22:52 +0000 (+0000) Subject: New documenation X-Git-Url: http://git.uio.no/git/?a=commitdiff_plain;h=a34b6698a6dcad80bc2dd3aba8fdbb0cf5ab1a0c;hp=c19c8e3190a1f9d2e110bd17429560978d80ee29;p=u%2Fmrichter%2FAliRoot.git New documenation --- diff --git a/HLT/PHOS/latex/AliHLTComponentHandler_8cxx.tex b/HLT/PHOS/latex/AliHLTComponentHandler_8cxx.tex new file mode 100644 index 00000000000..53f3fcfc8e1 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTComponentHandler_8cxx.tex @@ -0,0 +1,56 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTComponent\-Handler.cxx File Reference} +\label{AliHLTComponentHandler_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTComponentHandler.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTComponentHandler.cxx}} + + +\subsection{Detailed Description} +Implementation of HLT component handler. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTComponent\-Handler.cxx}. + +{\tt \#include $<$TSystem.h$>$}\par +{\tt \#include \char`\"{}Ali\-HLTComponent\-Handler.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}TString.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTComponent\-Handler}) {\bf Ali\-HLTComponent\-Handler} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTComponentHandler.cxx@{Ali\-HLTComponent\-Handler.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTComponentHandler.cxx@{Ali\-HLTComponent\-Handler.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTComponent\-Handler})}\label{AliHLTComponentHandler_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 48 of file Ali\-HLTComponent\-Handler.cxx. + +\footnotesize\begin{verbatim}51 : +52 fComponentList(), +53 fScheduleList(), +54 fLibraryList(), +55 fEnvironment(), +56 fStandardList() +57 { +58 // see header file for class documentation +59 // or +60 // refer to README to build package +61 // or +62 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +63 memset(&fEnvironment, 0, sizeof(AliHLTComponentEnvironment)); +64 AddStandardComponents(); +65 } + +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTComponentHandler_8h.tex b/HLT/PHOS/latex/AliHLTComponentHandler_8h.tex new file mode 100644 index 00000000000..cd004a74f1d --- /dev/null +++ b/HLT/PHOS/latex/AliHLTComponentHandler_8h.tex @@ -0,0 +1,27 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTComponent\-Handler.h File Reference} +\label{AliHLTComponentHandler_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTComponentHandler.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTComponentHandler.h}} + + +\subsection{Detailed Description} +Global handling of HLT processing components. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The handler is part of the interface and both used in the Online (Pub\-Sub) and Offline (Ali\-Root) context.\end{Desc} + + +Definition in file {\bf Ali\-HLTComponent\-Handler.h}. + +{\tt \#include $<$vector$>$}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTComponent\-Handler} +\item +struct {\bf Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTComponent_8cxx.tex b/HLT/PHOS/latex/AliHLTComponent_8cxx.tex new file mode 100644 index 00000000000..57db2a1a18f --- /dev/null +++ b/HLT/PHOS/latex/AliHLTComponent_8cxx.tex @@ -0,0 +1,95 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTComponent.cxx File Reference} +\label{AliHLTComponent_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTComponent.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTComponent.cxx}} + + +\subsection{Detailed Description} +Base class implementation for HLT components. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTComponent.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent\-Handler.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTMessage.h\char`\"{}}\par +{\tt \#include \char`\"{}TString.h\char`\"{}}\par +{\tt \#include \char`\"{}TObj\-Array.h\char`\"{}}\par +{\tt \#include \char`\"{}TClass.h\char`\"{}}\par +{\tt \#include \char`\"{}TStopwatch.h\char`\"{}}\par +\subsection*{Defines} +\begin{CompactItemize} +\item +\#define {\bf ALIHLTCOMPONENT\_\-STOPWATCH}(type)\ Ali\-HLTStopwatch\-Guard swguard(fp\-Stopwatches!=NULL?reinterpret\_\-cast$<$TStopwatch$\ast$$>$(fp\-Stopwatches $\rightarrow$ At((int)type)):NULL) +\item +\#define {\bf ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH}()\ ALIHLTCOMPONENT\_\-STOPWATCH(k\-SWBase) +\item +\#define {\bf ALIHLTCOMPONENT\_\-DA\_\-STOPWATCH}()\ ALIHLTCOMPONENT\_\-STOPWATCH(k\-SWDA) +\end{CompactItemize} +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTComponent}) +\end{CompactItemize} + + +\subsection{Define Documentation} +\index{AliHLTComponent.cxx@{Ali\-HLTComponent.cxx}!ALIHLTCOMPONENT_BASE_STOPWATCH@{ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH}} +\index{ALIHLTCOMPONENT_BASE_STOPWATCH@{ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH}!AliHLTComponent.cxx@{Ali\-HLTComponent.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH()\ ALIHLTCOMPONENT\_\-STOPWATCH(k\-SWBase)}\label{AliHLTComponent_8cxx_a1} + + +stopwatch macro for operations of the base class + +Definition at line 45 of file Ali\-HLTComponent.cxx. + +Referenced by Ali\-HLTComponent::Get\-Data\-Type(), Ali\-HLTComponent::Get\-First\-Input\-Block(), Ali\-HLTComponent::Get\-First\-Input\-Object(), Ali\-HLTComponent::Get\-Next\-Input\-Block(), Ali\-HLTComponent::Get\-Next\-Input\-Object(), Ali\-HLTComponent::Get\-Specification(), Ali\-HLTComponent::Process\-Event(), and Ali\-HLTComponent::Push\-Back().\index{AliHLTComponent.cxx@{Ali\-HLTComponent.cxx}!ALIHLTCOMPONENT_DA_STOPWATCH@{ALIHLTCOMPONENT\_\-DA\_\-STOPWATCH}} +\index{ALIHLTCOMPONENT_DA_STOPWATCH@{ALIHLTCOMPONENT\_\-DA\_\-STOPWATCH}!AliHLTComponent.cxx@{Ali\-HLTComponent.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define ALIHLTCOMPONENT\_\-DA\_\-STOPWATCH()\ ALIHLTCOMPONENT\_\-STOPWATCH(k\-SWDA)}\label{AliHLTComponent_8cxx_a2} + + +stopwatch macro for operations of the detector algorithm (DA) + +Definition at line 47 of file Ali\-HLTComponent.cxx. + +Referenced by Ali\-HLTComponent::Process\-Event().\index{AliHLTComponent.cxx@{Ali\-HLTComponent.cxx}!ALIHLTCOMPONENT_STOPWATCH@{ALIHLTCOMPONENT\_\-STOPWATCH}} +\index{ALIHLTCOMPONENT_STOPWATCH@{ALIHLTCOMPONENT\_\-STOPWATCH}!AliHLTComponent.cxx@{Ali\-HLTComponent.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define ALIHLTCOMPONENT\_\-STOPWATCH(type)\ Ali\-HLTStopwatch\-Guard swguard(fp\-Stopwatches!=NULL?reinterpret\_\-cast$<$TStopwatch$\ast$$>$(fp\-Stopwatches $\rightarrow$ At((int)type)):NULL)}\label{AliHLTComponent_8cxx_a0} + + +stopwatch macro using the stopwatch guard + +Definition at line 41 of file Ali\-HLTComponent.cxx. + +\subsection{Function Documentation} +\index{AliHLTComponent.cxx@{Ali\-HLTComponent.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTComponent.cxx@{Ali\-HLTComponent.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTComponent\-Handler})}\label{AliHLTComponent_8cxx_a3} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 48 of file Ali\-HLTComponent\-Handler.cxx. + +\footnotesize\begin{verbatim}51 : +52 fComponentList(), +53 fScheduleList(), +54 fLibraryList(), +55 fEnvironment(), +56 fStandardList() +57 { +58 // see header file for class documentation +59 // or +60 // refer to README to build package +61 // or +62 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +63 memset(&fEnvironment, 0, sizeof(AliHLTComponentEnvironment)); +64 AddStandardComponents(); +65 } + +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTComponent_8h.tex b/HLT/PHOS/latex/AliHLTComponent_8h.tex new file mode 100644 index 00000000000..443485b96e1 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTComponent_8h.tex @@ -0,0 +1,98 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTComponent.h File Reference} +\label{AliHLTComponent_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTComponent.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTComponent.h}} + + +\subsection{Detailed Description} +Base class declaration for HLT components. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is both used in Online (Pub\-Sub) and Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTComponent.h}. + +{\tt \#include $<$vector$>$}\par +{\tt \#include $<$string$>$}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTComponent} +\item +class {\bf Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard} +\end{CompactItemize} +\subsection*{Typedefs} +\begin{CompactItemize} +\item +typedef {\bf Ali\-HLTComponent\-Log\-Severity} {\bf Ali\-HLTComponent\_\-Log\-Severity} +\item +typedef {\bf Ali\-HLTComponent\-Event\-Data} {\bf Ali\-HLTComponent\_\-Event\-Data} +\item +typedef {\bf Ali\-HLTComponent\-Shm\-Data} {\bf Ali\-HLTComponent\_\-Shm\-Data} +\item +typedef {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTComponent\_\-Data\-Type} +\item +typedef {\bf Ali\-HLTComponent\-Block\-Data} {\bf Ali\-HLTComponent\_\-Block\-Data} +\item +typedef {\bf Ali\-HLTComponent\-Trigger\-Data} {\bf Ali\-HLTComponent\_\-Trigger\-Data} +\item +typedef {\bf Ali\-HLTComponent\-Event\-Done\-Data} {\bf Ali\-HLTComponent\_\-Event\-Done\-Data} +\end{CompactItemize} + + +\subsection{Typedef Documentation} +\index{AliHLTComponent.h@{Ali\-HLTComponent.h}!AliHLTComponent_BlockData@{AliHLTComponent\_\-BlockData}} +\index{AliHLTComponent_BlockData@{AliHLTComponent\_\-BlockData}!AliHLTComponent.h@{Ali\-HLTComponent.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Block\-Data} {\bf Ali\-HLTComponent\_\-Block\-Data}}\label{AliHLTComponent_8h_a4} + + + + +Definition at line 36 of file Ali\-HLTComponent.h.\index{AliHLTComponent.h@{Ali\-HLTComponent.h}!AliHLTComponent_DataType@{AliHLTComponent\_\-DataType}} +\index{AliHLTComponent_DataType@{AliHLTComponent\_\-DataType}!AliHLTComponent.h@{Ali\-HLTComponent.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTComponent\_\-Data\-Type}}\label{AliHLTComponent_8h_a3} + + + + +Definition at line 35 of file Ali\-HLTComponent.h.\index{AliHLTComponent.h@{Ali\-HLTComponent.h}!AliHLTComponent_EventData@{AliHLTComponent\_\-EventData}} +\index{AliHLTComponent_EventData@{AliHLTComponent\_\-EventData}!AliHLTComponent.h@{Ali\-HLTComponent.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Event\-Data} {\bf Ali\-HLTComponent\_\-Event\-Data}}\label{AliHLTComponent_8h_a1} + + + + +Definition at line 33 of file Ali\-HLTComponent.h.\index{AliHLTComponent.h@{Ali\-HLTComponent.h}!AliHLTComponent_EventDoneData@{AliHLTComponent\_\-EventDoneData}} +\index{AliHLTComponent_EventDoneData@{AliHLTComponent\_\-EventDoneData}!AliHLTComponent.h@{Ali\-HLTComponent.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Event\-Done\-Data} {\bf Ali\-HLTComponent\_\-Event\-Done\-Data}}\label{AliHLTComponent_8h_a6} + + + + +Definition at line 38 of file Ali\-HLTComponent.h.\index{AliHLTComponent.h@{Ali\-HLTComponent.h}!AliHLTComponent_LogSeverity@{AliHLTComponent\_\-LogSeverity}} +\index{AliHLTComponent_LogSeverity@{AliHLTComponent\_\-LogSeverity}!AliHLTComponent.h@{Ali\-HLTComponent.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Log\-Severity} {\bf Ali\-HLTComponent\_\-Log\-Severity}}\label{AliHLTComponent_8h_a0} + + + + +Definition at line 32 of file Ali\-HLTComponent.h.\index{AliHLTComponent.h@{Ali\-HLTComponent.h}!AliHLTComponent_ShmData@{AliHLTComponent\_\-ShmData}} +\index{AliHLTComponent_ShmData@{AliHLTComponent\_\-ShmData}!AliHLTComponent.h@{Ali\-HLTComponent.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Shm\-Data} {\bf Ali\-HLTComponent\_\-Shm\-Data}}\label{AliHLTComponent_8h_a2} + + + + +Definition at line 34 of file Ali\-HLTComponent.h.\index{AliHLTComponent.h@{Ali\-HLTComponent.h}!AliHLTComponent_TriggerData@{AliHLTComponent\_\-TriggerData}} +\index{AliHLTComponent_TriggerData@{AliHLTComponent\_\-TriggerData}!AliHLTComponent.h@{Ali\-HLTComponent.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Trigger\-Data} {\bf Ali\-HLTComponent\_\-Trigger\-Data}}\label{AliHLTComponent_8h_a5} + + + + +Definition at line 37 of file Ali\-HLTComponent.h. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTConfigurationHandler_8h.tex b/HLT/PHOS/latex/AliHLTConfigurationHandler_8h.tex new file mode 100644 index 00000000000..04aa199ff51 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTConfigurationHandler_8h.tex @@ -0,0 +1,21 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTConfiguration\-Handler.h File Reference} +\label{AliHLTConfigurationHandler_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTConfigurationHandler.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTConfigurationHandler.h}} + + +\subsection{Detailed Description} +Global handling of HLT configurations. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTConfiguration\-Handler.h}. + +{\tt \#include $<$TList.h$>$}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTConfiguration\-Handler} +\begin{CompactList}\small\item\em Global Handling of HLT configurations. \item\end{CompactList}\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTConfiguration_8cxx.tex b/HLT/PHOS/latex/AliHLTConfiguration_8cxx.tex new file mode 100644 index 00000000000..1d882ec819d --- /dev/null +++ b/HLT/PHOS/latex/AliHLTConfiguration_8cxx.tex @@ -0,0 +1,85 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTConfiguration.cxx File Reference} +\label{AliHLTConfiguration_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTConfiguration.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTConfiguration.cxx}} + + +\subsection{Detailed Description} +Implementation of HLT configuration handler. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTConfiguration.cxx}. + +{\tt \#include $<$cerrno$>$}\par +{\tt \#include \char`\"{}Ali\-HLTConfiguration.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTConfiguration\-Handler.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTTask.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent\-Handler.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +{\tt \#include $<$string$>$}\par +{\tt \#include \char`\"{}TList.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTConfiguration}) {\bf Ali\-HLTConfiguration} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTTask}) {\bf Ali\-HLTTask} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTConfiguration.cxx@{Ali\-HLTConfiguration.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTConfiguration.cxx@{Ali\-HLTConfiguration.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTTask})}\label{AliHLTConfiguration_8cxx_a1} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 421 of file Ali\-HLTConfiguration.cxx. + +\footnotesize\begin{verbatim}424 : +425 fpConfiguration(NULL), +426 fpComponent(NULL), +427 fpDataBuffer(NULL), +428 fListTargets(), +429 fListDependencies(), +430 fpBlockDataArray(NULL), +431 fBlockDataArraySize(0) +432 { +433 // see header file for function documentation +434 } + +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration.cxx@{Ali\-HLTConfiguration.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTConfiguration.cxx@{Ali\-HLTConfiguration.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTConfiguration})}\label{AliHLTConfiguration_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 39 of file Ali\-HLTConfiguration.cxx. + +\footnotesize\begin{verbatim}42 : +43 fID(""), +44 fComponent(""), +45 fStringSources(""), +46 fNofSources(-1), +47 fListSources(), +48 fListSrcElement(), +49 fArguments(""), +50 fArgc(-1), +51 fArgv(NULL) +52 { +53 // see header file for function documentation +54 fListSrcElement=fListSources.begin(); +55 } + +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTConfiguration_8h.tex b/HLT/PHOS/latex/AliHLTConfiguration_8h.tex new file mode 100644 index 00000000000..63111566833 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTConfiguration_8h.tex @@ -0,0 +1,29 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTConfiguration.h File Reference} +\label{AliHLTConfiguration_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTConfiguration.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTConfiguration.h}} + + +\subsection{Detailed Description} +Base class and handling of HLT configurations. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is used in Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTConfiguration.h}. + +{\tt \#include $<$cerrno$>$}\par +{\tt \#include $<$vector$>$}\par +{\tt \#include $<$TObject.h$>$}\par +{\tt \#include $<$TList.h$>$}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Buffer.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTConfiguration} +\begin{CompactList}\small\item\em Description of HLT processing chains. \item\end{CompactList}\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTConsumerDescriptor_8cxx.tex b/HLT/PHOS/latex/AliHLTConsumerDescriptor_8cxx.tex new file mode 100644 index 00000000000..41a374caaef --- /dev/null +++ b/HLT/PHOS/latex/AliHLTConsumerDescriptor_8cxx.tex @@ -0,0 +1,48 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTConsumer\-Descriptor.cxx File Reference} +\label{AliHLTConsumerDescriptor_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTConsumerDescriptor.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTConsumerDescriptor.cxx}} + + +\subsection{Detailed Description} +Helper class to describe a consumer component. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTConsumer\-Descriptor.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTConsumer\-Descriptor.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTConsumer\-Descriptor}) {\bf Ali\-HLTConsumer\-Descriptor} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTConsumerDescriptor.cxx@{Ali\-HLTConsumer\-Descriptor.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTConsumerDescriptor.cxx@{Ali\-HLTConsumer\-Descriptor.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTConsumer\-Descriptor})}\label{AliHLTConsumerDescriptor_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 31 of file Ali\-HLTConsumer\-Descriptor.cxx. + +\footnotesize\begin{verbatim}34 : +35 fpConsumer(NULL), +36 fSegments() +37 { +38 // see header file for class documentation +39 // or +40 // refer to README to build package +41 // or +42 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +43 fSegments.clear(); +44 } + +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTConsumerDescriptor_8h.tex b/HLT/PHOS/latex/AliHLTConsumerDescriptor_8h.tex new file mode 100644 index 00000000000..395dd7505b8 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTConsumerDescriptor_8h.tex @@ -0,0 +1,23 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTConsumer\-Descriptor.h File Reference} +\label{AliHLTConsumerDescriptor_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTConsumerDescriptor.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTConsumerDescriptor.h}} + + +\subsection{Detailed Description} +Helper class to describe a consumer component. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is used in Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTConsumer\-Descriptor.h}. + +{\tt \#include \char`\"{}Ali\-HLTData\-Buffer.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTConsumer\-Descriptor} +\begin{CompactList}\small\item\em Helper class to describe a consumer component. \item\end{CompactList}\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTDataBuffer_8cxx.tex b/HLT/PHOS/latex/AliHLTDataBuffer_8cxx.tex new file mode 100644 index 00000000000..fbf626c4007 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTDataBuffer_8cxx.tex @@ -0,0 +1,59 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTData\-Buffer.cxx File Reference} +\label{AliHLTDataBuffer_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTDataBuffer.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTDataBuffer.cxx}} + + +\subsection{Detailed Description} +Handling of Data Buffers for HLT components. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTData\-Buffer.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTData\-Buffer.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTConsumer\-Descriptor.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +{\tt \#include $<$cerrno$>$}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTData\-Buffer}) {\bf Ali\-HLTData\-Buffer} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTDataBuffer.cxx@{Ali\-HLTData\-Buffer.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTDataBuffer.cxx@{Ali\-HLTData\-Buffer.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTData\-Buffer})}\label{AliHLTDataBuffer_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 36 of file Ali\-HLTData\-Buffer.cxx. + +\footnotesize\begin{verbatim}39 : +40 fSegments(), +41 fConsumers(), +42 fActiveConsumers(), +43 fReleasedConsumers(), +44 fpBuffer(NULL), +45 fFlags(0) +46 { +47 // see header file for class documentation +48 // or +49 // refer to README to build package +50 // or +51 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +52 fSegments.empty(); +53 fConsumers.empty(); +54 fActiveConsumers.empty(); +55 fReleasedConsumers.empty(); +56 fgNofInstances++; +57 } + +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTDataBuffer_8h.tex b/HLT/PHOS/latex/AliHLTDataBuffer_8h.tex new file mode 100644 index 00000000000..4ebed82be44 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTDataBuffer_8h.tex @@ -0,0 +1,30 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTData\-Buffer.h File Reference} +\label{AliHLTDataBuffer_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTDataBuffer.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTDataBuffer.h}} + + +\subsection{Detailed Description} +Handling of Data Buffers for HLT components. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is used in Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTData\-Buffer.h}. + +{\tt \#include $<$vector$>$}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}TObject.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTData\-Buffer} +\begin{CompactList}\small\item\em Handling of data buffers for the HLT. \item\end{CompactList}\item +class {\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment} +\begin{CompactList}\small\item\em Descriptor of a data segment within the buffer. \item\end{CompactList}\item +class {\bf Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer} +\begin{CompactList}\small\item\em Descriptor of the raw data buffer which can host several segments. \item\end{CompactList}\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTDataSink_8cxx.tex b/HLT/PHOS/latex/AliHLTDataSink_8cxx.tex new file mode 100644 index 00000000000..7eab2b48931 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTDataSink_8cxx.tex @@ -0,0 +1,43 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTData\-Sink.cxx File Reference} +\label{AliHLTDataSink_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTDataSink.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTDataSink.cxx}} + + +\subsection{Detailed Description} +Base class implementation for HLT data source components. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTData\-Sink.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTData\-Sink.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTData\-Sink}) {\bf Ali\-HLTData\-Sink} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTDataSink.cxx@{Ali\-HLTData\-Sink.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTDataSink.cxx@{Ali\-HLTData\-Sink.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTData\-Sink})}\label{AliHLTDataSink_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 30 of file Ali\-HLTData\-Sink.cxx. + +\footnotesize\begin{verbatim}33 { +34 // see header file for class documentation +35 // or +36 // refer to README to build package +37 // or +38 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +39 } +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTDataSink_8h.tex b/HLT/PHOS/latex/AliHLTDataSink_8h.tex new file mode 100644 index 00000000000..7eaa5ec0524 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTDataSink_8h.tex @@ -0,0 +1,23 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTData\-Sink.h File Reference} +\label{AliHLTDataSink_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTDataSink.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTDataSink.h}} + + +\subsection{Detailed Description} +Base class declaration for HLT data sink components. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is used in Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTData\-Sink.h}. + +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTData\-Sink} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTDataSource_8cxx.tex b/HLT/PHOS/latex/AliHLTDataSource_8cxx.tex new file mode 100644 index 00000000000..98e255f382f --- /dev/null +++ b/HLT/PHOS/latex/AliHLTDataSource_8cxx.tex @@ -0,0 +1,43 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTData\-Source.cxx File Reference} +\label{AliHLTDataSource_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTDataSource.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTDataSource.cxx}} + + +\subsection{Detailed Description} +Base class implementation for HLT data source components. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTData\-Source.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTData\-Source.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTData\-Source}) {\bf Ali\-HLTData\-Source} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTDataSource.cxx@{Ali\-HLTData\-Source.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTDataSource.cxx@{Ali\-HLTData\-Source.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTData\-Source})}\label{AliHLTDataSource_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 30 of file Ali\-HLTData\-Source.cxx. + +\footnotesize\begin{verbatim}33 { +34 // see header file for class documentation +35 // or +36 // refer to README to build package +37 // or +38 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +39 } +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTDataSource_8h.tex b/HLT/PHOS/latex/AliHLTDataSource_8h.tex new file mode 100644 index 00000000000..0d788ff22f2 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTDataSource_8h.tex @@ -0,0 +1,23 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTData\-Source.h File Reference} +\label{AliHLTDataSource_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTDataSource.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTDataSource.h}} + + +\subsection{Detailed Description} +Base class declaration for HLT data source components. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is used in Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTData\-Source.h}. + +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTData\-Source} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTDataTypes_8h.tex b/HLT/PHOS/latex/AliHLTDataTypes_8h.tex new file mode 100644 index 00000000000..54d8b9da710 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTDataTypes_8h.tex @@ -0,0 +1,349 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTData\-Types.h File Reference} +\label{AliHLTDataTypes_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTDataTypes.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTDataTypes.h}} + + +\subsection{Detailed Description} +Data type declaration for the HLT module. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTData\-Types.h}. + +\subsection*{Namespaces} +\begin{CompactItemize} +\item +namespace {\bf std} +\end{CompactItemize} +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTComponent\-Event\-Data} +\item +struct {\bf Ali\-HLTComponent\-Shm\-Data} +\item +struct {\bf Ali\-HLTComponent\-Data\-Type} +\item +struct {\bf Ali\-HLTComponent\-Block\-Data} +\item +struct {\bf Ali\-HLTComponent\-Trigger\-Data} +\item +struct {\bf Ali\-HLTComponent\-Event\-Done\-Data} +\item +struct {\bf Ali\-HLTComponent\-Environment} +\end{CompactItemize} +\subsection*{Defines} +\begin{CompactItemize} +\item +\#define {\bf k\-Ali\-HLTVoid\-Data\-Type\-ID}\ \char`\"{}$\backslash$0$\backslash$0$\backslash$0$\backslash$0$\backslash$0$\backslash$0$\backslash$0\char`\"{} +\item +\#define {\bf k\-Ali\-HLTVoid\-Data\-Origin}\ \char`\"{}$\backslash$0$\backslash$0$\backslash$0\char`\"{} +\item +\#define {\bf k\-Ali\-HLTAny\-Data\-Type\-ID}\ \char`\"{}$\ast$$\ast$$\ast$$\ast$$\ast$$\ast$$\ast$\char`\"{} +\item +\#define {\bf k\-Ali\-HLTAny\-Data\-Origin}\ \char`\"{}$\ast$$\ast$$\ast$\char`\"{} +\end{CompactItemize} +\subsection*{Typedefs} +\begin{CompactItemize} +\item +typedef unsigned char {\bf Ali\-HLTUInt8\_\-t} +\item +typedef unsigned short {\bf Ali\-HLTUInt16\_\-t} +\item +typedef unsigned int {\bf Ali\-HLTUInt32\_\-t} +\item +typedef unsigned long long {\bf Ali\-HLTUInt64\_\-t} +\item +typedef {\bf Ali\-HLTUInt64\_\-t} {\bf Ali\-HLTEvent\-ID\_\-t} +\item +typedef int($\ast$ {\bf Ali\-HLTfct\-Logging} )(void $\ast$param, {\bf Ali\-HLTComponent\-Log\-Severity} severity, const char $\ast$origin, const char $\ast$keyword, const char $\ast$message) +\end{CompactItemize} +\subsection*{Enumerations} +\begin{CompactItemize} +\item +enum {\bf Ali\-HLTComponent\-Log\-Severity} \{ \par +{\bf k\-HLTLog\-None} = 0, +{\bf k\-HLTLog\-Benchmark} = 1, +{\bf k\-HLTLog\-Debug} = 2, +{\bf k\-HLTLog\-Info} = 4, +\par +{\bf k\-HLTLog\-Warning} = 8, +{\bf k\-HLTLog\-Error} = 16, +{\bf k\-HLTLog\-Fatal} = 32, +{\bf k\-HLTLog\-All} = 0x3f, +\par +{\bf k\-HLTLog\-Default} = 0x3d + \} +\end{CompactItemize} +\subsection*{Functions} +\begin{CompactItemize} +\item +bool {\bf operator==} (const {\bf Ali\-HLTComponent\-Data\-Type} \&dt1, const {\bf Ali\-HLTComponent\-Data\-Type} \&dt2) +\item +bool {\bf operator!=} (const {\bf Ali\-HLTComponent\-Data\-Type} \&dt1, const {\bf Ali\-HLTComponent\-Data\-Type} \&dt2) +\end{CompactItemize} +\subsection*{Variables} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTEvent\-ID\_\-t} {\bf k\-Ali\-HLTVoid\-Event\-ID} = $\sim$({\bf Ali\-HLTEvent\-ID\_\-t})0 +\item +const {\bf Ali\-HLTUInt32\_\-t} {\bf gk\-Ali\-HLTComponent\-Invalid\-Shm\-Type} = 0 +\item +const {\bf Ali\-HLTUInt64\_\-t} {\bf gk\-Ali\-HLTComponent\-Invalid\-Shm\-ID} = $\sim$({\bf Ali\-HLTUInt64\_\-t})0 +\item +const int {\bf k\-Ali\-HLTComponent\-Data\-Typef\-IDsize} = 8 +\item +const int {\bf k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size} = 4 +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf k\-Ali\-HLTVoid\-Data\-Type} = \{sizeof({\bf Ali\-HLTComponent\-Data\-Type}), k\-Ali\-HLTVoid\-Data\-Type\-ID, k\-Ali\-HLTVoid\-Data\-Origin\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf k\-Ali\-HLTAny\-Data\-Type} = \{sizeof({\bf Ali\-HLTComponent\-Data\-Type}), k\-Ali\-HLTAny\-Data\-Type\-ID, k\-Ali\-HLTAny\-Data\-Origin\} +\item +const {\bf Ali\-HLTUInt32\_\-t} {\bf k\-Ali\-HLTVoid\-Data\-Spec} = $\sim$({\bf Ali\-HLTUInt32\_\-t})0 +\end{CompactItemize} + + +\subsection{Define Documentation} +\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTAnyDataOrigin@{kAliHLTAnyDataOrigin}} +\index{kAliHLTAnyDataOrigin@{kAliHLTAnyDataOrigin}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define k\-Ali\-HLTAny\-Data\-Origin\ \char`\"{}$\ast$$\ast$$\ast$\char`\"{}}\label{AliHLTDataTypes_8h_a3} + + + + +Definition at line 62 of file Ali\-HLTData\-Types.h.\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTAnyDataTypeID@{kAliHLTAnyDataTypeID}} +\index{kAliHLTAnyDataTypeID@{kAliHLTAnyDataTypeID}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define k\-Ali\-HLTAny\-Data\-Type\-ID\ \char`\"{}$\ast$$\ast$$\ast$$\ast$$\ast$$\ast$$\ast$\char`\"{}}\label{AliHLTDataTypes_8h_a2} + + + + +Definition at line 61 of file Ali\-HLTData\-Types.h.\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTVoidDataOrigin@{kAliHLTVoidDataOrigin}} +\index{kAliHLTVoidDataOrigin@{kAliHLTVoidDataOrigin}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define k\-Ali\-HLTVoid\-Data\-Origin\ \char`\"{}$\backslash$0$\backslash$0$\backslash$0\char`\"{}}\label{AliHLTDataTypes_8h_a1} + + + + +Definition at line 60 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTData\-Sink::Get\-Output\-Data\-Type().\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTVoidDataTypeID@{kAliHLTVoidDataTypeID}} +\index{kAliHLTVoidDataTypeID@{kAliHLTVoidDataTypeID}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define k\-Ali\-HLTVoid\-Data\-Type\-ID\ \char`\"{}$\backslash$0$\backslash$0$\backslash$0$\backslash$0$\backslash$0$\backslash$0$\backslash$0\char`\"{}}\label{AliHLTDataTypes_8h_a0} + + + + +Definition at line 59 of file Ali\-HLTData\-Types.h. + +\subsection{Typedef Documentation} +\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!AliHLTEventID_t@{AliHLTEventID\_\-t}} +\index{AliHLTEventID_t@{AliHLTEventID\_\-t}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTUInt64\_\-t} {\bf Ali\-HLTEvent\-ID\_\-t}}\label{AliHLTDataTypes_8h_a8} + + + + +Definition at line 26 of file Ali\-HLTData\-Types.h.\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!AliHLTfctLogging@{AliHLTfctLogging}} +\index{AliHLTfctLogging@{AliHLTfctLogging}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ {\bf Ali\-HLTfct\-Logging})(void $\ast$param, {\bf Ali\-HLTComponent\-Log\-Severity} severity, const char $\ast$origin, const char $\ast$keyword, const char $\ast$message)}\label{AliHLTDataTypes_8h_a17} + + + + +Definition at line 92 of file Ali\-HLTData\-Types.h.\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!AliHLTUInt16_t@{AliHLTUInt16\_\-t}} +\index{AliHLTUInt16_t@{AliHLTUInt16\_\-t}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef unsigned short {\bf Ali\-HLTUInt16\_\-t}}\label{AliHLTDataTypes_8h_a5} + + + + +Definition at line 20 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Init(), Ali\-HLTPHOSOnline\-Display::Get\-Histogram(), Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw(), and Ali\-HLTPHOSRaw\-Analyzer\-Component::Set\-Equippment\-ID().\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!AliHLTUInt32_t@{AliHLTUInt32\_\-t}} +\index{AliHLTUInt32_t@{AliHLTUInt32\_\-t}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef unsigned int {\bf Ali\-HLTUInt32\_\-t}}\label{AliHLTDataTypes_8h_a6} + + + + +Definition at line 22 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Create\-Input\-Object(), Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw(), Ali\-HLTComponent::Get\-Specification(), Ali\-HLTComponent::Make\-Output\-Data\-Block\-List(), and Ali\-HLTTask::Process\-Task().\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!AliHLTUInt64_t@{AliHLTUInt64\_\-t}} +\index{AliHLTUInt64_t@{AliHLTUInt64\_\-t}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef unsigned long long {\bf Ali\-HLTUInt64\_\-t}}\label{AliHLTDataTypes_8h_a7} + + + + +Definition at line 24 of file Ali\-HLTData\-Types.h.\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!AliHLTUInt8_t@{AliHLTUInt8\_\-t}} +\index{AliHLTUInt8_t@{AliHLTUInt8\_\-t}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef unsigned char {\bf Ali\-HLTUInt8\_\-t}}\label{AliHLTDataTypes_8h_a4} + + + + +Definition at line 18 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Init(), Ali\-HLTData\-Buffer::Get\-Target\-Buffer(), Ali\-HLTComponent::Insert\-Output\-Block(), and Ali\-HLTTask::Process\-Task(). + +\subsection{Enumeration Type Documentation} +\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!AliHLTComponentLogSeverity@{AliHLTComponentLogSeverity}} +\index{AliHLTComponentLogSeverity@{AliHLTComponentLogSeverity}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf Ali\-HLTComponent\-Log\-Severity}}\label{AliHLTDataTypes_8h_a29} + + +\begin{Desc} +\item[Enumeration values: ]\par +\begin{description} +\index{kHLTLogNone@{kHLTLogNone}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogNone@{kHLTLogNone}}\item[{\em +k\-HLTLog\-None\label{AliHLTDataTypes_8h_a29a18} +}]\index{kHLTLogBenchmark@{kHLTLogBenchmark}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogBenchmark@{kHLTLogBenchmark}}\item[{\em +k\-HLTLog\-Benchmark\label{AliHLTDataTypes_8h_a29a19} +}]\index{kHLTLogDebug@{kHLTLogDebug}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogDebug@{kHLTLogDebug}}\item[{\em +k\-HLTLog\-Debug\label{AliHLTDataTypes_8h_a29a20} +}]\index{kHLTLogInfo@{kHLTLogInfo}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogInfo@{kHLTLogInfo}}\item[{\em +k\-HLTLog\-Info\label{AliHLTDataTypes_8h_a29a21} +}]\index{kHLTLogWarning@{kHLTLogWarning}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogWarning@{kHLTLogWarning}}\item[{\em +k\-HLTLog\-Warning\label{AliHLTDataTypes_8h_a29a22} +}]\index{kHLTLogError@{kHLTLogError}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogError@{kHLTLogError}}\item[{\em +k\-HLTLog\-Error\label{AliHLTDataTypes_8h_a29a23} +}]\index{kHLTLogFatal@{kHLTLogFatal}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogFatal@{kHLTLogFatal}}\item[{\em +k\-HLTLog\-Fatal\label{AliHLTDataTypes_8h_a29a24} +}]\index{kHLTLogAll@{kHLTLogAll}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogAll@{kHLTLogAll}}\item[{\em +k\-HLTLog\-All\label{AliHLTDataTypes_8h_a29a25} +}]\index{kHLTLogDefault@{kHLTLogDefault}!AliHLTDataTypes.h@{AliHLTDataTypes.h}}\index{AliHLTDataTypes.h@{AliHLTDataTypes.h}!kHLTLogDefault@{kHLTLogDefault}}\item[{\em +k\-HLTLog\-Default\label{AliHLTDataTypes_8h_a29a26} +}]\end{description} +\end{Desc} + + + +Definition at line 28 of file Ali\-HLTData\-Types.h. + +Referenced by Class\-Imp(), Ali\-HLTLogging::Get\-Global\-Logging\-Level(), Ali\-HLTLogging::Get\-Local\-Logging\-Level(), Ali\-HLTComponent::Init(), and Ali\-HLTLogging::Init\-Ali\-Log\-Trap(). + +\footnotesize\begin{verbatim}28 { kHLTLogNone=0, kHLTLogBenchmark=1, kHLTLogDebug=2, kHLTLogInfo=4, kHLTLogWarning=8, kHLTLogError=16, kHLTLogFatal=32, kHLTLogAll=0x3f, kHLTLogDefault=0x3d }; +\end{verbatim}\normalsize + + + + +\subsection{Function Documentation} +\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!operator"!=@{operator"!=}} +\index{operator"!=@{operator"!=}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool operator!= (const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt1}, const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt2})\hspace{0.3cm}{\tt [inline]}}\label{AliHLTDataTypes_8h_a28} + + + + +Definition at line 118 of file Ali\-HLTData\-Types.h. + +References Ali\-HLTComponent\-Data\-Type::f\-ID, and Ali\-HLTComponent\-Data\-Type::f\-Origin. + +\footnotesize\begin{verbatim}119 { +120 for ( int i = 0; i < kAliHLTComponentDataTypefIDsize; i++ ) +121 if ( dt1.fID[i] != dt2.fID[i] ) +122 return true; +123 for ( int i = 0; i < kAliHLTComponentDataTypefOriginSize; i++ ) +124 if ( dt1.fOrigin[i] != dt2.fOrigin[i] ) +125 return true; +126 return false; +127 } +\end{verbatim}\normalsize + + +\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!operator==@{operator==}} +\index{operator==@{operator==}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool operator== (const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt1}, const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt2})\hspace{0.3cm}{\tt [inline]}}\label{AliHLTDataTypes_8h_a27} + + + + +Definition at line 107 of file Ali\-HLTData\-Types.h. + +References Ali\-HLTComponent\-Data\-Type::f\-ID, and Ali\-HLTComponent\-Data\-Type::f\-Origin. + +\footnotesize\begin{verbatim}108 { +109 for ( int i = 0; i < kAliHLTComponentDataTypefIDsize; i++ ) +110 if ( dt1.fID[i] != dt2.fID[i] ) +111 return false; +112 for ( int i = 0; i < kAliHLTComponentDataTypefOriginSize; i++ ) +113 if ( dt1.fOrigin[i] != dt2.fOrigin[i] ) +114 return false; +115 return true; +116 } +\end{verbatim}\normalsize + + + + +\subsection{Variable Documentation} +\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!gkAliHLTComponentInvalidShmID@{gkAliHLTComponentInvalidShmID}} +\index{gkAliHLTComponentInvalidShmID@{gkAliHLTComponentInvalidShmID}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTUInt64\_\-t} {\bf gk\-Ali\-HLTComponent\-Invalid\-Shm\-ID} = $\sim$({\bf Ali\-HLTUInt64\_\-t})0}\label{AliHLTDataTypes_8h_a11} + + + + +Definition at line 48 of file Ali\-HLTData\-Types.h.\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!gkAliHLTComponentInvalidShmType@{gkAliHLTComponentInvalidShmType}} +\index{gkAliHLTComponentInvalidShmType@{gkAliHLTComponentInvalidShmType}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTUInt32\_\-t} {\bf gk\-Ali\-HLTComponent\-Invalid\-Shm\-Type} = 0}\label{AliHLTDataTypes_8h_a10} + + + + +Definition at line 47 of file Ali\-HLTData\-Types.h.\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTAnyDataType@{kAliHLTAnyDataType}} +\index{kAliHLTAnyDataType@{kAliHLTAnyDataType}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf k\-Ali\-HLTAny\-Data\-Type} = \{sizeof({\bf Ali\-HLTComponent\-Data\-Type}), k\-Ali\-HLTAny\-Data\-Type\-ID, k\-Ali\-HLTAny\-Data\-Origin\}}\label{AliHLTDataTypes_8h_a15} + + + + +Definition at line 64 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Find\-Input\-Block().\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTComponentDataTypefIDsize@{kAliHLTComponentDataTypefIDsize}} +\index{kAliHLTComponentDataTypefIDsize@{kAliHLTComponentDataTypefIDsize}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const int {\bf k\-Ali\-HLTComponent\-Data\-Typef\-IDsize} = 8}\label{AliHLTDataTypes_8h_a12} + + + + +Definition at line 50 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Copy\-Data\-Type(), Ali\-HLTComponent::Data\-Type2Text(), Ali\-HLTPHOSFile\-Writer::Make\-Filename(), and Ali\-HLTComponent::Set\-Data\-Type().\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTComponentDataTypefOriginSize@{kAliHLTComponentDataTypefOriginSize}} +\index{kAliHLTComponentDataTypefOriginSize@{kAliHLTComponentDataTypefOriginSize}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const int {\bf k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size} = 4}\label{AliHLTDataTypes_8h_a13} + + + + +Definition at line 51 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Copy\-Data\-Type(), Ali\-HLTComponent::Data\-Type2Text(), Ali\-HLTPHOSFile\-Writer::Make\-Filename(), and Ali\-HLTComponent::Set\-Data\-Type().\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTVoidDataSpec@{kAliHLTVoidDataSpec}} +\index{kAliHLTVoidDataSpec@{kAliHLTVoidDataSpec}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTUInt32\_\-t} {\bf k\-Ali\-HLTVoid\-Data\-Spec} = $\sim$({\bf Ali\-HLTUInt32\_\-t})0}\label{AliHLTDataTypes_8h_a16} + + + + +Definition at line 65 of file Ali\-HLTData\-Types.h.\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTVoidDataType@{kAliHLTVoidDataType}} +\index{kAliHLTVoidDataType@{kAliHLTVoidDataType}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf k\-Ali\-HLTVoid\-Data\-Type} = \{sizeof({\bf Ali\-HLTComponent\-Data\-Type}), k\-Ali\-HLTVoid\-Data\-Type\-ID, k\-Ali\-HLTVoid\-Data\-Origin\}}\label{AliHLTDataTypes_8h_a14} + + + + +Definition at line 63 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Ali\-HLTComponent().\index{AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}!kAliHLTVoidEventID@{kAliHLTVoidEventID}} +\index{kAliHLTVoidEventID@{kAliHLTVoidEventID}!AliHLTDataTypes.h@{Ali\-HLTData\-Types.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTEvent\-ID\_\-t} {\bf k\-Ali\-HLTVoid\-Event\-ID} = $\sim$({\bf Ali\-HLTEvent\-ID\_\-t})0}\label{AliHLTDataTypes_8h_a9} + + + + +Definition at line 39 of file Ali\-HLTData\-Types.h. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTDefinitions_8h.tex b/HLT/PHOS/latex/AliHLTDefinitions_8h.tex new file mode 100644 index 00000000000..71855c71c9e --- /dev/null +++ b/HLT/PHOS/latex/AliHLTDefinitions_8h.tex @@ -0,0 +1,32 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTDefinitions.h File Reference} +\label{AliHLTDefinitions_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTDefinitions.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTDefinitions.h}} + + +\subsection{Detailed Description} +Definitions for the HLT module. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTDefinitions.h}. + +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +\subsection*{Variables} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTUInt32\_\-t} {\bf k\-Ali\-HLTBlock\-Alignment} = 64 +\end{CompactItemize} + + +\subsection{Variable Documentation} +\index{AliHLTDefinitions.h@{Ali\-HLTDefinitions.h}!kAliHLTBlockAlignment@{kAliHLTBlockAlignment}} +\index{kAliHLTBlockAlignment@{kAliHLTBlockAlignment}!AliHLTDefinitions.h@{Ali\-HLTDefinitions.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTUInt32\_\-t} {\bf k\-Ali\-HLTBlock\-Alignment} = 64}\label{AliHLTDefinitions_8h_a0} + + + + +Definition at line 16 of file Ali\-HLTDefinitions.h. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTLogging_8cxx.tex b/HLT/PHOS/latex/AliHLTLogging_8cxx.tex new file mode 100644 index 00000000000..f0a4b125c03 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTLogging_8cxx.tex @@ -0,0 +1,37 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTLogging.cxx File Reference} +\label{AliHLTLogging_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTLogging.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTLogging.cxx}} + + +\subsection{Detailed Description} +Implementation of HLT logging primitives. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTLogging.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTStd\-Includes.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent\-Handler.h\char`\"{}}\par +{\tt \#include \char`\"{}TString.h\char`\"{}}\par +{\tt \#include \char`\"{}Varargs.h\char`\"{}}\par +{\tt \#include $<$string$>$}\par +{\tt \#include $<$sstream$>$}\par +{\tt \#include $<$iostream$>$}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTLogging}) +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTLogging.cxx@{Ali\-HLTLogging.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTLogging.cxx@{Ali\-HLTLogging.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTLogging})}\label{AliHLTLogging_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTLogging_8h.tex b/HLT/PHOS/latex/AliHLTLogging_8h.tex new file mode 100644 index 00000000000..744047e5d1f --- /dev/null +++ b/HLT/PHOS/latex/AliHLTLogging_8h.tex @@ -0,0 +1,139 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTLogging.h File Reference} +\label{AliHLTLogging_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTLogging.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTLogging.h}} + + +\subsection{Detailed Description} +HLT module logging primitives. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTLogging.h}. + +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTStd\-Includes.h\char`\"{}}\par +{\tt \#include \char`\"{}TObject.h\char`\"{}}\par +{\tt \#include \char`\"{}TArray\-C.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTLogging} +\item +class {\bf Ali\-HLTKeyword} +\end{CompactItemize} +\subsection*{Defines} +\begin{CompactItemize} +\item +\#define {\bf HLTMessage}()\ Logging\-Varargs(k\-HLTLog\-None, NULL , NULL , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- ) +\item +\#define {\bf FUNCTIONNAME}()\ \char`\"{}???\char`\"{} +\item +\#define {\bf HLTBenchmark}()\ Logging\-Varargs(k\-HLTLog\-Benchmark, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- ) +\item +\#define {\bf HLTDebug}()\ Logging\-Varargs(k\-HLTLog\-Debug, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- ) +\item +\#define {\bf HLTInfo}()\ Logging\-Varargs(k\-HLTLog\-Info, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- ) +\item +\#define {\bf HLTWarning}()\ Logging\-Varargs(k\-HLTLog\-Warning, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- ) +\item +\#define {\bf HLTError}()\ Logging\-Varargs(k\-HLTLog\-Error, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- ) +\item +\#define {\bf HLTFatal}()\ Logging\-Varargs(k\-HLTLog\-Fatal, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- ) +\item +\#define {\bf HLTLog\-Keyword}(a)\ {\bf Ali\-HLTKeyword} hltlog\-Tmpkey\_\-\_\-LINE\_\-\_\-(this, a) +\item +\#define {\bf HLT\_\-DEFAULT\_\-LOG\_\-KEYWORD}\ \char`\"{}no key\char`\"{} +\end{CompactItemize} + + +\subsection{Define Documentation} +\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!FUNCTIONNAME@{FUNCTIONNAME}} +\index{FUNCTIONNAME@{FUNCTIONNAME}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define FUNCTIONNAME()\ \char`\"{}???\char`\"{}}\label{AliHLTLogging_8h_a1} + + + + +Definition at line 33 of file Ali\-HLTLogging.h.\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLT_DEFAULT_LOG_KEYWORD@{HLT\_\-DEFAULT\_\-LOG\_\-KEYWORD}} +\index{HLT_DEFAULT_LOG_KEYWORD@{HLT\_\-DEFAULT\_\-LOG\_\-KEYWORD}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLT\_\-DEFAULT\_\-LOG\_\-KEYWORD\ \char`\"{}no key\char`\"{}}\label{AliHLTLogging_8h_a9} + + + + +Definition at line 47 of file Ali\-HLTLogging.h. + +Referenced by Ali\-HLTConfiguration::Global\-Deinit(), Ali\-HLTConfiguration::Global\-Init(), and Ali\-HLTLogging::Message().\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLTBenchmark@{HLTBenchmark}} +\index{HLTBenchmark@{HLTBenchmark}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLTBenchmark()\ Logging\-Varargs(k\-HLTLog\-Benchmark, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- )}\label{AliHLTLogging_8h_a2} + + + + +Definition at line 37 of file Ali\-HLTLogging.h.\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLTDebug@{HLTDebug}} +\index{HLTDebug@{HLTDebug}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLTDebug()\ Logging\-Varargs(k\-HLTLog\-Debug, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- )}\label{AliHLTLogging_8h_a3} + + + + +Definition at line 38 of file Ali\-HLTLogging.h. + +Referenced by Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), Ali\-HLTComponent\-Handler::Create\-Component(), Ali\-HLTComponent::Create\-Input\-Object(), Ali\-HLTData\-Source::Do\-Processing(), Ali\-HLTComponent::Get\-First\-Input\-Object(), Ali\-HLTSystem::Insert\-Task(), Ali\-HLTSystem::Load\-Configurations(), Ali\-HLTComponent\-Handler::Load\-Library(), Ali\-HLTTask::Process\-Task(), Ali\-HLTSystem::Process\-Tasks(), Ali\-HLTComponent::Push\-Back(), Ali\-HLTComponent\-Handler::Register\-Component(), Ali\-HLTConfiguration\-Handler::Register\-Configuration(), Ali\-HLTConfiguration\-Handler::Remove\-Configuration(), Ali\-HLTData\-Buffer::Set\-Consumer(), Ali\-HLTData\-Buffer::Set\-Segments(), Ali\-HLTTask::Start\-Run(), Ali\-HLTData\-Buffer::Subscribe(), Ali\-HLTComponent\-Handler::Unload\-Library(), and Ali\-HLTConfiguration\-Handler::$\sim$Ali\-HLTConfiguration\-Handler().\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLTError@{HLTError}} +\index{HLTError@{HLTError}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLTError()\ Logging\-Varargs(k\-HLTLog\-Error, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- )}\label{AliHLTLogging_8h_a6} + + + + +Definition at line 41 of file Ali\-HLTLogging.h. + +Referenced by Ali\-HLTConfiguration::Ali\-HLTConfiguration(), Ali\-HLTSystem::Build\-Task\-List(), Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), Ali\-HLTData\-Buffer::Change\-Consumer\-State(), Class\-Imp(), Ali\-HLTSystem::Configure(), Ali\-HLTComponent\-Handler::Create\-Component(), Ali\-HLTConfiguration\-Handler::Create\-Configuration(), Ali\-HLTComponent::Create\-Input\-Object(), Ali\-HLTConfiguration::Extract\-Sources(), Ali\-HLTSystem::Fill\-ESD(), Ali\-HLTConfiguration::Get\-Arguments(), Ali\-HLTComponent::Get\-Data\-Type(), Ali\-HLTTask::Get\-Nof\-Matching\-Data\-Types(), Ali\-HLTComponent::Get\-Specification(), Ali\-HLTData\-Buffer::Get\-Target\-Buffer(), Ali\-HLTTask::Init(), Ali\-HLTComponent::Init(), Ali\-HLTComponent::Insert\-Output\-Block(), Ali\-HLTSystem::Insert\-Task(), Ali\-HLTSystem::Load\-Configurations(), Ali\-HLTComponent\-Handler::Load\-Library(), Ali\-HLTComponent::Process\-Event(), Ali\-HLTTask::Process\-Task(), Ali\-HLTComponent::Push\-Back(), Ali\-HLTSystem::Reconstruct(), Ali\-HLTData\-Buffer::Release(), Ali\-HLTSystem::Reset(), Ali\-HLTSystem::Run(), Ali\-HLTData\-Buffer::Set\-Consumer(), Ali\-HLTData\-Buffer::Set\-Segments(), Ali\-HLTTask::Start\-Run(), Ali\-HLTData\-Buffer::Subscribe(), and Ali\-HLTComponent\-Handler::Unload\-Library().\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLTFatal@{HLTFatal}} +\index{HLTFatal@{HLTFatal}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLTFatal()\ Logging\-Varargs(k\-HLTLog\-Fatal, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- )}\label{AliHLTLogging_8h_a7} + + + + +Definition at line 42 of file Ali\-HLTLogging.h. + +Referenced by Ali\-HLTComponent::Ali\-HLTComponent(), Ali\-HLTComponent\-Handler::Ali\-HLTComponent\-Handler(), Ali\-HLTData\-Buffer::Ali\-HLTData\-Buffer(), Ali\-HLTLogging::Ali\-HLTLogging(), Ali\-HLTOffline\-Data\-Sink::Ali\-HLTOffline\-Data\-Sink(), Ali\-HLTOffline\-Data\-Source::Ali\-HLTOffline\-Data\-Source(), Ali\-HLTSystem::Ali\-HLTSystem(), Ali\-HLTTask::Ali\-HLTTask(), Ali\-HLTComponent::Alloc\-Memory(), Class\-Imp(), Ali\-HLTComponent::Create\-Input\-Object(), Ali\-HLTProcessor::Do\-Event(), Ali\-HLTData\-Sink::Dump\-Event(), Ali\-HLTConfiguration::Extract\-Sources(), Ali\-HLTComponent::Get\-Data\-Type(), Ali\-HLTData\-Source::Get\-Event(), Ali\-HLTComponent::Get\-Input\-Object(), Ali\-HLTTask::Get\-Nof\-Matching\-Data\-Blocks(), Ali\-HLTTask::Get\-Nof\-Matching\-Data\-Types(), Ali\-HLTComponent::Get\-Specification(), Ali\-HLTSystem::Load\-Component\-Libraries(), Ali\-HLTPHOSRaw\-Analyzer\-Peak\-Finder\-Component::Load\-PFVector(), Ali\-HLTSystem::operator=(), Ali\-HLTOffline\-Data\-Source::operator=(), Ali\-HLTOffline\-Data\-Sink::operator=(), Ali\-HLTLogging::operator=(), Ali\-HLTData\-Buffer::operator=(), Ali\-HLTTask::operator=(), Ali\-HLTComponent\-Handler::operator=(), Ali\-HLTComponent::operator=(), Ali\-HLTComponent::Process\-Event(), Ali\-HLTTask::Process\-Task(), Ali\-HLTTask::Release(), Ali\-HLTData\-Buffer::Set\-Segments(), Ali\-HLTTask::Start\-Run(), and Ali\-HLTTask::Subscribe().\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLTInfo@{HLTInfo}} +\index{HLTInfo@{HLTInfo}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLTInfo()\ Logging\-Varargs(k\-HLTLog\-Info, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- )}\label{AliHLTLogging_8h_a4} + + + + +Definition at line 39 of file Ali\-HLTLogging.h. + +Referenced by Ali\-HLTComponent\-Handler::Announce\-Version(), Ali\-HLTSystem::Fill\-ESD(), Ali\-HLTComponent\-Handler::List(), Ali\-HLTComponent\-Handler::Load\-Library(), Ali\-HLTSystem::Reconstruct(), Ali\-HLTComponent\-Handler::Register\-Component(), and Ali\-HLTSystem::Run().\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLTLogKeyword@{HLTLogKeyword}} +\index{HLTLogKeyword@{HLTLogKeyword}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLTLog\-Keyword(a)\ {\bf Ali\-HLTKeyword} hltlog\-Tmpkey\_\-\_\-LINE\_\-\_\-(this, a)}\label{AliHLTLogging_8h_a8} + + + + +Definition at line 45 of file Ali\-HLTLogging.h. + +Referenced by Ali\-HLTConfiguration\-Handler::Print\-Configurations(), Ali\-HLTTask::Print\-Dependency\-Tree(), Ali\-HLTTask::Print\-Status(), Ali\-HLTConfiguration::Print\-Status(), and Ali\-HLTSystem::Print\-Task\-List().\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLTMessage@{HLTMessage}} +\index{HLTMessage@{HLTMessage}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLTMessage()\ Logging\-Varargs(k\-HLTLog\-None, NULL , NULL , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- )}\label{AliHLTLogging_8h_a0} + + + + +Definition at line 27 of file Ali\-HLTLogging.h. + +Referenced by Ali\-HLTConfiguration\-Handler::Print\-Configurations(), Ali\-HLTComponent::Print\-Data\-Type\-Content(), Ali\-HLTTask::Print\-Dependency\-Tree(), Ali\-HLTTask::Print\-Status(), Ali\-HLTConfiguration::Print\-Status(), and Ali\-HLTSystem::Print\-Task\-List().\index{AliHLTLogging.h@{Ali\-HLTLogging.h}!HLTWarning@{HLTWarning}} +\index{HLTWarning@{HLTWarning}!AliHLTLogging.h@{Ali\-HLTLogging.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define HLTWarning()\ Logging\-Varargs(k\-HLTLog\-Warning, Class\_\-Name() , FUNCTIONNAME() , \_\-\_\-FILE\_\-\_\- , \_\-\_\-LINE\_\-\_\- , \_\-\_\-VA\_\-ARGS\_\-\_\- )}\label{AliHLTLogging_8h_a5} + + + + +Definition at line 40 of file Ali\-HLTLogging.h. + +Referenced by Ali\-HLTSystem::Ali\-HLTSystem(), Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), Class\-Imp(), Ali\-HLTComponent\-Handler::Create\-Component(), Ali\-HLTComponent::Create\-Event\-Done\-Data(), Ali\-HLTTask::Deinit(), Ali\-HLTComponent\-Handler::Deregister\-Component(), Ali\-HLTData\-Source::Do\-Processing(), Ali\-HLTTask::End\-Run(), Ali\-HLTTask::Init(), Ali\-HLTSystem::Init\-Benchmarking(), Ali\-HLTSystem::Init\-Tasks(), Ali\-HLTConfiguration\-Handler::Register\-Configuration(), Ali\-HLTData\-Buffer::Release(), Ali\-HLTConfiguration\-Handler::Remove\-Configuration(), Ali\-HLTData\-Buffer::Reset\-Data\-Buffer(), Ali\-HLTData\-Buffer::Set\-Consumer(), Ali\-HLTComponent::Set\-Data\-Type(), Ali\-HLTComponent::Set\-Stopwatch(), Ali\-HLTTask::Start\-Run(), and Ali\-HLTComponent\-Handler::Unload\-Library(). \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTMessage_8cxx.tex b/HLT/PHOS/latex/AliHLTMessage_8cxx.tex new file mode 100644 index 00000000000..92456a9401e --- /dev/null +++ b/HLT/PHOS/latex/AliHLTMessage_8cxx.tex @@ -0,0 +1,104 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTMessage.cxx File Reference} +\label{AliHLTMessage_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTMessage.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTMessage.cxx}} + + +\subsection{Detailed Description} +Serialization of Root objects in the ALICE HLT. + +\begin{Desc} +\item[Author:]Matthias Richter (customization of Root TMessage ) \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTMessage.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTMessage.h\char`\"{}}\par +{\tt \#include \char`\"{}Bytes.h\char`\"{}}\par +{\tt \#include \char`\"{}TFile.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +void {\bf R\_\-\_\-zip} (Int\_\-t cxlevel, Int\_\-t $\ast$nin, char $\ast$bufin, Int\_\-t $\ast$lout, char $\ast$bufout, Int\_\-t $\ast$nout) +\item +void {\bf R\_\-\_\-unzip} (Int\_\-t $\ast$nin, UChar\_\-t $\ast$bufin, Int\_\-t $\ast$lout, char $\ast$bufout, Int\_\-t $\ast$nout) +\item +{\bf Class\-Imp} ({\bf Ali\-HLTMessage}) {\bf Ali\-HLTMessage} +\end{CompactItemize} +\subsection*{Variables} +\begin{CompactItemize} +\item +const Int\_\-t {\bf k\-MAXBUF} = 0xffffff +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTMessage.cxx@{Ali\-HLTMessage.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTMessage.cxx@{Ali\-HLTMessage.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTMessage})}\label{AliHLTMessage_8cxx_a3} + + + + +Definition at line 40 of file Ali\-HLTMessage.cxx. + +\footnotesize\begin{verbatim}44 : +45 # ifdef ROOT_TBufferFile +46 TBufferFile(kWrite), +47 # else +48 TBuffer(kWrite), +49 # endif +50 AliHLTLogging() +51 { +52 // Create a AliHLTMessage object for storing objects. The "what" integer +53 // describes the type of message. Predifined ROOT system message types +54 // can be found in MessageTypes.h. Make sure your own message types are +55 // unique from the ROOT defined message types (i.e. 0 - 10000 are +56 // reserved by ROOT). In case you OR "what" with kMESS_ACK, the message +57 // will wait for an acknowledgement from the remote side. This makes +58 // the sending process synchronous. In case you OR "what" with kMESS_ZIP, +59 // the message will be compressed in TSocket using the zip algorithm +60 // (only if message is > 256 bytes). +61 +62 // space at the beginning of the message reserved for the message length +63 UInt_t reserved = 0; +64 *this << reserved; +65 +66 fWhat = what; +67 *this << what; +68 +69 fClass = 0; +70 fCompress = 0; +71 fBufComp = 0; +72 fBufCompCur = 0; +73 fCompPos = 0; +74 } + +\end{verbatim}\normalsize + + +\index{AliHLTMessage.cxx@{Ali\-HLTMessage.cxx}!R__unzip@{R\_\-\_\-unzip}} +\index{R__unzip@{R\_\-\_\-unzip}!AliHLTMessage.cxx@{Ali\-HLTMessage.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void R\_\-\_\-unzip (Int\_\-t $\ast$ {\em nin}, UChar\_\-t $\ast$ {\em bufin}, Int\_\-t $\ast$ {\em lout}, char $\ast$ {\em bufout}, Int\_\-t $\ast$ {\em nout})}\label{AliHLTMessage_8cxx_a2} + + + + +Referenced by Ali\-HLTMessage::Uncompress().\index{AliHLTMessage.cxx@{Ali\-HLTMessage.cxx}!R__zip@{R\_\-\_\-zip}} +\index{R__zip@{R\_\-\_\-zip}!AliHLTMessage.cxx@{Ali\-HLTMessage.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void R\_\-\_\-zip (Int\_\-t {\em cxlevel}, Int\_\-t $\ast$ {\em nin}, char $\ast$ {\em bufin}, Int\_\-t $\ast$ {\em lout}, char $\ast$ {\em bufout}, Int\_\-t $\ast$ {\em nout})}\label{AliHLTMessage_8cxx_a1} + + + + +Referenced by Ali\-HLTMessage::Compress(). + +\subsection{Variable Documentation} +\index{AliHLTMessage.cxx@{Ali\-HLTMessage.cxx}!kMAXBUF@{kMAXBUF}} +\index{kMAXBUF@{kMAXBUF}!AliHLTMessage.cxx@{Ali\-HLTMessage.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const Int\_\-t {\bf k\-MAXBUF} = 0xffffff}\label{AliHLTMessage_8cxx_a0} + + + + +Definition at line 37 of file Ali\-HLTMessage.cxx. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTMessage_8h.tex b/HLT/PHOS/latex/AliHLTMessage_8h.tex new file mode 100644 index 00000000000..270c8fe29e1 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTMessage_8h.tex @@ -0,0 +1,23 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTMessage.h File Reference} +\label{AliHLTMessage_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTMessage.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTMessage.h}} + + +\subsection{Detailed Description} +Serialization of Root objects in the ALICE HLT. + +\begin{Desc} +\item[Author:]Matthias Richter (customization of Root TMessage ) \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTMessage.h}. + +{\tt \#include \char`\"{}TMessage.h\char`\"{}}\par +{\tt \#include \char`\"{}Message\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTMessage} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTModuleAgent_8cxx.tex b/HLT/PHOS/latex/AliHLTModuleAgent_8cxx.tex new file mode 100644 index 00000000000..f899ea2d924 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTModuleAgent_8cxx.tex @@ -0,0 +1,46 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTModule\-Agent.cxx File Reference} +\label{AliHLTModuleAgent_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTModuleAgent.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTModuleAgent.cxx}} + + +\subsection{Detailed Description} +Agent helper class for component libraries. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is used in Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTModule\-Agent.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTModule\-Agent.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTModule\-Agent}) {\bf Ali\-HLTModule\-Agent} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTModuleAgent.cxx@{Ali\-HLTModule\-Agent.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTModuleAgent.cxx@{Ali\-HLTModule\-Agent.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTModule\-Agent})}\label{AliHLTModuleAgent_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 28 of file Ali\-HLTModule\-Agent.cxx. + +\footnotesize\begin{verbatim}31 { +32 // see header file for class documentation +33 // or +34 // refer to README to build package +35 // or +36 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +37 Register(this); +38 } +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTModuleAgent_8h.tex b/HLT/PHOS/latex/AliHLTModuleAgent_8h.tex new file mode 100644 index 00000000000..dea2e44bf6c --- /dev/null +++ b/HLT/PHOS/latex/AliHLTModuleAgent_8h.tex @@ -0,0 +1,27 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTModule\-Agent.h File Reference} +\label{AliHLTModuleAgent_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTModuleAgent.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTModuleAgent.h}} + + +\subsection{Detailed Description} +Agent helper class for component libraries. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is used in Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTModule\-Agent.h}. + +{\tt \#include $<$TObject.h$>$}\par +{\tt \#include $<$TList.h$>$}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTConfiguration.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTConfiguration\-Handler.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTModule\-Agent} +\begin{CompactList}\small\item\em Agent helper class for HLT sub modules, e.g. PHOS, TPC, Trigger. \item\end{CompactList}\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTOfflineDataSink_8cxx.tex b/HLT/PHOS/latex/AliHLTOfflineDataSink_8cxx.tex new file mode 100644 index 00000000000..3e563b331f7 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTOfflineDataSink_8cxx.tex @@ -0,0 +1,43 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTOffline\-Data\-Sink.cxx File Reference} +\label{AliHLTOfflineDataSink_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTOfflineDataSink.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTOfflineDataSink.cxx}} + + +\subsection{Detailed Description} +Ali\-Root data sink component base class. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTOffline\-Data\-Sink.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTOffline\-Data\-Sink.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTOffline\-Data\-Sink}) {\bf Ali\-HLTOffline\-Data\-Sink} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTOfflineDataSink.cxx@{Ali\-HLTOffline\-Data\-Sink.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTOfflineDataSink.cxx@{Ali\-HLTOffline\-Data\-Sink.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTOffline\-Data\-Sink})}\label{AliHLTOfflineDataSink_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 27 of file Ali\-HLTOffline\-Data\-Sink.cxx. + +\footnotesize\begin{verbatim}30 { +31 // see header file for class documentation +32 // or +33 // refer to README to build package +34 // or +35 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +36 } +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTOfflineDataSink_8h.tex b/HLT/PHOS/latex/AliHLTOfflineDataSink_8h.tex new file mode 100644 index 00000000000..0a89dad2db4 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTOfflineDataSink_8h.tex @@ -0,0 +1,22 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTOffline\-Data\-Sink.h File Reference} +\label{AliHLTOfflineDataSink_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTOfflineDataSink.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTOfflineDataSink.h}} + + +\subsection{Detailed Description} +Ali\-Root data sink component base class. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTOffline\-Data\-Sink.h}. + +{\tt \#include \char`\"{}Ali\-HLTData\-Sink.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTOffline\-Interface.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTOffline\-Data\-Sink} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTOfflineDataSource_8cxx.tex b/HLT/PHOS/latex/AliHLTOfflineDataSource_8cxx.tex new file mode 100644 index 00000000000..214b9ee97c3 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTOfflineDataSource_8cxx.tex @@ -0,0 +1,44 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTOffline\-Data\-Source.cxx File Reference} +\label{AliHLTOfflineDataSource_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTOfflineDataSource.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTOfflineDataSource.cxx}} + + +\subsection{Detailed Description} +Ali\-Root data source component base class. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTOffline\-Data\-Source.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTOffline\-Data\-Source.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTOffline\-Data\-Source}) {\bf Ali\-HLTOffline\-Data\-Source} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTOfflineDataSource.cxx@{Ali\-HLTOffline\-Data\-Source.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTOfflineDataSource.cxx@{Ali\-HLTOffline\-Data\-Source.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTOffline\-Data\-Source})}\label{AliHLTOfflineDataSource_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 27 of file Ali\-HLTOffline\-Data\-Source.cxx. + +\footnotesize\begin{verbatim}30 { +31 // see header file for class documentation +32 // or +33 // refer to README to build package +34 // or +35 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +36 Register(this); +37 } +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTOfflineDataSource_8h.tex b/HLT/PHOS/latex/AliHLTOfflineDataSource_8h.tex new file mode 100644 index 00000000000..15a29f4af6c --- /dev/null +++ b/HLT/PHOS/latex/AliHLTOfflineDataSource_8h.tex @@ -0,0 +1,22 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTOffline\-Data\-Source.h File Reference} +\label{AliHLTOfflineDataSource_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTOfflineDataSource.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTOfflineDataSource.h}} + + +\subsection{Detailed Description} +Ali\-Root data sink component base class. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTOffline\-Data\-Source.h}. + +{\tt \#include \char`\"{}Ali\-HLTData\-Source.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTOffline\-Interface.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTOffline\-Data\-Source} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTOfflineInterface_8cxx.tex b/HLT/PHOS/latex/AliHLTOfflineInterface_8cxx.tex new file mode 100644 index 00000000000..c3bfaa8516f --- /dev/null +++ b/HLT/PHOS/latex/AliHLTOfflineInterface_8cxx.tex @@ -0,0 +1,49 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTOffline\-Interface.cxx File Reference} +\label{AliHLTOfflineInterface_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTOfflineInterface.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTOfflineInterface.cxx}} + + +\subsection{Detailed Description} +the HLT interface to Ali\-Root + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTOffline\-Interface.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTOffline\-Interface.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTOffline\-Interface}) {\bf Ali\-HLTOffline\-Interface} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTOfflineInterface.cxx@{Ali\-HLTOffline\-Interface.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTOfflineInterface.cxx@{Ali\-HLTOffline\-Interface.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTOffline\-Interface})}\label{AliHLTOfflineInterface_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 28 of file Ali\-HLTOffline\-Interface.cxx. + +\footnotesize\begin{verbatim}31 : +32 fpRunLoader(NULL), +33 fpRawReader(NULL), +34 fpESD(NULL) +35 { +36 // see header file for class documentation +37 // or +38 // refer to README to build package +39 // or +40 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +41 } + +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTOfflineInterface_8h.tex b/HLT/PHOS/latex/AliHLTOfflineInterface_8h.tex new file mode 100644 index 00000000000..308b87e84b4 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTOfflineInterface_8h.tex @@ -0,0 +1,22 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTOffline\-Interface.h File Reference} +\label{AliHLTOfflineInterface_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTOfflineInterface.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTOfflineInterface.h}} + + +\subsection{Detailed Description} +the HLT interface to Ali\-Root + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTOffline\-Interface.h}. + +{\tt \#include $<$TObject.h$>$}\par +{\tt \#include $<$TList.h$>$}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTOffline\-Interface} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSCellEnergiesFileWriter_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSCellEnergiesFileWriter_8cxx.tex new file mode 100644 index 00000000000..fe515179c31 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSCellEnergiesFileWriter_8cxx.tex @@ -0,0 +1,5 @@ +\section{Ali\-HLTPHOSCell\-Energies\-File\-Writer.cxx File Reference} +\label{AliHLTPHOSCellEnergiesFileWriter_8cxx}\index{AliHLTPHOSCellEnergiesFileWriter.cxx@{AliHLTPHOSCellEnergiesFileWriter.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSCell\-Energies\-File\-Writer.h\char`\"{}}\par diff --git a/HLT/PHOS/latex/AliHLTPHOSCellEnergiesFileWriter_8h.tex b/HLT/PHOS/latex/AliHLTPHOSCellEnergiesFileWriter_8h.tex new file mode 100644 index 00000000000..e33fddee2f5 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSCellEnergiesFileWriter_8h.tex @@ -0,0 +1,13 @@ +\section{Ali\-HLTPHOSCell\-Energies\-File\-Writer.h File Reference} +\label{AliHLTPHOSCellEnergiesFileWriter_8h}\index{AliHLTPHOSCellEnergiesFileWriter.h@{AliHLTPHOSCellEnergiesFileWriter.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSFile\-Writer.h\char`\"{}}\par +{\tt \#include $<$string$>$}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSCell\-Energies\-File\-Writer} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSDDLDecoderComponent_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSDDLDecoderComponent_8cxx.tex new file mode 100644 index 00000000000..402441012d9 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSDDLDecoderComponent_8cxx.tex @@ -0,0 +1,27 @@ +\section{Ali\-HLTPHOSDDLDecoder\-Component.cxx File Reference} +\label{AliHLTPHOSDDLDecoderComponent_8cxx}\index{AliHLTPHOSDDLDecoderComponent.cxx@{AliHLTPHOSDDLDecoderComponent.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSDDLDecoder\-Component.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +{\tt \#include \char`\"{}stdio.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Raw\-Reader\-Memory.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Calo\-Raw\-Stream.h\char`\"{}}\par +{\tt \#include $<$cstdlib$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h\char`\"{}}\par +\subsection*{Variables} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSDDLDecoder\-Component} {\bf g\-Ali\-HLTPHOSDDLDecoder\-Component} +\end{CompactItemize} + + +\subsection{Variable Documentation} +\index{AliHLTPHOSDDLDecoderComponent.cxx@{Ali\-HLTPHOSDDLDecoder\-Component.cxx}!gAliHLTPHOSDDLDecoderComponent@{gAliHLTPHOSDDLDecoderComponent}} +\index{gAliHLTPHOSDDLDecoderComponent@{gAliHLTPHOSDDLDecoderComponent}!AliHLTPHOSDDLDecoderComponent.cxx@{Ali\-HLTPHOSDDLDecoder\-Component.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSDDLDecoder\-Component} {\bf g\-Ali\-HLTPHOSDDLDecoder\-Component}}\label{AliHLTPHOSDDLDecoderComponent_8cxx_a0} + + + + +Definition at line 27 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTPHOSDDLDecoderComponent_8h.tex b/HLT/PHOS/latex/AliHLTPHOSDDLDecoderComponent_8h.tex new file mode 100644 index 00000000000..7d81b52c1dd --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSDDLDecoderComponent_8h.tex @@ -0,0 +1,17 @@ +\section{Ali\-HLTPHOSDDLDecoder\-Component.h File Reference} +\label{AliHLTPHOSDDLDecoderComponent_8h}\index{AliHLTPHOSDDLDecoderComponent.h@{AliHLTPHOSDDLDecoderComponent.h}} + + +{\tt \#include \char`\"{}Ali\-HLTProcessor.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRaw\-Analyzer.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Raw\-Reader\-Memory.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Calo\-Raw\-Stream.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSDefinitions.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h\char`\"{}}\par +{\tt \#include $<$cstdlib$>$}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSDDLDecoder\-Component} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSDDLPackedFileWriter_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSDDLPackedFileWriter_8cxx.tex new file mode 100644 index 00000000000..07cf6f4d594 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSDDLPackedFileWriter_8cxx.tex @@ -0,0 +1,5 @@ +\section{Ali\-HLTPHOSDDLPacked\-File\-Writer.cxx File Reference} +\label{AliHLTPHOSDDLPackedFileWriter_8cxx}\index{AliHLTPHOSDDLPackedFileWriter.cxx@{AliHLTPHOSDDLPackedFileWriter.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSDDLPacked\-File\-Writer.h\char`\"{}}\par diff --git a/HLT/PHOS/latex/AliHLTPHOSDDLPackedFileWriter_8h.tex b/HLT/PHOS/latex/AliHLTPHOSDDLPackedFileWriter_8h.tex new file mode 100644 index 00000000000..392458fe99b --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSDDLPackedFileWriter_8h.tex @@ -0,0 +1,12 @@ +\section{Ali\-HLTPHOSDDLPacked\-File\-Writer.h File Reference} +\label{AliHLTPHOSDDLPackedFileWriter_8h}\index{AliHLTPHOSDDLPackedFileWriter.h@{AliHLTPHOSDDLPackedFileWriter.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSFile\-Writer.h\char`\"{}}\par +{\tt \#include $<$string$>$}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSDDLPacked\-File\-Writer} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSDataHeaderStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSDataHeaderStruct_8h.tex new file mode 100644 index 00000000000..951dbd87afa --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSDataHeaderStruct_8h.tex @@ -0,0 +1,10 @@ +\section{Ali\-HLTPHOSData\-Header\-Struct.h File Reference} +\label{AliHLTPHOSDataHeaderStruct_8h}\index{AliHLTPHOSDataHeaderStruct.h@{AliHLTPHOSDataHeaderStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSData\-Header\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSDefinitions_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSDefinitions_8cxx.tex new file mode 100644 index 00000000000..143ea64aa02 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSDefinitions_8cxx.tex @@ -0,0 +1,5 @@ +\section{Ali\-HLTPHOSDefinitions.cxx File Reference} +\label{AliHLTPHOSDefinitions_8cxx}\index{AliHLTPHOSDefinitions.cxx@{AliHLTPHOSDefinitions.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSDefinitions.h\char`\"{}}\par diff --git a/HLT/PHOS/latex/AliHLTPHOSDefinitions_8h.tex b/HLT/PHOS/latex/AliHLTPHOSDefinitions_8h.tex new file mode 100644 index 00000000000..13036cf369e --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSDefinitions_8h.tex @@ -0,0 +1,11 @@ +\section{Ali\-HLTPHOSDefinitions.h File Reference} +\label{AliHLTPHOSDefinitions_8h}\index{AliHLTPHOSDefinitions.h@{AliHLTPHOSDefinitions.h}} + + +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Rtypes.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSDefinitions} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSFileWriterComponent_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSFileWriterComponent_8cxx.tex new file mode 100644 index 00000000000..91548234781 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSFileWriterComponent_8cxx.tex @@ -0,0 +1,31 @@ +\section{Ali\-HLTPHOSFile\-Writer\-Component.cxx File Reference} +\label{AliHLTPHOSFileWriterComponent_8cxx}\index{AliHLTPHOSFileWriterComponent.cxx@{AliHLTPHOSFileWriterComponent.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSFile\-Writer\-Component.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +{\tt \#include $<$TObj\-String.h$>$}\par +{\tt \#include \char`\"{}Ali\-Raw\-Reader\-Memory.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Calo\-Raw\-Stream.h\char`\"{}}\par +{\tt \#include $<$cstdlib$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSData\-Header\-Struct.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSDDLPacked\-File\-Writer.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCell\-Energies\-File\-Writer.h\char`\"{}}\par +\subsection*{Variables} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSFile\-Writer\-Component} {\bf g\-Ali\-HLTPHOSFile\-Writer\-Component} +\end{CompactItemize} + + +\subsection{Variable Documentation} +\index{AliHLTPHOSFileWriterComponent.cxx@{Ali\-HLTPHOSFile\-Writer\-Component.cxx}!gAliHLTPHOSFileWriterComponent@{gAliHLTPHOSFileWriterComponent}} +\index{gAliHLTPHOSFileWriterComponent@{gAliHLTPHOSFileWriterComponent}!AliHLTPHOSFileWriterComponent.cxx@{Ali\-HLTPHOSFile\-Writer\-Component.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSFile\-Writer\-Component} {\bf g\-Ali\-HLTPHOSFile\-Writer\-Component}}\label{AliHLTPHOSFileWriterComponent_8cxx_a0} + + + + +Definition at line 35 of file Ali\-HLTPHOSFile\-Writer\-Component.cxx. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTPHOSFileWriterComponent_8h.tex b/HLT/PHOS/latex/AliHLTPHOSFileWriterComponent_8h.tex new file mode 100644 index 00000000000..7886709099b --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSFileWriterComponent_8h.tex @@ -0,0 +1,15 @@ +\section{Ali\-HLTPHOSFile\-Writer\-Component.h File Reference} +\label{AliHLTPHOSFileWriterComponent_8h}\index{AliHLTPHOSFileWriterComponent.h@{AliHLTPHOSFileWriterComponent.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSDefinitions.h\char`\"{}}\par +{\tt \#include $<$string$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include \char`\"{}Rtypes.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTFile\-Writer.h\char`\"{}}\par +{\tt \#include $<$vector$>$}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSFile\-Writer\-Component} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSFileWriter_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSFileWriter_8cxx.tex new file mode 100644 index 00000000000..6a1b6df312b --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSFileWriter_8cxx.tex @@ -0,0 +1,7 @@ +\section{Ali\-HLTPHOSFile\-Writer.cxx File Reference} +\label{AliHLTPHOSFileWriter_8cxx}\index{AliHLTPHOSFileWriter.cxx@{AliHLTPHOSFileWriter.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSFile\-Writer.h\char`\"{}}\par +{\tt \#include $<$string$>$}\par +{\tt \#include $<$cstdlib$>$}\par diff --git a/HLT/PHOS/latex/AliHLTPHOSFileWriter_8h.tex b/HLT/PHOS/latex/AliHLTPHOSFileWriter_8h.tex new file mode 100644 index 00000000000..e429f7d4c6d --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSFileWriter_8h.tex @@ -0,0 +1,13 @@ +\section{Ali\-HLTPHOSFile\-Writer.h File Reference} +\label{AliHLTPHOSFileWriter_8h}\index{AliHLTPHOSFileWriter.h@{AliHLTPHOSFileWriter.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSFile\-Writer.h\char`\"{}}\par +{\tt \#include $<$string$>$}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSFile\-Writer} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSGetEventButton_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSGetEventButton_8cxx.tex new file mode 100644 index 00000000000..8d108921ed0 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSGetEventButton_8cxx.tex @@ -0,0 +1,7 @@ +\section{Online\-Display/Ali\-HLTPHOSGet\-Event\-Button.cxx File Reference} +\label{AliHLTPHOSGetEventButton_8cxx}\index{OnlineDisplay/AliHLTPHOSGetEventButton.cxx@{OnlineDisplay/AliHLTPHOSGetEventButton.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSGet\-Event\-Button.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSOnline\-Display.h\char`\"{}}\par diff --git a/HLT/PHOS/latex/AliHLTPHOSGetEventButton_8h.tex b/HLT/PHOS/latex/AliHLTPHOSGetEventButton_8h.tex new file mode 100644 index 00000000000..ff3ce5a47ee --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSGetEventButton_8h.tex @@ -0,0 +1,11 @@ +\section{Online\-Display/Ali\-HLTPHOSGet\-Event\-Button.h File Reference} +\label{AliHLTPHOSGetEventButton_8h}\index{OnlineDisplay/AliHLTPHOSGetEventButton.h@{OnlineDisplay/AliHLTPHOSGetEventButton.h}} + + +{\tt \#include $<$TGButton.h$>$}\par +{\tt \#include $<$TGFrame.h$>$}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSGet\-Event\-Button} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSHistogramProducerComponent_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSHistogramProducerComponent_8cxx.tex new file mode 100644 index 00000000000..0f63e0902c6 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSHistogramProducerComponent_8cxx.tex @@ -0,0 +1,26 @@ +\section{Ali\-HLTPHOSHistogram\-Producer\-Component.cxx File Reference} +\label{AliHLTPHOSHistogramProducerComponent_8cxx}\index{AliHLTPHOSHistogramProducerComponent.cxx@{AliHLTPHOSHistogramProducerComponent.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSHistogram\-Producer\-Component.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Raw\-Reader\-Memory.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Calo\-Raw\-Stream.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct.h\char`\"{}}\par +\subsection*{Variables} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\bf g\-Ali\-HLTPHOSHistogram\-Producer\-Component} +\end{CompactItemize} + + +\subsection{Variable Documentation} +\index{AliHLTPHOSHistogramProducerComponent.cxx@{Ali\-HLTPHOSHistogram\-Producer\-Component.cxx}!gAliHLTPHOSHistogramProducerComponent@{gAliHLTPHOSHistogramProducerComponent}} +\index{gAliHLTPHOSHistogramProducerComponent@{gAliHLTPHOSHistogramProducerComponent}!AliHLTPHOSHistogramProducerComponent.cxx@{Ali\-HLTPHOSHistogram\-Producer\-Component.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\bf g\-Ali\-HLTPHOSHistogram\-Producer\-Component}}\label{AliHLTPHOSHistogramProducerComponent_8cxx_a0} + + + + +Definition at line 32 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTPHOSHistogramProducerComponent_8h.tex b/HLT/PHOS/latex/AliHLTPHOSHistogramProducerComponent_8h.tex new file mode 100644 index 00000000000..5c65ac1d215 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSHistogramProducerComponent_8h.tex @@ -0,0 +1,12 @@ +\section{Ali\-HLTPHOSHistogram\-Producer\-Component.h File Reference} +\label{AliHLTPHOSHistogramProducerComponent_8h}\index{AliHLTPHOSHistogramProducerComponent.h@{AliHLTPHOSHistogramProducerComponent.h}} + + +{\tt \#include \char`\"{}Ali\-HLTProcessor.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSDefinitions.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSModuleCellAccumulatedEnergyDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSModuleCellAccumulatedEnergyDataStruct_8h.tex new file mode 100644 index 00000000000..2a18f63772c --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSModuleCellAccumulatedEnergyDataStruct_8h.tex @@ -0,0 +1,10 @@ +\section{Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct.h File Reference} +\label{AliHLTPHOSModuleCellAccumulatedEnergyDataStruct_8h}\index{AliHLTPHOSModuleCellAccumulatedEnergyDataStruct.h@{AliHLTPHOSModuleCellAccumulatedEnergyDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSModuleCellAverageEnergyDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSModuleCellAverageEnergyDataStruct_8h.tex new file mode 100644 index 00000000000..e357e2a9e17 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSModuleCellAverageEnergyDataStruct_8h.tex @@ -0,0 +1,10 @@ +\section{Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct.h File Reference} +\label{AliHLTPHOSModuleCellAverageEnergyDataStruct_8h}\index{AliHLTPHOSModuleCellAverageEnergyDataStruct.h@{AliHLTPHOSModuleCellAverageEnergyDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSModuleCellEnergyDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSModuleCellEnergyDataStruct_8h.tex new file mode 100644 index 00000000000..69d73182570 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSModuleCellEnergyDataStruct_8h.tex @@ -0,0 +1,11 @@ +\section{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct.h File Reference} +\label{AliHLTPHOSModuleCellEnergyDataStruct_8h}\index{AliHLTPHOSModuleCellEnergyDataStruct.h@{AliHLTPHOSModuleCellEnergyDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSModuleMergerComponent_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSModuleMergerComponent_8cxx.tex new file mode 100644 index 00000000000..a7a08719787 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSModuleMergerComponent_8cxx.tex @@ -0,0 +1,25 @@ +\section{Ali\-HLTPHOSModule\-Merger\-Component.cxx File Reference} +\label{AliHLTPHOSModuleMergerComponent_8cxx}\index{AliHLTPHOSModuleMergerComponent.cxx@{AliHLTPHOSModuleMergerComponent.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSModule\-Merger\-Component.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Raw\-Reader\-Memory.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-Calo\-Raw\-Stream.h\char`\"{}}\par +{\tt \#include $<$cstdio$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h\char`\"{}}\par +\subsection*{Variables} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSModule\-Merger\-Component} {\bf g\-Ali\-HLTPHOSModule\-Merger\-Component} +\end{CompactItemize} + + +\subsection{Variable Documentation} +\index{AliHLTPHOSModuleMergerComponent.cxx@{Ali\-HLTPHOSModule\-Merger\-Component.cxx}!gAliHLTPHOSModuleMergerComponent@{gAliHLTPHOSModuleMergerComponent}} +\index{gAliHLTPHOSModuleMergerComponent@{gAliHLTPHOSModuleMergerComponent}!AliHLTPHOSModuleMergerComponent.cxx@{Ali\-HLTPHOSModule\-Merger\-Component.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSModule\-Merger\-Component} {\bf g\-Ali\-HLTPHOSModule\-Merger\-Component}}\label{AliHLTPHOSModuleMergerComponent_8cxx_a0} + + + + +Definition at line 30 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTPHOSModuleMergerComponent_8h.tex b/HLT/PHOS/latex/AliHLTPHOSModuleMergerComponent_8h.tex new file mode 100644 index 00000000000..b84deda1587 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSModuleMergerComponent_8h.tex @@ -0,0 +1,12 @@ +\section{Ali\-HLTPHOSModule\-Merger\-Component.h File Reference} +\label{AliHLTPHOSModuleMergerComponent_8h}\index{AliHLTPHOSModuleMergerComponent.h@{AliHLTPHOSModuleMergerComponent.h}} + + +{\tt \#include \char`\"{}Ali\-HLTProcessor.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSDefinitions.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSModule\-Merger\-Component} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSOnlineDisplay_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSOnlineDisplay_8cxx.tex new file mode 100644 index 00000000000..9df52d1740a --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSOnlineDisplay_8cxx.tex @@ -0,0 +1,39 @@ +\section{Online\-Display/Ali\-HLTPHOSOnline\-Display.cxx File Reference} +\label{AliHLTPHOSOnlineDisplay_8cxx}\index{OnlineDisplay/AliHLTPHOSOnlineDisplay.cxx@{OnlineDisplay/AliHLTPHOSOnlineDisplay.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSOnline\-Display.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h\char`\"{}}\par +{\tt \#include $<$vector$>$}\par +{\tt \#include \char`\"{}stdio.h\char`\"{}}\par +{\tt \#include $<$string$>$}\par +{\tt \#include $<$sys/ipc.h$>$}\par +{\tt \#include $<$errno.h$>$}\par +{\tt \#include \char`\"{}TH2.h\char`\"{}}\par +{\tt \#include \char`\"{}TCanvas.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include $<$stdexcept$>$}\par +{\tt \#include $<$TSystem.h$>$}\par +{\tt \#include $<$TApplication.h$>$}\par +{\tt \#include \char`\"{}TStyle.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +\subsection*{Defines} +\begin{CompactItemize} +\item +\#define {\bf MAX\_\-BIN\_\-VALUE}\ 1023 +\end{CompactItemize} + + +\subsection{Define Documentation} +\index{AliHLTPHOSOnlineDisplay.cxx@{Ali\-HLTPHOSOnline\-Display.cxx}!MAX_BIN_VALUE@{MAX\_\-BIN\_\-VALUE}} +\index{MAX_BIN_VALUE@{MAX\_\-BIN\_\-VALUE}!AliHLTPHOSOnlineDisplay.cxx@{Ali\-HLTPHOSOnline\-Display.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define MAX\_\-BIN\_\-VALUE\ 1023}\label{AliHLTPHOSOnlineDisplay_8cxx_a0} + + + + +Definition at line 43 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display::Init\-Display(). \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTPHOSOnlineDisplay_8h.tex b/HLT/PHOS/latex/AliHLTPHOSOnlineDisplay_8h.tex new file mode 100644 index 00000000000..13225780a54 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSOnlineDisplay_8h.tex @@ -0,0 +1,64 @@ +\section{Online\-Display/Ali\-HLTPHOSOnline\-Display.h File Reference} +\label{AliHLTPHOSOnlineDisplay_8h}\index{OnlineDisplay/AliHLTPHOSOnlineDisplay.h@{OnlineDisplay/AliHLTPHOSOnlineDisplay.h}} + + +{\tt \#include \char`\"{}HOMERData.h\char`\"{}}\par +{\tt \#include \char`\"{}HOMERReader.h\char`\"{}}\par +{\tt \#include \char`\"{}HOMERWriter.h\char`\"{}}\par +{\tt \#include \char`\"{}Rtypes.h\char`\"{}}\par +{\tt \#include $<$TGFrame.h$>$}\par +{\tt \#include \char`\"{}TH2.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSGet\-Event\-Button.h\char`\"{}}\par +{\tt \#include \char`\"{}TGTab.h\char`\"{}}\par +{\tt \#include $<$TRoot\-Embedded\-Canvas.h$>$}\par +{\tt \#include $<$TCanvas.h$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSOnline\-Display} +\end{CompactItemize} +\subsection*{Defines} +\begin{CompactItemize} +\item +\#define {\bf MAX\_\-HOSTS}\ 10 +\item +\#define {\bf MAX\_\-HOSTNAME\_\-LENGTH}\ 64 +\item +\#define {\bf DEFAULT\_\-EVENT\_\-PORT}\ 42001 +\item +\#define {\bf DEFAULT\_\-HISTO\_\-PORT}\ 42002 +\end{CompactItemize} + + +\subsection{Define Documentation} +\index{AliHLTPHOSOnlineDisplay.h@{Ali\-HLTPHOSOnline\-Display.h}!DEFAULT_EVENT_PORT@{DEFAULT\_\-EVENT\_\-PORT}} +\index{DEFAULT_EVENT_PORT@{DEFAULT\_\-EVENT\_\-PORT}!AliHLTPHOSOnlineDisplay.h@{Ali\-HLTPHOSOnline\-Display.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define DEFAULT\_\-EVENT\_\-PORT\ 42001}\label{AliHLTPHOSOnlineDisplay_8h_a2} + + + + +Definition at line 23 of file Ali\-HLTPHOSOnline\-Display.h.\index{AliHLTPHOSOnlineDisplay.h@{Ali\-HLTPHOSOnline\-Display.h}!DEFAULT_HISTO_PORT@{DEFAULT\_\-HISTO\_\-PORT}} +\index{DEFAULT_HISTO_PORT@{DEFAULT\_\-HISTO\_\-PORT}!AliHLTPHOSOnlineDisplay.h@{Ali\-HLTPHOSOnline\-Display.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define DEFAULT\_\-HISTO\_\-PORT\ 42002}\label{AliHLTPHOSOnlineDisplay_8h_a3} + + + + +Definition at line 24 of file Ali\-HLTPHOSOnline\-Display.h.\index{AliHLTPHOSOnlineDisplay.h@{Ali\-HLTPHOSOnline\-Display.h}!MAX_HOSTNAME_LENGTH@{MAX\_\-HOSTNAME\_\-LENGTH}} +\index{MAX_HOSTNAME_LENGTH@{MAX\_\-HOSTNAME\_\-LENGTH}!AliHLTPHOSOnlineDisplay.h@{Ali\-HLTPHOSOnline\-Display.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define MAX\_\-HOSTNAME\_\-LENGTH\ 64}\label{AliHLTPHOSOnlineDisplay_8h_a1} + + + + +Definition at line 22 of file Ali\-HLTPHOSOnline\-Display.h.\index{AliHLTPHOSOnlineDisplay.h@{Ali\-HLTPHOSOnline\-Display.h}!MAX_HOSTS@{MAX\_\-HOSTS}} +\index{MAX_HOSTS@{MAX\_\-HOSTS}!AliHLTPHOSOnlineDisplay.h@{Ali\-HLTPHOSOnline\-Display.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define MAX\_\-HOSTS\ 10}\label{AliHLTPHOSOnlineDisplay_8h_a0} + + + + +Definition at line 21 of file Ali\-HLTPHOSOnline\-Display.h. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTPHOSRcuCellAccumulatedEnergyDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSRcuCellAccumulatedEnergyDataStruct_8h.tex new file mode 100644 index 00000000000..185ac829611 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSRcuCellAccumulatedEnergyDataStruct_8h.tex @@ -0,0 +1,10 @@ +\section{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h File Reference} +\label{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct_8h}\index{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct.h@{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSRcuCellAverageEnergyDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSRcuCellAverageEnergyDataStruct_8h.tex new file mode 100644 index 00000000000..e9bec49e716 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSRcuCellAverageEnergyDataStruct_8h.tex @@ -0,0 +1,10 @@ +\section{Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct.h File Reference} +\label{AliHLTPHOSRcuCellAverageEnergyDataStruct_8h}\index{AliHLTPHOSRcuCellAverageEnergyDataStruct.h@{AliHLTPHOSRcuCellAverageEnergyDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSRcuCellEnergyDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSRcuCellEnergyDataStruct_8h.tex new file mode 100644 index 00000000000..0973729506d --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSRcuCellEnergyDataStruct_8h.tex @@ -0,0 +1,12 @@ +\section{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h File Reference} +\label{AliHLTPHOSRcuCellEnergyDataStruct_8h}\index{AliHLTPHOSRcuCellEnergyDataStruct.h@{AliHLTPHOSRcuCellEnergyDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h\char`\"{}}\par +{\tt \#include \char`\"{}Rtypes.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSRcuChannelDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSRcuChannelDataStruct_8h.tex new file mode 100644 index 00000000000..b6270fd1fb3 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSRcuChannelDataStruct_8h.tex @@ -0,0 +1,11 @@ +\section{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h File Reference} +\label{AliHLTPHOSRcuChannelDataStruct_8h}\index{AliHLTPHOSRcuChannelDataStruct.h@{AliHLTPHOSRcuChannelDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSRcu\-Channel\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducerComponent_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducerComponent_8cxx.tex new file mode 100644 index 00000000000..ef224de135a --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducerComponent_8cxx.tex @@ -0,0 +1,26 @@ +\section{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx File Reference} +\label{AliHLTPHOSRcuHistogramProducerComponent_8cxx}\index{AliHLTPHOSRcuHistogramProducerComponent.cxx@{AliHLTPHOSRcuHistogramProducerComponent.cxx}} + + +{\tt \#include $<$iostream$>$}\par +{\tt \#include \char`\"{}stdio.h\char`\"{}}\par +{\tt \#include $<$cstdlib$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Histogram\-Producer.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h\char`\"{}}\par +\subsection*{Variables} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\bf g\-Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} +\end{CompactItemize} + + +\subsection{Variable Documentation} +\index{AliHLTPHOSRcuHistogramProducerComponent.cxx@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx}!gAliHLTPHOSRcuHistogramProducerComponent@{gAliHLTPHOSRcuHistogramProducerComponent}} +\index{gAliHLTPHOSRcuHistogramProducerComponent@{gAliHLTPHOSRcuHistogramProducerComponent}!AliHLTPHOSRcuHistogramProducerComponent.cxx@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\bf g\-Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}}\label{AliHLTPHOSRcuHistogramProducerComponent_8cxx_a0} + + + + +Definition at line 29 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducerComponent_8h.tex b/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducerComponent_8h.tex new file mode 100644 index 00000000000..63743748847 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducerComponent_8h.tex @@ -0,0 +1,14 @@ +\section{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h File Reference} +\label{AliHLTPHOSRcuHistogramProducerComponent_8h}\index{AliHLTPHOSRcuHistogramProducerComponent.h@{AliHLTPHOSRcuHistogramProducerComponent.h}} + + +{\tt \#include \char`\"{}Ali\-HLTProcessor.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSDefinitions.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h\char`\"{}}\par +{\tt \#include \char`\"{}Rtypes.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducer_8cxx.tex b/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducer_8cxx.tex new file mode 100644 index 00000000000..ea03b895c04 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducer_8cxx.tex @@ -0,0 +1,10 @@ +\section{Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx File Reference} +\label{AliHLTPHOSRcuHistogramProducer_8cxx}\index{AliHLTPHOSRcuHistogramProducer.cxx@{AliHLTPHOSRcuHistogramProducer.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Histogram\-Producer.h\char`\"{}}\par +{\tt \#include $<$iostream$>$}\par +{\tt \#include \char`\"{}stdio.h\char`\"{}}\par +{\tt \#include $<$cstdlib$>$}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h\char`\"{}}\par +{\tt \#include \char`\"{}TFile.h\char`\"{}}\par diff --git a/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducer_8h.tex b/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducer_8h.tex new file mode 100644 index 00000000000..ec52b8d7bda --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSRcuHistogramProducer_8h.tex @@ -0,0 +1,53 @@ +\section{Ali\-HLTPHOSRcu\-Histogram\-Producer.h File Reference} +\label{AliHLTPHOSRcuHistogramProducer_8h}\index{AliHLTPHOSRcuHistogramProducer.h@{AliHLTPHOSRcuHistogramProducer.h}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSDefinitions.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +{\tt \#include \char`\"{}TH1.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} +\end{CompactItemize} +\subsection*{Defines} +\begin{CompactItemize} +\item +\#define {\bf XBIN\_\-LOW}\ 0 +\item +\#define {\bf XBIN\_\-UP}\ 1023 +\item +\#define {\bf N\_\-BINS}\ 1023 +\end{CompactItemize} + + +\subsection{Define Documentation} +\index{AliHLTPHOSRcuHistogramProducer.h@{Ali\-HLTPHOSRcu\-Histogram\-Producer.h}!N_BINS@{N\_\-BINS}} +\index{N_BINS@{N\_\-BINS}!AliHLTPHOSRcuHistogramProducer.h@{Ali\-HLTPHOSRcu\-Histogram\-Producer.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define N\_\-BINS\ 1023}\label{AliHLTPHOSRcuHistogramProducer_8h_a2} + + + + +Definition at line 15 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer::Init().\index{AliHLTPHOSRcuHistogramProducer.h@{Ali\-HLTPHOSRcu\-Histogram\-Producer.h}!XBIN_LOW@{XBIN\_\-LOW}} +\index{XBIN_LOW@{XBIN\_\-LOW}!AliHLTPHOSRcuHistogramProducer.h@{Ali\-HLTPHOSRcu\-Histogram\-Producer.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define XBIN\_\-LOW\ 0}\label{AliHLTPHOSRcuHistogramProducer_8h_a0} + + + + +Definition at line 13 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer::Init().\index{AliHLTPHOSRcuHistogramProducer.h@{Ali\-HLTPHOSRcu\-Histogram\-Producer.h}!XBIN_UP@{XBIN\_\-UP}} +\index{XBIN_UP@{XBIN\_\-UP}!AliHLTPHOSRcuHistogramProducer.h@{Ali\-HLTPHOSRcu\-Histogram\-Producer.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define XBIN\_\-UP\ 1023}\label{AliHLTPHOSRcuHistogramProducer_8h_a1} + + + + +Definition at line 14 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer::Init(). \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTPHOSValidCellDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSValidCellDataStruct_8h.tex new file mode 100644 index 00000000000..fe96c1ececb --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSValidCellDataStruct_8h.tex @@ -0,0 +1,11 @@ +\section{Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h File Reference} +\label{AliHLTPHOSValidCellDataStruct_8h}\index{AliHLTPHOSValidCellDataStruct.h@{AliHLTPHOSValidCellDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Rtypes.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTPHOSValidChannelDataStruct_8h.tex b/HLT/PHOS/latex/AliHLTPHOSValidChannelDataStruct_8h.tex new file mode 100644 index 00000000000..15b6a6ceb1a --- /dev/null +++ b/HLT/PHOS/latex/AliHLTPHOSValidChannelDataStruct_8h.tex @@ -0,0 +1,12 @@ +\section{Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h File Reference} +\label{AliHLTPHOSValidChannelDataStruct_8h}\index{AliHLTPHOSValidChannelDataStruct.h@{AliHLTPHOSValidChannelDataStruct.h}} + + +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Rtypes.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTPHOSCommon\-Defs.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +struct {\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTProcessor_8cxx.tex b/HLT/PHOS/latex/AliHLTProcessor_8cxx.tex new file mode 100644 index 00000000000..1916b21abdf --- /dev/null +++ b/HLT/PHOS/latex/AliHLTProcessor_8cxx.tex @@ -0,0 +1,44 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTProcessor.cxx File Reference} +\label{AliHLTProcessor_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTProcessor.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTProcessor.cxx}} + + +\subsection{Detailed Description} +Base class implementation for HLT analysis components. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTProcessor.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTProcessor.h\char`\"{}}\par +{\tt \#include $<$string.h$>$}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTProcessor}) {\bf Ali\-HLTProcessor} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTProcessor.cxx@{Ali\-HLTProcessor.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTProcessor.cxx@{Ali\-HLTProcessor.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTProcessor})}\label{AliHLTProcessor_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 32 of file Ali\-HLTProcessor.cxx. + +\footnotesize\begin{verbatim}35 { +36 // see header file for class documentation +37 // or +38 // refer to README to build package +39 // or +40 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +41 } +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTProcessor_8h.tex b/HLT/PHOS/latex/AliHLTProcessor_8h.tex new file mode 100644 index 00000000000..71937e67ea0 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTProcessor_8h.tex @@ -0,0 +1,21 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTProcessor.h File Reference} +\label{AliHLTProcessor_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTProcessor.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTProcessor.h}} + + +\subsection{Detailed Description} +Base class declaration for HLT analysis components. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTProcessor.h}. + +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTProcessor} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTStdIncludes_8h.tex b/HLT/PHOS/latex/AliHLTStdIncludes_8h.tex new file mode 100644 index 00000000000..2924c7543f8 --- /dev/null +++ b/HLT/PHOS/latex/AliHLTStdIncludes_8h.tex @@ -0,0 +1,65 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTStd\-Includes.h File Reference} +\label{AliHLTStdIncludes_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTStdIncludes.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTStdIncludes.h}} + + +{\tt \#include $<$iostream.h$>$}\par +{\tt \#include $<$fstream.h$>$}\par +{\tt \#include $<$stdio.h$>$}\par +{\tt \#include $<$math.h$>$}\par +{\tt \#include $<$string.h$>$}\par +{\tt \#include $<$time.h$>$}\par +{\tt \#include $<$stdlib.h$>$}\par +{\tt \#include $<$errno.h$>$}\par +{\tt \#include $<$stdarg.h$>$}\par +\subsection*{Defines} +\begin{CompactItemize} +\item +\#define {\bf STDCOUT}\ cout +\item +\#define {\bf STDCERR}\ cerr +\item +\#define {\bf STDENDL}\ endl +\item +\#define {\bf STDIF}\ ifstream +\item +\#define {\bf STDOF}\ ofstream +\end{CompactItemize} + + +\subsection{Define Documentation} +\index{AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}!STDCERR@{STDCERR}} +\index{STDCERR@{STDCERR}!AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define STDCERR\ cerr}\label{AliHLTStdIncludes_8h_a1} + + + + +Definition at line 42 of file Ali\-HLTStd\-Includes.h.\index{AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}!STDCOUT@{STDCOUT}} +\index{STDCOUT@{STDCOUT}!AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define STDCOUT\ cout}\label{AliHLTStdIncludes_8h_a0} + + + + +Definition at line 41 of file Ali\-HLTStd\-Includes.h.\index{AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}!STDENDL@{STDENDL}} +\index{STDENDL@{STDENDL}!AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define STDENDL\ endl}\label{AliHLTStdIncludes_8h_a2} + + + + +Definition at line 43 of file Ali\-HLTStd\-Includes.h.\index{AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}!STDIF@{STDIF}} +\index{STDIF@{STDIF}!AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define STDIF\ ifstream}\label{AliHLTStdIncludes_8h_a3} + + + + +Definition at line 44 of file Ali\-HLTStd\-Includes.h.\index{AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}!STDOF@{STDOF}} +\index{STDOF@{STDOF}!AliHLTStdIncludes.h@{Ali\-HLTStd\-Includes.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define STDOF\ ofstream}\label{AliHLTStdIncludes_8h_a4} + + + + +Definition at line 45 of file Ali\-HLTStd\-Includes.h. \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLTSystem_8cxx.tex b/HLT/PHOS/latex/AliHLTSystem_8cxx.tex new file mode 100644 index 00000000000..70a06188a9a --- /dev/null +++ b/HLT/PHOS/latex/AliHLTSystem_8cxx.tex @@ -0,0 +1,91 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTSystem.cxx File Reference} +\label{AliHLTSystem_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTSystem.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTSystem.cxx}} + + +\subsection{Detailed Description} +Implementation of HLT module management. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTSystem.cxx}. + +{\tt \#include \char`\"{}Ali\-HLTStd\-Includes.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTSystem.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent\-Handler.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTConfiguration.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTConfiguration\-Handler.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTTask.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTModule\-Agent.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTOffline\-Interface.h\char`\"{}}\par +{\tt \#include $<$TObj\-Array.h$>$}\par +{\tt \#include $<$TObj\-String.h$>$}\par +{\tt \#include $<$TString.h$>$}\par +{\tt \#include $<$TStopwatch.h$>$}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +{\bf Class\-Imp} ({\bf Ali\-HLTSystem}) {\bf Ali\-HLTSystem} +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{AliHLTSystem.cxx@{Ali\-HLTSystem.cxx}!ClassImp@{ClassImp}} +\index{ClassImp@{ClassImp}!AliHLTSystem.cxx@{Ali\-HLTSystem.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Class\-Imp ({\bf Ali\-HLTSystem})}\label{AliHLTSystem_8cxx_a0} + + +ROOT macro for the implementation of ROOT specific class methods + +Definition at line 43 of file Ali\-HLTSystem.cxx. + +References Ali\-HLTComponent\-Log\-Severity, Ali\-HLTComponent\-Environment::f\-Alloc\-Memory\-Func, Ali\-HLTComponent\-Environment::f\-Logging\-Func, Ali\-HLTConfiguration::Global\-Init(), HLTError, HLTFatal, HLTWarning, k\-HLTLog\-Default, and k\-HLTLog\-Error. + +\footnotesize\begin{verbatim}46 : +47 fpComponentHandler(new AliHLTComponentHandler()), +48 fpConfigurationHandler(new AliHLTConfigurationHandler()), +49 fTaskList(), +50 fState(0) +51 { +52 // see header file for class documentation +53 // or +54 // refer to README to build package +55 // or +56 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +57 +58 if (fgNofInstances++>0) +59 HLTWarning("multiple instances of AliHLTSystem, you should not use more than one at a time"); +60 +61 SetGlobalLoggingLevel(kHLTLogDefault); +62 if (fpComponentHandler) { +63 AliHLTComponentEnvironment env; +64 memset(&env, 0, sizeof(AliHLTComponentEnvironment)); +65 env.fAllocMemoryFunc=AliHLTSystem::AllocMemory; +66 env.fLoggingFunc=NULL; +67 AliHLTComponentLogSeverity loglevel=fpComponentHandler->GetLocalLoggingLevel(); +68 fpComponentHandler->SetLocalLoggingLevel(kHLTLogError); +69 fpComponentHandler->SetEnvironment(&env); +70 fpComponentHandler->LoadLibrary("libAliHLTUtil.so"); +71 fgAliLoggingFunc=(AliHLTLogging::AliHLTDynamicMessage)fpComponentHandler->FindSymbol("libAliHLTUtil.so", "AliDynamicMessage"); +72 fpComponentHandler->SetLocalLoggingLevel(loglevel); +73 if (fgAliLoggingFunc==NULL) { +74 HLTError("symbol lookp failure: can not find AliDynamicMessage, switching to HLT logging system"); +75 } +76 fpComponentHandler->AnnounceVersion(); +77 } else { +78 HLTFatal("can not create Component Handler"); +79 } +80 if (fpConfigurationHandler) { +81 AliHLTConfiguration::GlobalInit(fpConfigurationHandler); +82 } else { +83 HLTFatal("can not create Configuration Handler"); +84 } +85 } + +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/AliHLTSystem_8h.tex b/HLT/PHOS/latex/AliHLTSystem_8h.tex new file mode 100644 index 00000000000..7b6d12de64a --- /dev/null +++ b/HLT/PHOS/latex/AliHLTSystem_8h.tex @@ -0,0 +1,24 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTSystem.h File Reference} +\label{AliHLTSystem_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTSystem.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTSystem.h}} + + +\subsection{Detailed Description} +Global HLT module management and Ali\-Root integration. + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]The class is used in Offline (Ali\-Root) context\end{Desc} + + +Definition in file {\bf Ali\-HLTSystem.h}. + +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +{\tt \#include $<$TList.h$>$}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTSystem} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLTTask_8h.tex b/HLT/PHOS/latex/AliHLTTask_8h.tex new file mode 100644 index 00000000000..f503b70560e --- /dev/null +++ b/HLT/PHOS/latex/AliHLTTask_8h.tex @@ -0,0 +1,26 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLTTask.h File Reference} +\label{AliHLTTask_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLTTask.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLTTask.h}} + + +\subsection{Detailed Description} +base class for HLT tasks + +\begin{Desc} +\item[Author:]Matthias Richter \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLTTask.h}. + +{\tt \#include $<$cerrno$>$}\par +{\tt \#include $<$TObject.h$>$}\par +{\tt \#include $<$TList.h$>$}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Types.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTLogging.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTData\-Buffer.h\char`\"{}}\par +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTTask} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/AliHLT__C__Component__WrapperInterface_8cxx.tex b/HLT/PHOS/latex/AliHLT__C__Component__WrapperInterface_8cxx.tex new file mode 100644 index 00000000000..37f996dd92c --- /dev/null +++ b/HLT/PHOS/latex/AliHLT__C__Component__WrapperInterface_8cxx.tex @@ -0,0 +1,58 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx File Reference} +\label{AliHLT__C__Component__WrapperInterface_8cxx}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLT_C_Component_WrapperInterface.cxx@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLT\_\-C\_\-Component\_\-WrapperInterface.cxx}} + + +\subsection{Detailed Description} +Pure C interface to the Ali\-Root HLT component handler. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} + + +Definition in file {\bf Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx}. + +{\tt \#include \char`\"{}Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent\-Handler.h\char`\"{}}\par +{\tt \#include \char`\"{}Ali\-HLTComponent.h\char`\"{}}\par +{\tt \#include $<$errno.h$>$}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Init\-System} ({\bf Ali\-HLTComponent\-Environment} $\ast$environ) +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Deinit\-System} () +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Load\-Library} (const char $\ast$library\-Path) +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Unload\-Library} (const char $\ast$library\-Path) +\item +int {\bf Ali\-HLT\_\-C\_\-Create\-Component} (const char $\ast$component\-Type, void $\ast$environ\_\-param, int argc, const char $\ast$$\ast$argv, {\bf Ali\-HLTComponent\-Handle} $\ast$handle) +\item +void {\bf Ali\-HLT\_\-C\_\-Destroy\-Component} ({\bf Ali\-HLTComponent\-Handle} handle) +\item +int {\bf Ali\-HLT\_\-C\_\-Process\-Event} ({\bf Ali\-HLTComponent\-Handle} handle, const {\bf Ali\-HLTComponent\_\-Event\-Data} $\ast$evt\-Data, const {\bf Ali\-HLTComponent\_\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\_\-Trigger\-Data} $\ast$trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} $\ast$size, {\bf Ali\-HLTUInt32\_\-t} $\ast$output\-Block\-Cnt, {\bf Ali\-HLTComponent\_\-Block\-Data} $\ast$$\ast$output\-Blocks, {\bf Ali\-HLTComponent\_\-Event\-Done\-Data} $\ast$$\ast$edd) +\item +int {\bf Ali\-HLT\_\-C\_\-Get\-Output\-Data\-Type} ({\bf Ali\-HLTComponent\-Handle} handle, {\bf Ali\-HLTComponent\_\-Data\-Type} $\ast$data\-Type) +\item +int {\bf Ali\-HLT\_\-C\_\-Get\-Output\-Size} ({\bf Ali\-HLTComponent\-Handle} handle, unsigned long $\ast$const\-Base, double $\ast$input\-Multiplier) +\end{CompactItemize} +\subsection*{Variables} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent\-Handler} $\ast$ {\bf g\-Component\-Handler\_\-C} = NULL +\end{CompactItemize} + + +\subsection{Variable Documentation} +\index{AliHLT_C_Component_WrapperInterface.cxx@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx}!gComponentHandler_C@{gComponentHandler\_\-C}} +\index{gComponentHandler_C@{gComponentHandler\_\-C}!AliHLT_C_Component_WrapperInterface.cxx@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Handler}$\ast$ {\bf g\-Component\-Handler\_\-C} = NULL\hspace{0.3cm}{\tt [static]}}\label{AliHLT__C__Component__WrapperInterface_8cxx_a0} + + + + +Definition at line 34 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +Referenced by Ali\-HLT\_\-C\_\-Component\_\-Deinit\-System(), Ali\-HLT\_\-C\_\-Component\_\-Init\-System(), Ali\-HLT\_\-C\_\-Component\_\-Load\-Library(), Ali\-HLT\_\-C\_\-Component\_\-Unload\-Library(), and Ali\-HLT\_\-C\_\-Create\-Component(). \ No newline at end of file diff --git a/HLT/PHOS/latex/AliHLT__C__Component__WrapperInterface_8h.tex b/HLT/PHOS/latex/AliHLT__C__Component__WrapperInterface_8h.tex new file mode 100644 index 00000000000..56ac7f50691 --- /dev/null +++ b/HLT/PHOS/latex/AliHLT__C__Component__WrapperInterface_8h.tex @@ -0,0 +1,147 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h File Reference} +\label{AliHLT__C__Component__WrapperInterface_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/AliHLT_C_Component_WrapperInterface.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/AliHLT\_\-C\_\-Component\_\-WrapperInterface.h}} + + +\subsection{Detailed Description} +Pure C interface to the Ali\-Root HLT component handler. + +\begin{Desc} +\item[Author:]Matthias Richter, Timm Steinbeck \end{Desc} +\begin{Desc} +\item[Date:]\end{Desc} +\begin{Desc} +\item[Note:]Utilized by the HLT Online (Pub\-Sub) framework\end{Desc} + + +Definition in file {\bf Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}. + +{\tt \#include $<$Ali\-HLTData\-Types.h$>$}\par +\subsection*{Typedefs} +\begin{CompactItemize} +\item +typedef {\bf Ali\-HLTComponent\-Log\-Severity} {\bf Ali\-HLTComponent\_\-Log\-Severity} +\item +typedef {\bf Ali\-HLTComponent\-Event\-Data} {\bf Ali\-HLTComponent\_\-Event\-Data} +\item +typedef {\bf Ali\-HLTComponent\-Shm\-Data} {\bf Ali\-HLTComponent\_\-Shm\-Data} +\item +typedef {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTComponent\_\-Data\-Type} +\item +typedef {\bf Ali\-HLTComponent\-Block\-Data} {\bf Ali\-HLTComponent\_\-Block\-Data} +\item +typedef {\bf Ali\-HLTComponent\-Trigger\-Data} {\bf Ali\-HLTComponent\_\-Trigger\-Data} +\item +typedef {\bf Ali\-HLTComponent\-Event\-Done\-Data} {\bf Ali\-HLTComponent\_\-Event\-Done\-Data} +\item +typedef void $\ast$ {\bf Ali\-HLTComponent\-Handle} +\end{CompactItemize} +\subsection*{Functions} +\begin{CompactItemize} +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Init\-System} ({\bf Ali\-HLTComponent\-Environment} $\ast$environ) +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Deinit\-System} () +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Load\-Library} (const char $\ast$library\-Path) +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Unload\-Library} (const char $\ast$library\-Path) +\item +int {\bf Ali\-HLT\_\-C\_\-Create\-Component} (const char $\ast$component\-Type, void $\ast$environ\_\-param, int argc, const char $\ast$$\ast$argv, {\bf Ali\-HLTComponent\-Handle} $\ast$handle) +\item +void {\bf Ali\-HLT\_\-C\_\-Destroy\-Component} ({\bf Ali\-HLTComponent\-Handle}) +\item +int {\bf Ali\-HLT\_\-C\_\-Process\-Event} ({\bf Ali\-HLTComponent\-Handle} handle, const {\bf Ali\-HLTComponent\_\-Event\-Data} $\ast$evt\-Data, const {\bf Ali\-HLTComponent\_\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\_\-Trigger\-Data} $\ast$trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} $\ast$size, {\bf Ali\-HLTUInt32\_\-t} $\ast$output\-Block\-Cnt, {\bf Ali\-HLTComponent\_\-Block\-Data} $\ast$$\ast$output\-Blocks, {\bf Ali\-HLTComponent\_\-Event\-Done\-Data} $\ast$$\ast$edd) +\item +int {\bf Ali\-HLT\_\-C\_\-Get\-Output\-Data\-Type} ({\bf Ali\-HLTComponent\-Handle}, {\bf Ali\-HLTComponent\_\-Data\-Type} $\ast$data\-Type) +\item +int {\bf Ali\-HLT\_\-C\_\-Get\-Output\-Size} ({\bf Ali\-HLTComponent\-Handle}, unsigned long $\ast$const\-Base, double $\ast$input\-Multiplier) +\end{CompactItemize} +\subsection*{Variables} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTUInt32\_\-t} {\bf gk\-Ali\-HLTComponent\_\-Invalid\-Shm\-Type} = {\bf gk\-Ali\-HLTComponent\-Invalid\-Shm\-Type} +\item +const {\bf Ali\-HLTUInt64\_\-t} {\bf gk\-Ali\-HLTComponent\_\-Invalid\-Shm\-ID} = {\bf gk\-Ali\-HLTComponent\-Invalid\-Shm\-ID} +\item +const {\bf Ali\-HLTComponent\-Handle} {\bf k\-Empty\-HLTComponent\-Handle} = 0 +\end{CompactItemize} + + +\subsection{Typedef Documentation} +\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!AliHLTComponent_BlockData@{AliHLTComponent\_\-BlockData}} +\index{AliHLTComponent_BlockData@{AliHLTComponent\_\-BlockData}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Block\-Data} {\bf Ali\-HLTComponent\_\-Block\-Data}}\label{AliHLT__C__Component__WrapperInterface_8h_a4} + + + + +Definition at line 35 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h. + +Referenced by Ali\-HLT\_\-C\_\-Process\-Event().\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!AliHLTComponent_DataType@{AliHLTComponent\_\-DataType}} +\index{AliHLTComponent_DataType@{AliHLTComponent\_\-DataType}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTComponent\_\-Data\-Type}}\label{AliHLT__C__Component__WrapperInterface_8h_a3} + + + + +Definition at line 34 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h. + +Referenced by Ali\-HLT\_\-C\_\-Get\-Output\-Data\-Type().\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!AliHLTComponent_EventData@{AliHLTComponent\_\-EventData}} +\index{AliHLTComponent_EventData@{AliHLTComponent\_\-EventData}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Event\-Data} {\bf Ali\-HLTComponent\_\-Event\-Data}}\label{AliHLT__C__Component__WrapperInterface_8h_a1} + + + + +Definition at line 32 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h. + +Referenced by Ali\-HLT\_\-C\_\-Process\-Event().\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!AliHLTComponent_EventDoneData@{AliHLTComponent\_\-EventDoneData}} +\index{AliHLTComponent_EventDoneData@{AliHLTComponent\_\-EventDoneData}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Event\-Done\-Data} {\bf Ali\-HLTComponent\_\-Event\-Done\-Data}}\label{AliHLT__C__Component__WrapperInterface_8h_a6} + + + + +Definition at line 37 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h. + +Referenced by Ali\-HLT\_\-C\_\-Process\-Event().\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!AliHLTComponent_LogSeverity@{AliHLTComponent\_\-LogSeverity}} +\index{AliHLTComponent_LogSeverity@{AliHLTComponent\_\-LogSeverity}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Log\-Severity} {\bf Ali\-HLTComponent\_\-Log\-Severity}}\label{AliHLT__C__Component__WrapperInterface_8h_a0} + + + + +Definition at line 31 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h.\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!AliHLTComponent_ShmData@{AliHLTComponent\_\-ShmData}} +\index{AliHLTComponent_ShmData@{AliHLTComponent\_\-ShmData}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Shm\-Data} {\bf Ali\-HLTComponent\_\-Shm\-Data}}\label{AliHLT__C__Component__WrapperInterface_8h_a2} + + + + +Definition at line 33 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h.\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!AliHLTComponent_TriggerData@{AliHLTComponent\_\-TriggerData}} +\index{AliHLTComponent_TriggerData@{AliHLTComponent\_\-TriggerData}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Ali\-HLTComponent\-Trigger\-Data} {\bf Ali\-HLTComponent\_\-Trigger\-Data}}\label{AliHLT__C__Component__WrapperInterface_8h_a5} + + + + +Definition at line 36 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h. + +Referenced by Ali\-HLT\_\-C\_\-Process\-Event(). + +\subsection{Variable Documentation} +\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!gkAliHLTComponent_InvalidShmID@{gkAliHLTComponent\_\-InvalidShmID}} +\index{gkAliHLTComponent_InvalidShmID@{gkAliHLTComponent\_\-InvalidShmID}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTUInt64\_\-t} {\bf gk\-Ali\-HLTComponent\_\-Invalid\-Shm\-ID} = {\bf gk\-Ali\-HLTComponent\-Invalid\-Shm\-ID}}\label{AliHLT__C__Component__WrapperInterface_8h_a8} + + + + +Definition at line 39 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h.\index{AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}!gkAliHLTComponent_InvalidShmType@{gkAliHLTComponent\_\-InvalidShmType}} +\index{gkAliHLTComponent_InvalidShmType@{gkAliHLTComponent\_\-InvalidShmType}!AliHLT_C_Component_WrapperInterface.h@{Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTUInt32\_\-t} {\bf gk\-Ali\-HLTComponent\_\-Invalid\-Shm\-Type} = {\bf gk\-Ali\-HLTComponent\-Invalid\-Shm\-Type}}\label{AliHLT__C__Component__WrapperInterface_8h_a7} + + + + +Definition at line 38 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h. \ No newline at end of file diff --git a/HLT/PHOS/latex/HLTbaseLinkDef_8h.tex b/HLT/PHOS/latex/HLTbaseLinkDef_8h.tex new file mode 100644 index 00000000000..c4b51298deb --- /dev/null +++ b/HLT/PHOS/latex/HLTbaseLinkDef_8h.tex @@ -0,0 +1,4 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/HLTbase\-Link\-Def.h File Reference} +\label{HLTbaseLinkDef_8h}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/HLTbaseLinkDef.h@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/HLTbaseLinkDef.h}} + + diff --git a/HLT/PHOS/latex/classAliHLTComponent.eps b/HLT/PHOS/latex/classAliHLTComponent.eps new file mode 100644 index 00000000000..f27d306d50c --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTComponent.eps @@ -0,0 +1,261 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 48.2625 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 10.36 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 5 def +/cols 7 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTComponent) cw +(AliHLTLogging) cw +(AliHLTDataSink) cw +(AliHLTDataSource) cw +(AliHLTProcessor) cw +(AliHLTOfflineDataSink) cw +(AliHLTOfflineDataSource) cw +(AliHLTPHOSDDLDecoderComponent) cw +(AliHLTPHOSHistogramProducerComponent) cw +(AliHLTPHOSModuleMergerComponent) cw +(AliHLTPHOSRawAnalyzerComponent) cw +(AliHLTPHOSRcuHistogramProducerComponent) cw +(AliHLTPHOSRawAnalyzerCrudeComponent) cw +(AliHLTPHOSRawAnalyzerPeakFinderComponent) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTComponent) 1 3 box + (AliHLTLogging) 1 4 box + (AliHLTDataSink) 0 2 box + (AliHLTDataSource) 1 2 box + (AliHLTProcessor) 4 2 box + (AliHLTOfflineDataSink) 0 1 box + (AliHLTOfflineDataSource) 1 1 box + (AliHLTPHOSDDLDecoderComponent) 2 1 box + (AliHLTPHOSHistogramProducerComponent) 3 1 box + (AliHLTPHOSModuleMergerComponent) 4 1 box + (AliHLTPHOSRawAnalyzerComponent) 5 1 box + (AliHLTPHOSRcuHistogramProducerComponent) 6 1 box + (AliHLTPHOSRawAnalyzerCrudeComponent) 4.5 0 box + (AliHLTPHOSRawAnalyzerPeakFinderComponent) 5.5 0 box + +% ----- relations ----- + +solid +0 1 3 out +solid +1 1 4 in +solid +1 1 2.25 out +solid +0 4 3 conn +solid +0 0 2.75 in +solid +1 0 1.25 out +solid +0 1 2.75 in +solid +1 1 1.25 out +solid +0 4 2.75 in +solid +1 4 1.25 out +solid +2 6 2 conn +solid +0 0 1.75 in +solid +0 1 1.75 in +solid +0 2 1.75 in +solid +0 3 1.75 in +solid +0 4 1.75 in +solid +0 5 1.75 in +solid +1 5 0.25 out +solid +4.5 5.5 1 conn +solid +0 6 1.75 in +solid +0 4.5 0.75 in +solid +0 5.5 0.75 in diff --git a/HLT/PHOS/latex/classAliHLTComponent.tex b/HLT/PHOS/latex/classAliHLTComponent.tex new file mode 100644 index 00000000000..26910d5c1ff --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTComponent.tex @@ -0,0 +1,2284 @@ +\section{Ali\-HLTComponent Class Reference} +\label{classAliHLTComponent}\index{AliHLTComponent@{AliHLTComponent}} +{\tt \#include $<$Ali\-HLTComponent.h$>$} + +Inheritance diagram for Ali\-HLTComponent::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=1.35135cm]{classAliHLTComponent} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Base class of HLT data processing components. The class provides a common interface for HLT data processing components. The interface can be accessed from the online HLT framework or the Ali\-Root offline analysis framework. \subsection{Component identification and properties}\label{classAliHLTComponent_alihltcomponent-properties} +Each component must provide a unique ID, input and output data type indications, and a spawn function. \subsubsection{Required property methods}\label{classAliHLTComponent_alihltcomponent-req-methods} +\begin{itemize} +\item {\bf Get\-Component\-ID}{\rm (p.\,\pageref{classAliHLTComponent_a9})}\item {\bf Get\-Input\-Data\-Types}{\rm (p.\,\pageref{classAliHLTComponent_a10})} (see {\bf Component type}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-type})} for default implementations.)\item {\bf Get\-Output\-Data\-Type}{\rm (p.\,\pageref{classAliHLTComponent_a11})} (see {\bf Component type}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-type})} for default implementations.)\item {\bf Get\-Output\-Data\-Size}{\rm (p.\,\pageref{classAliHLTComponent_a12})} (see {\bf Component type}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-type})} for default implementations.)\item {\bf Spawn}{\rm (p.\,\pageref{classAliHLTComponent_a13})}\end{itemize} +\subsubsection{Optional handlers}\label{classAliHLTComponent_alihltcomponent-opt-mehods} +\begin{itemize} +\item {\bf Do\-Init}{\rm (p.\,\pageref{classAliHLTComponent_b5})}\item {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTComponent_b6})}\end{itemize} +\subsubsection{Data processing}\label{classAliHLTComponent_alihltcomponent-processing-mehods} +\subsubsection{Component type}\label{classAliHLTComponent_alihltcomponent-type} +Components can be of type\begin{itemize} +\item {\bf k\-Source}{\rm (p.\,\pageref{classAliHLTComponent_w9w1})} components which only produce data\item {\bf k\-Processor}{\rm (p.\,\pageref{classAliHLTComponent_w9w2})} components which consume and produce data\item {\bf k\-Sink}{\rm (p.\,\pageref{classAliHLTComponent_w9w3})} components which only consume data\end{itemize} + + +where data production and consumption refer to the analysis data stream. In order to indicate the type, a child component can overload the {\bf Get\-Component\-Type}{\rm (p.\,\pageref{classAliHLTComponent_a8})} function. \paragraph{Standard implementations}\label{classAliHLTComponent_alihltcomponent-type-std} +Components in general do not need to implement this function, standard implementations of the 3 types are available:\begin{itemize} +\item {\bf Ali\-HLTData\-Source}{\rm (p.\,\pageref{classAliHLTDataSource})} for components of type {\bf k\-Source}{\rm (p.\,\pageref{classAliHLTComponent_w9w1})} \par + All types of data sources can inherit from {\bf Ali\-HLTData\-Source}{\rm (p.\,\pageref{classAliHLTDataSource})} and must implement the {\bf Ali\-HLTData\-Source::Get\-Event}{\rm (p.\,\pageref{classAliHLTDataSource_d0})} method. The class also implements a standard method for {\bf Get\-Input\-Data\-Types}{\rm (p.\,\pageref{classAliHLTComponent_a10})}.\end{itemize} + + +\begin{itemize} +\item {\bf Ali\-HLTProcessor}{\rm (p.\,\pageref{classAliHLTProcessor})} for components of type {\bf k\-Processor}{\rm (p.\,\pageref{classAliHLTComponent_w9w2})} \par + All types of data processors can inherit from {\bf Ali\-HLTData\-Source}{\rm (p.\,\pageref{classAliHLTDataSource})} and must implement the {\bf Ali\-HLTProcessor::Do\-Event}{\rm (p.\,\pageref{classAliHLTProcessor_d0})} method.\end{itemize} + + +\begin{itemize} +\item {\bf Ali\-HLTData\-Sink}{\rm (p.\,\pageref{classAliHLTDataSink})} for components of type {\bf k\-Sink}{\rm (p.\,\pageref{classAliHLTComponent_w9w3})} \par + All types of data processors can inherit from {\bf Ali\-HLTData\-Source}{\rm (p.\,\pageref{classAliHLTDataSource})} and must implement the {\bf Ali\-HLTData\-Sink::Dump\-Event}{\rm (p.\,\pageref{classAliHLTDataSink_d0})} method. The class also implements a standard method for {\bf Get\-Output\-Data\-Type}{\rm (p.\,\pageref{classAliHLTComponent_a11})} and {\bf Get\-Output\-Data\-Size}{\rm (p.\,\pageref{classAliHLTComponent_a12})}.\end{itemize} +\subsubsection{Running environment}\label{classAliHLTComponent_alihltcomponent-environment} +In order to adapt to different environments (on-line/off-line), the component gets an environment structure with function pointers. The base class provides member functions for those environment dependend functions. The member functions are used by the component implementation and are re-mapped to the corresponding functions. \subsection{Component interfaces}\label{classAliHLTComponent_alihltcomponent-interfaces} +Each of the 3 standard component base classes {\bf Ali\-HLTProcessor}{\rm (p.\,\pageref{classAliHLTProcessor})}, {\bf Ali\-HLTData\-Source}{\rm (p.\,\pageref{classAliHLTDataSource})} and {\bf Ali\-HLTData\-Sink}{\rm (p.\,\pageref{classAliHLTDataSink})} provides it's own processing method (see {\bf Standard implementations}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-type-std})}), which splits into a high and a low-level method. For the {\bf Low-level interface}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-low-level-interface})}, all parameters are shipped as function arguments, the component is supposed to dump data to the output buffer and handle all block descriptors. The {\bf High-level interface}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-high-level-interface})} is the standard processing method and will be used whenever the low-level method is not overloaded.\subsubsection{High-level interface}\label{classAliHLTComponent_alihltcomponent-high-level-interface} +The high-level component interface provides functionality to exchange ROOT structures between components. In contrast to the {\bf Low-level interface}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-low-level-interface})}, a couple of functions can be used to access data blocks of the input stream and send data blocks or ROOT TObject's to the output stream. The functionality is hidden from the user and is implemented by using ROOT's TMessage class.\paragraph{Interface methods}\label{classAliHLTComponent_alihltcomponent-high-level-int-methods} +The interface provides a couple of methods in order to get objects from the input, data blocks (non TObject) from the input, and to push back objects and data blocks to the output. For convenience there are several functions of identical name (and similar behavior) with different parameters defined. Please refer to the function documentation.\begin{itemize} +\item {\bf Get\-Number\-Of\-Input\-Blocks}{\rm (p.\,\pageref{classAliHLTComponent_b12})} \par + return the number of data blocks in the input stream\item {\bf Get\-First\-Input\-Object}{\rm (p.\,\pageref{classAliHLTComponent_b13})} \par + get the first object of a specific data type\item {\bf Get\-Next\-Input\-Object}{\rm (p.\,\pageref{classAliHLTComponent_b15})} \par + get the next object of same data type as last Get\-First\-Input\-Object/Block call\item {\bf Get\-First\-Input\-Block}{\rm (p.\,\pageref{classAliHLTComponent_b18})} \par + get the first block of a specific data type\item {\bf Get\-Next\-Input\-Block}{\rm (p.\,\pageref{classAliHLTComponent_b21})} \par + get the next block of same data type as last Get\-First\-Input\-Block/Block call\item {\bf Push\-Back}{\rm (p.\,\pageref{classAliHLTComponent_b23})} \par + insert an object or data buffer into the output\item {\bf Create\-Event\-Done\-Data}{\rm (p.\,\pageref{classAliHLTComponent_b28})} \par + add event information to the output\end{itemize} + + +In addition, the processing methods are simplified a bit by cutting out most of the parameters. The component implementation \begin{Desc} +\item[See also:]{\bf Ali\-HLTProcessor}{\rm (p.\,\pageref{classAliHLTProcessor})} {\bf Ali\-HLTData\-Source}{\rm (p.\,\pageref{classAliHLTDataSource})} {\bf Ali\-HLTData\-Sink}{\rm (p.\,\pageref{classAliHLTDataSink})}\end{Desc} +{\em IMPORTANT:\/} objects and block descriptors provided by the high-level interface {\bf MUST NOT BE DELETED} by the caller.\paragraph{High-level interface guidelines}\label{classAliHLTComponent_alihltcomponent-high-level-int-guidelines} +\begin{itemize} +\item Structures must inherit from the ROOT object base class TObject in order be transported by the transportation framework.\item all pointer members must be transient (marked {\tt //!} behind the member definition), i.e. will not be stored/transported, or properly marked ({\tt //-$>$}) in order to call the streamer of the object the member is pointing to. The latter is not recomended. Structures to be transported between components should be streamlined.\item no use of stl vectors/strings, use appropriate ROOT classes instead\end{itemize} +\subsubsection{Low-level interface}\label{classAliHLTComponent_alihltcomponent-low-level-interface} +The low-level component interface consists of the specific data processing methods for {\bf Ali\-HLTProcessor}{\rm (p.\,\pageref{classAliHLTProcessor})}, {\bf Ali\-HLTData\-Source}{\rm (p.\,\pageref{classAliHLTDataSource})}, and {\bf Ali\-HLTData\-Sink}{\rm (p.\,\pageref{classAliHLTDataSink})}.\begin{itemize} +\item {\bf Ali\-HLTProcessor::Do\-Event}{\rm (p.\,\pageref{classAliHLTProcessor_d0})}\item {\bf Ali\-HLTData\-Source::Get\-Event}{\rm (p.\,\pageref{classAliHLTDataSource_d0})}\item {\bf Ali\-HLTData\-Sink::Dump\-Event}{\rm (p.\,\pageref{classAliHLTDataSink_d0})}\end{itemize} +\subsection{Component handling}\label{classAliHLTComponent_alihltcomponent-handling} +The handling of HLT analysis components is carried out by the {\bf Ali\-HLTComponent\-Handler}{\rm (p.\,\pageref{classAliHLTComponentHandler})}. Component are registered automatically at load-time of the component shared library under the following suppositions:\begin{itemize} +\item the component library has to be loaded from the {\bf Ali\-HLTComponent\-Handler}{\rm (p.\,\pageref{classAliHLTComponentHandler})} using the {\bf Ali\-HLTComponent\-Handler::Load\-Library}{\rm (p.\,\pageref{classAliHLTComponentHandler_a6})} method.\item the component implementation defines one global object (which is generated when the library is loaded)\end{itemize} +\subsubsection{General design considerations}\label{classAliHLTComponent_alihltcomponent-design-rules} +The analysis code should be implemented in one or more destict class(es). A {\em component\/} should be implemented which interface the destict analysis code to the component interface. This component generates the analysis object dynamically. \par + + +Assume you have an implemetation {\tt Ali\-HLTDet\-My\-Analysis }, another class {\tt Ali\-HLTDet\-My\-Analysis\-Component } contains: \small\begin{alltt} + private: + AliHLTDetMyAnalysis* fMyAnalysis; //! + \end{alltt}\normalsize + The object should then be instantiated in the Do\-Init handler of {\tt Ali\-HLTDet\-My\-Analysis\-Component }, and cleaned in the Do\-Deinit handler. + +Further rules:\begin{itemize} +\item avoid big static arrays in the component, allocate the memory at runtime\end{itemize} +\subsection{Class members}\label{classAliHLTComponent_alihltcomponent-members} + + + + +Definition at line 197 of file Ali\-HLTComponent.h.\subsection*{Public Types} +\begin{CompactItemize} +\item +enum {\bf TComponent\-Type} \{ {\bf k\-Unknown} = 0, +{\bf k\-Source} = 1, +{\bf k\-Processor} = 2, +{\bf k\-Sink} = 3 + \} +\item +enum {\bf Ali\-HLTStopwatch\-Type} \{ \par +{\bf k\-SWBase}, +{\bf k\-SWDA}, +{\bf k\-SWInput}, +{\bf k\-SWOutput}, +\par +{\bf k\-SWType\-Count} + \} +\end{CompactItemize} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent} () +\item +{\bf Ali\-HLTComponent} (const {\bf Ali\-HLTComponent} \&) +\item +{\bf Ali\-HLTComponent} \& {\bf operator=} (const {\bf Ali\-HLTComponent} \&) +\item +virtual {\bf $\sim$Ali\-HLTComponent} () +\item +virtual int {\bf Init} ({\bf Ali\-HLTComponent\-Environment} $\ast$environ, void $\ast$environ\-Param, int argc, const char $\ast$$\ast$argv) +\item +virtual int {\bf Deinit} () +\item +int {\bf Process\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, {\bf Ali\-HLTUInt32\_\-t} \&output\-Block\-Cnt, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$\&output\-Blocks, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\&edd) +\item +virtual int {\bf Do\-Processing} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\&edd)=0 +\item +virtual {\bf TComponent\-Type} {\bf Get\-Component\-Type} ()=0 +\item +virtual const char $\ast$ {\bf Get\-Component\-ID} ()=0 +\item +virtual void {\bf Get\-Input\-Data\-Types} (vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&)=0 +\item +virtual {\bf Ali\-HLTComponent\-Data\-Type} {\bf Get\-Output\-Data\-Type} ()=0 +\item +virtual void {\bf Get\-Output\-Data\-Size} (unsigned long \&const\-Base, double \&input\-Multiplier)=0 +\item +virtual {\bf Ali\-HLTComponent} $\ast$ {\bf Spawn} ()=0 +\item +int {\bf Find\-Matching\-Data\-Types} ({\bf Ali\-HLTComponent} $\ast$p\-Consumer, vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ $\ast$tgt\-List) +\item +void {\bf Print\-Data\-Type\-Content} ({\bf Ali\-HLTComponent\-Data\-Type} \&dt, const char $\ast$format=NULL) const +\item +void {\bf Print\-Component\-Data\-Type\-Info} (const {\bf Ali\-HLTComponent\-Data\-Type} \&dt) +\item +int {\bf Set\-Stopwatch} (TObject $\ast$p\-SW, {\bf Ali\-HLTStopwatch\-Type} type=k\-SWBase) +\item +int {\bf Set\-Stopwatches} (TObj\-Array $\ast$p\-Stopwatches) +\end{CompactItemize} +\subsection*{Static Public Member Functions} +\begin{CompactItemize} +\item +int {\bf Set\-Global\-Component\-Handler} ({\bf Ali\-HLTComponent\-Handler} $\ast$p\-CH, int b\-Overwrite=0) +\item +int {\bf Unset\-Global\-Component\-Handler} () +\item +string {\bf Data\-Type2Text} (const {\bf Ali\-HLTComponent\-Data\-Type} \&type) +\item +void {\bf Fill\-Event\-Data} ({\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data) +\end{CompactItemize} +\subsection*{Protected Member Functions} +\begin{CompactItemize} +\item +void {\bf Fill\-Block\-Data} ({\bf Ali\-HLTComponent\-Block\-Data} \&block\-Data) const +\item +void {\bf Fill\-Shm\-Data} ({\bf Ali\-HLTComponent\-Shm\-Data} \&shm\-Data) const +\item +void {\bf Fill\-Data\-Type} ({\bf Ali\-HLTComponent\-Data\-Type} \&data\-Type) const +\item +void {\bf Copy\-Data\-Type} ({\bf Ali\-HLTComponent\-Data\-Type} \&tgtdt, const {\bf Ali\-HLTComponent\-Data\-Type} \&srcdt) +\item +void {\bf Set\-Data\-Type} ({\bf Ali\-HLTComponent\-Data\-Type} \&tgtdt, const char $\ast$id, const char $\ast$origin) +\item +virtual int {\bf Do\-Init} (int argc, const char $\ast$$\ast$argv) +\item +virtual int {\bf Do\-Deinit} () +\item +void $\ast$ {\bf Alloc\-Memory} (unsigned long size) +\item +int {\bf Make\-Output\-Data\-Block\-List} (const vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&blocks, {\bf Ali\-HLTUInt32\_\-t} $\ast$block\-Count, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$$\ast$output\-Blocks) +\item +int {\bf Get\-Event\-Done\-Data} (unsigned long size, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$$\ast$edd) +\item +void {\bf Data\-Type2Text} (const {\bf Ali\-HLTComponent\-Data\-Type} \&type, char output[{\bf k\-Ali\-HLTComponent\-Data\-Typef\-IDsize}+{\bf k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size}+2]) const +\item +int {\bf Get\-Event\-Count} () const +\item +int {\bf Get\-Number\-Of\-Input\-Blocks} () const +\item +const TObject $\ast$ {\bf Get\-First\-Input\-Object} (const {\bf Ali\-HLTComponent\-Data\-Type} \&dt={\bf k\-Ali\-HLTAny\-Data\-Type}, const char $\ast$classname=NULL, int b\-Force=0) +\item +const TObject $\ast$ {\bf Get\-First\-Input\-Object} (const char $\ast$dt\-ID, const char $\ast$dt\-Origin, const char $\ast$classname=NULL, int b\-Force=0) +\item +const TObject $\ast$ {\bf Get\-Next\-Input\-Object} (int b\-Force=0) +\item +{\bf Ali\-HLTComponent\-Data\-Type} {\bf Get\-Data\-Type} (const TObject $\ast$p\-Object=NULL) +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf Get\-Specification} (const TObject $\ast$p\-Object=NULL) +\item +const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\bf Get\-First\-Input\-Block} (const {\bf Ali\-HLTComponent\-Data\-Type} \&dt={\bf k\-Ali\-HLTAny\-Data\-Type}) +\item +const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\bf Get\-First\-Input\-Block} (const char $\ast$dt\-ID, const char $\ast$dt\-Origin) +\item +const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\bf Get\-Input\-Block} (int index) +\item +const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\bf Get\-Next\-Input\-Block} () +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf Get\-Specification} (const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$p\-Block=NULL) +\item +int {\bf Push\-Back} (TObject $\ast$p\-Object, const {\bf Ali\-HLTComponent\-Data\-Type} \&dt, {\bf Ali\-HLTUInt32\_\-t} spec={\bf k\-Ali\-HLTVoid\-Data\-Spec}) +\item +int {\bf Push\-Back} (TObject $\ast$p\-Object, const char $\ast$dt\-ID, const char $\ast$dt\-Origin, {\bf Ali\-HLTUInt32\_\-t} spec={\bf k\-Ali\-HLTVoid\-Data\-Spec}) +\item +int {\bf Push\-Back} (void $\ast$p\-Buffer, int i\-Size, const {\bf Ali\-HLTComponent\-Data\-Type} \&dt, {\bf Ali\-HLTUInt32\_\-t} spec={\bf k\-Ali\-HLTVoid\-Data\-Spec}) +\item +int {\bf Push\-Back} (void $\ast$p\-Buffer, int i\-Size, const char $\ast$dt\-ID, const char $\ast$dt\-Origin, {\bf Ali\-HLTUInt32\_\-t} spec={\bf k\-Ali\-HLTVoid\-Data\-Spec}) +\item +int {\bf Estimate\-Object\-Size} (TObject $\ast$p\-Object) const +\item +int {\bf Create\-Event\-Done\-Data} ({\bf Ali\-HLTComponent\-Event\-Done\-Data} edd) +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +int {\bf Increment\-Event\-Counter} () +\item +int {\bf Find\-Input\-Block} (const {\bf Ali\-HLTComponent\-Data\-Type} \&dt, int start\-Idx=-1) const +\item +int {\bf Find\-Input\-Block} (const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$p\-Block) const +\item +TObject $\ast$ {\bf Create\-Input\-Object} (int idx, int b\-Force=0) +\item +TObject $\ast$ {\bf Get\-Input\-Object} (int idx, const char $\ast$classname=NULL, int b\-Force=0) +\item +int {\bf Cleanup\-Input\-Objects} () +\item +int {\bf Insert\-Output\-Block} (void $\ast$p\-Buffer, int i\-Size, const {\bf Ali\-HLTComponent\-Data\-Type} \&dt, {\bf Ali\-HLTUInt32\_\-t} spec) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent\-Environment} {\bf f\-Environment} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +{\bf Ali\-HLTEvent\-ID\_\-t} {\bf f\-Current\-Event} +\item +int {\bf f\-Event\-Count} +\item +int {\bf f\-Failed\-Events} +\item +{\bf Ali\-HLTComponent\-Event\-Data} {\bf f\-Current\-Event\-Data} +\item +const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\bf fp\-Input\-Blocks} +\item +int {\bf f\-Current\-Input\-Block} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +{\bf Ali\-HLTComponent\-Data\-Type} {\bf f\-Search\-Data\-Type} +\item +string {\bf f\-Class\-Name} +\item +TObj\-Array $\ast$ {\bf fp\-Input\-Objects} +\item +{\bf Ali\-HLTUInt8\_\-t} $\ast$ {\bf fp\-Output\-Buffer} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Output\-Buffer\-Size} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Output\-Buffer\-Filled} +\item +vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ {\bf f\-Output\-Blocks} +\item +TObj\-Array $\ast$ {\bf fp\-Stopwatches} +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent\-Handler} $\ast$ {\bf fgp\-Component\-Handler} = NULL +\end{CompactItemize} + + +\subsection{Member Enumeration Documentation} +\index{AliHLTComponent@{Ali\-HLTComponent}!AliHLTStopwatchType@{AliHLTStopwatchType}} +\index{AliHLTStopwatchType@{AliHLTStopwatchType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf Ali\-HLTComponent::Ali\-HLTStopwatch\-Type}}\label{classAliHLTComponent_w10} + + +Stopwatch type for benchmarking. \begin{Desc} +\item[Enumeration values: ]\par +\begin{description} +\index{kSWBase@{kSWBase}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kSWBase@{kSWBase}}\item[{\em +k\-SWBase\label{classAliHLTComponent_w10w4} +}]total time for event processing \index{kSWDA@{kSWDA}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kSWDA@{kSWDA}}\item[{\em +k\-SWDA\label{classAliHLTComponent_w10w5} +}]detector algorithm w/o interface callbacks \index{kSWInput@{kSWInput}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kSWInput@{kSWInput}}\item[{\em +k\-SWInput\label{classAliHLTComponent_w10w6} +}]data sources \index{kSWOutput@{kSWOutput}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kSWOutput@{kSWOutput}}\item[{\em +k\-SWOutput\label{classAliHLTComponent_w10w7} +}]data sinks \index{kSWTypeCount@{kSWTypeCount}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kSWTypeCount@{kSWTypeCount}}\item[{\em +k\-SWType\-Count\label{classAliHLTComponent_w10w8} +}]number of types \end{description} +\end{Desc} + + + +Definition at line 374 of file Ali\-HLTComponent.h. + +\footnotesize\begin{verbatim}374 { +376 kSWBase, +378 kSWDA, +380 kSWInput, +382 kSWOutput, +384 kSWTypeCount +385 }; +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!TComponentType@{TComponentType}} +\index{TComponentType@{TComponentType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf Ali\-HLTComponent::TComponent\-Type}}\label{classAliHLTComponent_w9} + + +component type definitions \begin{Desc} +\item[Enumeration values: ]\par +\begin{description} +\index{kUnknown@{kUnknown}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kUnknown@{kUnknown}}\item[{\em +k\-Unknown\label{classAliHLTComponent_w9w0} +}]\index{kSource@{kSource}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kSource@{kSource}}\item[{\em +k\-Source\label{classAliHLTComponent_w9w1} +}]\index{kProcessor@{kProcessor}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kProcessor@{kProcessor}}\item[{\em +k\-Processor\label{classAliHLTComponent_w9w2} +}]\index{kSink@{kSink}!AliHLTComponent@{AliHLTComponent}}\index{AliHLTComponent@{AliHLTComponent}!kSink@{kSink}}\item[{\em +k\-Sink\label{classAliHLTComponent_w9w3} +}]\end{description} +\end{Desc} + + + +Definition at line 209 of file Ali\-HLTComponent.h. + +\footnotesize\begin{verbatim}209 { kUnknown=0, kSource=1, kProcessor=2, kSink=3 }; +\end{verbatim}\normalsize + + + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTComponent@{Ali\-HLTComponent}!AliHLTComponent@{AliHLTComponent}} +\index{AliHLTComponent@{AliHLTComponent}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent::Ali\-HLTComponent ()}\label{classAliHLTComponent_a0} + + +standard constructor + +Definition at line 49 of file Ali\-HLTComponent.cxx. + +References f\-Environment, fgp\-Component\-Handler, k\-Ali\-HLTVoid\-Data\-Type, k\-HLTLog\-Default, Ali\-HLTComponent\-Handler::Schedule\-Register(), and Ali\-HLTLogging::Set\-Local\-Logging\-Level(). + +\footnotesize\begin{verbatim}50 : +51 fEnvironment(), +52 fCurrentEvent(0), +53 fEventCount(-1), +54 fFailedEvents(0), +55 fCurrentEventData(), +56 fpInputBlocks(NULL), +57 fCurrentInputBlock(-1), +58 fSearchDataType(kAliHLTVoidDataType), +59 fClassName(), +60 fpInputObjects(NULL), +61 fpOutputBuffer(NULL), +62 fOutputBufferSize(0), +63 fOutputBufferFilled(0), +64 fOutputBlocks(), +65 fpStopwatches(new TObjArray(kSWTypeCount)) +66 { +67 // see header file for class documentation +68 // or +69 // refer to README to build package +70 // or +71 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +72 memset(&fEnvironment, 0, sizeof(AliHLTComponentEnvironment)); +73 if (fgpComponentHandler) +74 fgpComponentHandler->ScheduleRegister(this); +75 SetLocalLoggingLevel(kHLTLogDefault); +76 } + +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!AliHLTComponent@{AliHLTComponent}} +\index{AliHLTComponent@{AliHLTComponent}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent::Ali\-HLTComponent (const {\bf Ali\-HLTComponent} \&)}\label{classAliHLTComponent_a1} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 78 of file Ali\-HLTComponent.cxx. + +References HLTFatal, and k\-Ali\-HLTVoid\-Data\-Type. + +\footnotesize\begin{verbatim}79 : +80 AliHLTLogging(), +81 fEnvironment(), +82 fCurrentEvent(0), +83 fEventCount(-1), +84 fFailedEvents(0), +85 fCurrentEventData(), +86 fpInputBlocks(NULL), +87 fCurrentInputBlock(-1), +88 fSearchDataType(kAliHLTVoidDataType), +89 fClassName(), +90 fpInputObjects(NULL), +91 fpOutputBuffer(NULL), +92 fOutputBufferSize(0), +93 fOutputBufferFilled(0), +94 fOutputBlocks(), +95 fpStopwatches(NULL) +96 { +97 // see header file for class documentation +98 HLTFatal("copy constructor untested"); +99 } + +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!~AliHLTComponent@{$\sim$AliHLTComponent}} +\index{~AliHLTComponent@{$\sim$AliHLTComponent}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent::$\sim${\bf Ali\-HLTComponent} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTComponent_a3} + + +standard destructor + +Definition at line 108 of file Ali\-HLTComponent.cxx. + +References Cleanup\-Input\-Objects(), and fp\-Stopwatches. + +\footnotesize\begin{verbatim}109 { +110 // see header file for function documentation +111 CleanupInputObjects(); +112 if (fpStopwatches!=NULL) delete fpStopwatches; +113 fpStopwatches=NULL; +114 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTComponent@{Ali\-HLTComponent}!AllocMemory@{AllocMemory}} +\index{AllocMemory@{AllocMemory}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void $\ast$ Ali\-HLTComponent::Alloc\-Memory (unsigned long {\em size})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b7} + + +General memory allocation method. All memory which is going to be used 'outside' of the interface must be provided by the framework (online or offline). The method is redirected to a function provided by the current framework. Function pointers are transferred via the {\bf Ali\-HLTComponent\-Environment}{\rm (p.\,\pageref{structAliHLTComponentEnvironment})} structure. + +Definition at line 249 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Environment::f\-Alloc\-Memory\-Func, f\-Environment, Ali\-HLTComponent\-Environment::f\-Param, and HLTFatal. + +Referenced by Make\-Output\-Data\-Block\-List(). + +\footnotesize\begin{verbatim}250 { +251 // see header file for function documentation +252 if (fEnvironment.fAllocMemoryFunc) +253 return (*fEnvironment.fAllocMemoryFunc)(fEnvironment.fParam, size ); +254 HLTFatal("no memory allocation handler registered"); +255 return NULL; +256 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!CleanupInputObjects@{CleanupInputObjects}} +\index{CleanupInputObjects@{CleanupInputObjects}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Cleanup\-Input\-Objects ()\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_d5} + + +Clean the list of input objects. Cleanup is done at the end of each event processing. + +Definition at line 564 of file Ali\-HLTComponent.cxx. + +References fp\-Input\-Objects. + +Referenced by Process\-Event(), and $\sim$Ali\-HLTComponent(). + +\footnotesize\begin{verbatim}565 { +566 // see header file for function documentation +567 if (!fpInputObjects) return 0; +568 TObjArray* array=fpInputObjects; +569 fpInputObjects=NULL; +570 for (int i=0; iGetEntries(); i++) { +571 TObject* pObj=array->At(i); +572 if (pObj) delete pObj; +573 } +574 delete array; +575 return 0; +576 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!CopyDataType@{CopyDataType}} +\index{CopyDataType@{CopyDataType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Copy\-Data\-Type ({\bf Ali\-HLTComponent\-Data\-Type} \& {\em tgtdt}, const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em srcdt})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b3} + + +Copy data type structure Copies the value an {\bf Ali\-HLTComponent\-Data\-Type}{\rm (p.\,\pageref{structAliHLTComponentDataType})} structure to another one \begin{Desc} +\item[Parameters:] +\begin{description} +\item[\mbox{$\rightarrow$} {\em tgtdt}]target structure \item[\mbox{$\leftarrow$} {\em srcdt}]source structure \end{description} +\end{Desc} + + +Definition at line 374 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID, Ali\-HLTComponent\-Data\-Type::f\-Origin, k\-Ali\-HLTComponent\-Data\-Typef\-IDsize, and k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size. + +\footnotesize\begin{verbatim}375 { +376 // see header file for function documentation +377 memcpy(&tgtdt.fID[0], &srcdt.fID[0], kAliHLTComponentDataTypefIDsize); +378 memcpy(&tgtdt.fOrigin[0], &srcdt.fOrigin[0], kAliHLTComponentDataTypefOriginSize); +379 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!CreateEventDoneData@{CreateEventDoneData}} +\index{CreateEventDoneData@{CreateEventDoneData}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Create\-Event\-Done\-Data ({\bf Ali\-HLTComponent\-Event\-Done\-Data} {\em edd})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b28} + + +Insert event-done data information into the output. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em edd}]event-done data information \end{description} +\end{Desc} + + +Definition at line 790 of file Ali\-HLTComponent.cxx. + +References HLTWarning. + +\footnotesize\begin{verbatim}791 { +792 // see header file for function documentation +793 int iResult=-ENOSYS; +794 //#warning function not yet implemented +795 HLTWarning("function not yet implemented"); +796 return iResult; +797 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!CreateInputObject@{CreateInputObject}} +\index{CreateInputObject@{CreateInputObject}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TObject $\ast$ Ali\-HLTComponent::Create\-Input\-Object (int {\em idx}, int {\em b\-Force} = {\tt 0})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_d3} + + +Create an object from a specified input block. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em idx}]index of the input block \item[{\em b\-Force}]force the retrieval of an object, error messages are suppressed if {\em b\-Force\/} is not set \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to TObject, caller must delete the object after use \end{Desc} + + +Definition at line 509 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTUInt32\_\-t, Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, f\-Current\-Event\-Data, fp\-Input\-Blocks, Ali\-HLTComponent\-Block\-Data::f\-Ptr, Ali\-HLTComponent\-Block\-Data::f\-Size, Ali\-HLTMessage::Get\-Class(), HLTDebug, HLTError, and HLTFatal. + +Referenced by Get\-Input\-Object(). + +\footnotesize\begin{verbatim}510 { +511 // see header file for function documentation +512 TObject* pObj=NULL; +513 if (fpInputBlocks!=NULL) { +514 if ((UInt_t)idxGetName()); +524 } else { +525 } +526 } else { +527 // } else if (bForce!=0) { +528 HLTError("size missmatch: block size %d, indicated %d", fpInputBlocks[idx].fSize, firstWord+sizeof(AliHLTUInt32_t)); +529 } +530 } else { +531 HLTFatal("block descriptor empty"); +532 } +533 } else { +534 HLTError("index %d out of range %d", idx, fCurrentEventData.fBlockCnt); +535 } +536 } else { +537 HLTError("no input blocks available"); +538 } +539 +540 return pObj; +541 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!DataType2Text@{DataType2Text}} +\index{DataType2Text@{DataType2Text}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Data\-Type2Text (const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em type}, char {\em output}[k\-Ali\-HLTComponent\-Data\-Typef\-IDsize+k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size+2]) const\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b10} + + +Helper function to convert the data type to a string. + +Definition at line 216 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID, Ali\-HLTComponent\-Data\-Type::f\-Origin, k\-Ali\-HLTComponent\-Data\-Typef\-IDsize, and k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size. + +\footnotesize\begin{verbatim}217 { +218 // see header file for function documentation +219 memset( output, 0, kAliHLTComponentDataTypefIDsize+kAliHLTComponentDataTypefOriginSize+2 ); +220 strncat( output, type.fOrigin, kAliHLTComponentDataTypefOriginSize ); +221 strcat( output, ":" ); +222 strncat( output, type.fID, kAliHLTComponentDataTypefIDsize ); +223 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!DataType2Text@{DataType2Text}} +\index{DataType2Text@{DataType2Text}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}string Ali\-HLTComponent::Data\-Type2Text (const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em type})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTComponent_e2} + + +Helper function to convert the data type to a string. + +Definition at line 225 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID, Ali\-HLTComponent\-Data\-Type::f\-Origin, k\-Ali\-HLTComponent\-Data\-Typef\-IDsize, and k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size. + +Referenced by Get\-First\-Input\-Object(), and Print\-Data\-Type\-Content(). + +\footnotesize\begin{verbatim}226 { +227 // see header file for function documentation +228 string out(""); +229 +230 if (type==kAliHLTVoidDataType) { +231 out="VOID:VOID"; +232 } else { +233 // some gymnastics in order to avoid a '0' which is part of either or both +234 // ID and origin terminating the whole string. Unfortunately, string doesn't +235 // stop appending at the '0' if the number of elements to append was +236 // explicitely specified +237 string tmp(""); +238 tmp.append(type.fOrigin, kAliHLTComponentDataTypefOriginSize); +239 out.append(tmp.c_str()); +240 out.append(":"); +241 tmp=""; +242 tmp.append(type.fID, kAliHLTComponentDataTypefIDsize); +243 out.append(tmp.c_str()); +244 } +245 return out; +246 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!Deinit@{Deinit}} +\index{Deinit@{Deinit}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTComponent_a5} + + +Clean-up function to terminate data processing. Clean-up of common data structures after data processing. The call is redirected to the internal method {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTComponent_b6})} which can be overridden by the child class. + +Reimplemented in {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_a3})}, {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a5})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a5})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a5})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_a5})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a3})}. + +Definition at line 191 of file Ali\-HLTComponent.cxx. + +References Do\-Deinit(). + +Referenced by Ali\-HLT\_\-C\_\-Destroy\-Component(), Ali\-HLTProcessor::Deinit(), and Ali\-HLTTask::Deinit(). + +\footnotesize\begin{verbatim}192 { +193 // see header file for function documentation +194 int iResult=0; +195 iResult=DoDeinit(); +196 return iResult; +197 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!DoDeinit@{DoDeinit}} +\index{DoDeinit@{DoDeinit}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Do\-Deinit ()\hspace{0.3cm}{\tt [protected, virtual]}}\label{classAliHLTComponent_b6} + + +Default method for the internal clean-up. The method is called by {\bf Deinit}{\rm (p.\,\pageref{classAliHLTComponent_a5})} + +Reimplemented in {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a6})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a6})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a6})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_a6})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a4})}. + +Definition at line 209 of file Ali\-HLTComponent.cxx. + +References f\-Event\-Count. + +Referenced by Deinit(). + +\footnotesize\begin{verbatim}210 { +211 // see header file for function documentation +212 fEventCount=0; +213 return 0; +214 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!DoInit@{DoInit}} +\index{DoInit@{DoInit}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Do\-Init (int {\em argc}, const char $\ast$$\ast$ {\em argv})\hspace{0.3cm}{\tt [protected, virtual]}}\label{classAliHLTComponent_b5} + + +Default method for the internal initialization. The method is called by {\bf Init}{\rm (p.\,\pageref{classAliHLTComponent_a4})} + +Reimplemented in {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a4})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a4})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a4})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_a4})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a2})}. + +Definition at line 199 of file Ali\-HLTComponent.cxx. + +References f\-Event\-Count. + +Referenced by Init(). + +\footnotesize\begin{verbatim}200 { +201 // see header file for function documentation +202 if (argc==0 && argv==NULL) { +203 // this is currently just to get rid of the warning "unused parameter" +204 } +205 fEventCount=0; +206 return 0; +207 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!DoProcessing@{DoProcessing}} +\index{DoProcessing@{DoProcessing}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual int Ali\-HLTComponent::Do\-Processing (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks}, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\& {\em edd})\hspace{0.3cm}{\tt [pure virtual]}}\label{classAliHLTComponent_a7} + + +Internal processing of one event. The method is pure virtual and implemented by the child classes\begin{itemize} +\item {\bf Ali\-HLTProcessor}{\rm (p.\,\pageref{classAliHLTProcessor})}\item {\bf Ali\-HLTData\-Source}{\rm (p.\,\pageref{classAliHLTDataSource})}\item {\bf Ali\-HLTData\-Sink}{\rm (p.\,\pageref{classAliHLTDataSink})}\end{itemize} + + +\begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]\item[{\em blocks}]\item[{\em trig\-Data}]\item[{\em output\-Ptr}]\item[{\em size}]\item[{\em output\-Blocks}]out: the output block array is allocated internally \item[{\em edd}]\end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Implemented in {\bf Ali\-HLTData\-Sink} {\rm (p.\,\pageref{classAliHLTDataSink_a2})}, {\bf Ali\-HLTData\-Source} {\rm (p.\,\pageref{classAliHLTDataSource_a2})}, and {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_a4})}. + +Referenced by Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!EstimateObjectSize@{EstimateObjectSize}} +\index{EstimateObjectSize@{EstimateObjectSize}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Estimate\-Object\-Size (TObject $\ast$ {\em p\-Object}) const\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b27} + + +Estimate size of a TObject \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Object}]\end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]buffer size in byte \end{Desc} + + +Definition at line 781 of file Ali\-HLTComponent.cxx. + +\footnotesize\begin{verbatim}782 { +783 // see header file for function documentation +784 if (!pObject) return -EINVAL; +785 AliHLTMessage msg(kMESS_OBJECT); +786 msg.WriteObject(pObject); +787 return msg.Length(); +788 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!FillBlockData@{FillBlockData}} +\index{FillBlockData@{FillBlockData}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Fill\-Block\-Data ({\bf Ali\-HLTComponent\-Block\-Data} \& {\em block\-Data}) const\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b0} + + +Fill {\bf Ali\-HLTComponent\-Block\-Data}{\rm (p.\,\pageref{structAliHLTComponentBlockData})} structure with default values. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em block\-Data}]reference to data structure \end{description} +\end{Desc} + + +Definition at line 348 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, Fill\-Data\-Type(), Fill\-Shm\-Data(), Ali\-HLTComponent\-Block\-Data::f\-Offset, Ali\-HLTComponent\-Block\-Data::f\-Ptr, Ali\-HLTComponent\-Block\-Data::f\-Shm\-Key, Ali\-HLTComponent\-Block\-Data::f\-Size, Ali\-HLTComponent\-Block\-Data::f\-Specification, and Ali\-HLTComponent\-Block\-Data::f\-Struct\-Size. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Insert\-Output\-Block(). + +\footnotesize\begin{verbatim}349 { +350 // see header file for function documentation +351 blockData.fStructSize = sizeof(blockData); +352 FillShmData( blockData.fShmKey ); +353 blockData.fOffset = ~(AliHLTUInt32_t)0; +354 blockData.fPtr = NULL; +355 blockData.fSize = 0; +356 FillDataType( blockData.fDataType ); +357 blockData.fSpecification = kAliHLTVoidDataSpec; +358 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!FillDataType@{FillDataType}} +\index{FillDataType@{FillDataType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Fill\-Data\-Type ({\bf Ali\-HLTComponent\-Data\-Type} \& {\em data\-Type}) const\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b2} + + +Fill {\bf Ali\-HLTComponent\-Data\-Type}{\rm (p.\,\pageref{structAliHLTComponentDataType})} structure with default values. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em data\-Type}]reference to data structure \end{description} +\end{Desc} + + +Definition at line 368 of file Ali\-HLTComponent.cxx. + +Referenced by Fill\-Block\-Data(). + +\footnotesize\begin{verbatim}369 { +370 // see header file for function documentation +371 dataType=kAliHLTAnyDataType; +372 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!FillEventData@{FillEventData}} +\index{FillEventData@{FillEventData}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Fill\-Event\-Data ({\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTComponent_e3} + + +helper function to initialize {\bf Ali\-HLTComponent\-Event\-Data}{\rm (p.\,\pageref{structAliHLTComponentEventData})} structure + +Definition at line 399 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Event\-Data::f\-Struct\-Size. + +Referenced by Ali\-HLTTask::Process\-Task(). + +\footnotesize\begin{verbatim}400 { +401 // see header file for function documentation +402 memset(&evtData, 0, sizeof(AliHLTComponentEventData)); +403 evtData.fStructSize=sizeof(AliHLTComponentEventData); +404 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!FillShmData@{FillShmData}} +\index{FillShmData@{FillShmData}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Fill\-Shm\-Data ({\bf Ali\-HLTComponent\-Shm\-Data} \& {\em shm\-Data}) const\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b1} + + +Fill {\bf Ali\-HLTComponent\-Shm\-Data}{\rm (p.\,\pageref{structAliHLTComponentShmData})} structure with default values. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em shm\-Data}]reference to data structure \end{description} +\end{Desc} + + +Definition at line 360 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Shm\-Data::f\-Shm\-ID, Ali\-HLTComponent\-Shm\-Data::f\-Shm\-Type, and Ali\-HLTComponent\-Shm\-Data::f\-Struct\-Size. + +Referenced by Fill\-Block\-Data(). + +\footnotesize\begin{verbatim}361 { +362 // see header file for function documentation +363 shmData.fStructSize = sizeof(shmData); +364 shmData.fShmType = gkAliHLTComponentInvalidShmType; +365 shmData.fShmID = gkAliHLTComponentInvalidShmID; +366 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!FindInputBlock@{FindInputBlock}} +\index{FindInputBlock@{FindInputBlock}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Find\-Input\-Block (const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em p\-Block}) const\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_d2} + + +Get index in the array of input bocks. Calculate index and check integrety of a block data structure pointer. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Block}]pointer to block data \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]index of the block, -ENOENT if no block found \end{Desc} + + +Definition at line 660 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, f\-Current\-Event\-Data, and fp\-Input\-Blocks. + +\footnotesize\begin{verbatim}661 { +662 // see header file for function documentation +663 int iResult=-ENOENT; +664 if (fpInputBlocks!=NULL) { +665 if (pBlock) { +666 if (pBlock>=fpInputBlocks && pBlock$ $\ast$ {\em tgt\-List})}\label{classAliHLTComponent_a14} + + +Find matching data types between this component and a consumer component. Currently, a component can produce only one type of data. This restriction is most likely to be abolished in the future. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer}]a component and consumer of the data produced by this component \item[{\em tgt\-List}]reference to a vector list to receive the matching data types. \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]$>$= 0 success, neg. error code if failed \end{Desc} + + +Definition at line 300 of file Ali\-HLTComponent.cxx. + +References Get\-Output\-Data\-Type(). + +Referenced by Ali\-HLTTask::Get\-Nof\-Matching\-Data\-Types(). + +\footnotesize\begin{verbatim}301 { +302 // see header file for function documentation +303 int iResult=0; +304 if (pConsumer) { +305 vector ctlist; +306 ((AliHLTComponent*)pConsumer)->GetInputDataTypes(ctlist); +307 vector::iterator type=ctlist.begin(); +308 //AliHLTComponentDataType ouptdt=GetOutputDataType(); +309 //PrintDataTypeContent(ouptdt, "publisher \'%s\'"); +310 while (type!=ctlist.end() && iResult==0) { +311 //PrintDataTypeContent((*type), "consumer \'%s\'"); +312 if ((*type)==GetOutputDataType() || +313 (*type)==kAliHLTAnyDataType) { +314 if (tgtList) tgtList->push_back(*type); +315 iResult++; +316 // this loop has to be changed in case of multiple output types +317 break; +318 } +319 type++; +320 } +321 } else { +322 iResult=-EINVAL; +323 } +324 return iResult; +325 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetComponentID@{GetComponentID}} +\index{GetComponentID@{GetComponentID}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual const char$\ast$ Ali\-HLTComponent::Get\-Component\-ID ()\hspace{0.3cm}{\tt [pure virtual]}}\label{classAliHLTComponent_a9} + + +Get the id of the component. Each component is identified by a unique id. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]component id (string) \end{Desc} + + +Implemented in {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a10})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a10})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a10})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_a12})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Crude\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerCrudeComponent_a4})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Peak\-Finder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerPeakFinderComponent_a2})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a10})}. + +Referenced by Ali\-HLTData\-Source::Do\-Processing(), Ali\-HLTTask::Print\-Status(), Process\-Event(), Ali\-HLTTask::Process\-Task(), Ali\-HLTComponent\-Handler::Register\-Component(), and Ali\-HLTData\-Buffer::Set\-Consumer().\index{AliHLTComponent@{Ali\-HLTComponent}!GetComponentType@{GetComponentType}} +\index{GetComponentType@{GetComponentType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual {\bf TComponent\-Type} Ali\-HLTComponent::Get\-Component\-Type ()\hspace{0.3cm}{\tt [pure virtual]}}\label{classAliHLTComponent_a8} + + +Get the type of the component. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]component type id \end{Desc} + + +Implemented in {\bf Ali\-HLTData\-Sink} {\rm (p.\,\pageref{classAliHLTDataSink_a3})}, {\bf Ali\-HLTData\-Source} {\rm (p.\,\pageref{classAliHLTDataSource_a3})}, and {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_a5})}. + +Referenced by Ali\-HLTSystem::Init\-Benchmarking(), and Ali\-HLTTask::Process\-Task().\index{AliHLTComponent@{Ali\-HLTComponent}!GetDataType@{GetDataType}} +\index{GetDataType@{GetDataType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} Ali\-HLTComponent::Get\-Data\-Type (const TObject $\ast$ {\em p\-Object} = {\tt NULL})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b16} + + +Get data type of an input block. Get data type of the object previously fetched via Get\-First\-Input\-Object/Next\-Input\-Object or the last one if no object specified. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Object}]pointer to TObject \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]data specification, k\-Ali\-HLTVoid\-Data\-Spec if failed \end{Desc} + + +Definition at line 578 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, f\-Current\-Event\-Data, Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, fp\-Input\-Blocks, fp\-Input\-Objects, HLTError, and HLTFatal. + +\footnotesize\begin{verbatim}579 { +580 // see header file for function documentation +581 ALIHLTCOMPONENT_BASE_STOPWATCH(); +582 AliHLTComponentDataType dt=kAliHLTVoidDataType; +583 int idx=fCurrentInputBlock; +584 if (pObject) { +585 if (fpInputObjects==NULL || (idx=fpInputObjects->IndexOf(pObject))>=0) { +586 } else { +587 HLTError("unknown object %p", pObject); +588 } +589 } +590 if (idx>=0) { +591 if ((UInt_t)idx=0) { +631 // check for fpInputBlocks pointer done in FindInputBlock +632 pBlock=&fpInputBlocks[idx]; +633 } +634 return pBlock; +635 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetFirstInputObject@{GetFirstInputObject}} +\index{GetFirstInputObject@{GetFirstInputObject}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const TObject $\ast$ Ali\-HLTComponent::Get\-First\-Input\-Object (const char $\ast$ {\em dt\-ID}, const char $\ast$ {\em dt\-Origin}, const char $\ast$ {\em classname} = {\tt NULL}, int {\em b\-Force} = {\tt 0})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b14} + + +Get the first object of a specific data type from the input data. The hight-level methods provide functionality to transfer ROOT data structures which inherit from TObject. The method looks for the first ROOT object of type specified by the ID and Origin strings in the input stream. If also the class name is provided, the object is checked for the right class type. The input data block needs a certain structure, namely the buffer size as first word. If the cross check fails, the retrieval is silently abondoned, unless the {\em b\-Force\/} parameter is set.\par + {\em Note:\/} THE OBJECT MUST NOT BE DELETED by the caller. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em dt\-ID}]data type ID of the object \item[{\em dt\-Origin}]data type origin of the object \item[{\em classname}]class name of the object \item[{\em b\-Force}]force the retrieval of an object, error messages are suppressed if {\em b\-Force\/} is not set \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to TObject, NULL if no objects of specified type available \end{Desc} + + +Definition at line 467 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, Get\-First\-Input\-Object(), and Set\-Data\-Type(). + +\footnotesize\begin{verbatim}471 { +472 // see header file for function documentation +473 ALIHLTCOMPONENT_BASE_STOPWATCH(); +474 AliHLTComponentDataType dt; +475 SetDataType(dt, dtID, dtOrigin); +476 return GetFirstInputObject(dt, classname, bForce); +477 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetFirstInputObject@{GetFirstInputObject}} +\index{GetFirstInputObject@{GetFirstInputObject}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const TObject $\ast$ Ali\-HLTComponent::Get\-First\-Input\-Object (const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt} = {\tt {\bf k\-Ali\-HLTAny\-Data\-Type}}, const char $\ast$ {\em classname} = {\tt NULL}, int {\em b\-Force} = {\tt 0})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b13} + + +Get the first object of a specific data type from the input data. The hight-level methods provide functionality to transfer ROOT data structures which inherit from TObject. The method looks for the first ROOT object of type dt in the input stream. If also the class name is provided, the object is checked for the right class type. The input data block needs a certain structure, namely the buffer size as first word. If the cross check fails, the retrieval is silently abondoned, unless the {\em b\-Force\/} parameter is set.\par + {\em Note:\/} THE OBJECT MUST NOT BE DELETED by the caller. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em dt}]data type of the object \item[{\em classname}]class name of the object \item[{\em b\-Force}]force the retrieval of an object, error messages are suppressed if {\em b\-Force\/} is not set \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to TObject, NULL if no objects of specified type available \end{Desc} + + +Definition at line 446 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, Data\-Type2Text(), f\-Class\-Name, f\-Current\-Input\-Block, Find\-Input\-Block(), f\-Search\-Data\-Type, Get\-Input\-Object(), and HLTDebug. + +Referenced by Get\-First\-Input\-Object(). + +\footnotesize\begin{verbatim}449 { +450 // see header file for function documentation +451 ALIHLTCOMPONENT_BASE_STOPWATCH(); +452 fSearchDataType=dt; +453 if (classname) fClassName=classname; +454 else fClassName.clear(); +455 int idx=FindInputBlock(fSearchDataType, 0); +456 HLTDebug("found block %d when searching for data type %s", idx, DataType2Text(dt).c_str()); +457 TObject* pObj=NULL; +458 if (idx>=0) { +459 if ((pObj=GetInputObject(idx, fClassName.c_str(), bForce))!=NULL) { +460 fCurrentInputBlock=idx; +461 } else { +462 } +463 } +464 return pObj; +465 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetInputBlock@{GetInputBlock}} +\index{GetInputBlock@{GetInputBlock}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Block\-Data}$\ast$ Ali\-HLTComponent::Get\-Input\-Block (int {\em index})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b20} + + +Get input block by index.\par + {\em Note:\/} THE BLOCK DESCRIPTOR MUST NOT BE DELETED by the caller. \begin{Desc} +\item[Returns:]pointer to {\bf Ali\-HLTComponent\-Block\-Data}{\rm (p.\,\pageref{structAliHLTComponentBlockData})}, NULL if index out of range \end{Desc} +\index{AliHLTComponent@{Ali\-HLTComponent}!GetInputDataTypes@{GetInputDataTypes}} +\index{GetInputDataTypes@{GetInputDataTypes}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual void Ali\-HLTComponent::Get\-Input\-Data\-Types (vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&)\hspace{0.3cm}{\tt [pure virtual]}}\label{classAliHLTComponent_a10} + + +Get the input data types of the component. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]list of data types in the vector reference \end{Desc} + + +Implemented in {\bf Ali\-HLTData\-Source} {\rm (p.\,\pageref{classAliHLTDataSource_a4})}.\index{AliHLTComponent@{Ali\-HLTComponent}!GetInputObject@{GetInputObject}} +\index{GetInputObject@{GetInputObject}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TObject $\ast$ Ali\-HLTComponent::Get\-Input\-Object (int {\em idx}, const char $\ast$ {\em classname} = {\tt NULL}, int {\em b\-Force} = {\tt 0})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_d4} + + +Get input object Get object from the input block list. The methods first checks whether the object was already created. If not, it is created by {\bf Create\-Input\-Object}{\rm (p.\,\pageref{classAliHLTComponent_d3})} and inserted into the list of objects. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em idx}]index in the input block list \item[{\em classname}]name of the class, object is checked for correct class name if set \item[{\em b\-Force}]force the retrieval of an object, error messages are suppressed if {\em b\-Force\/} is not set \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to TObject \end{Desc} + + +Definition at line 543 of file Ali\-HLTComponent.cxx. + +References Create\-Input\-Object(), Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, f\-Current\-Event\-Data, fp\-Input\-Objects, and HLTFatal. + +Referenced by Get\-First\-Input\-Object(), and Get\-Next\-Input\-Object(). + +\footnotesize\begin{verbatim}544 { +545 // see header file for function documentation +546 if (fpInputObjects==NULL) { +547 fpInputObjects=new TObjArray(fCurrentEventData.fBlockCnt); +548 } +549 TObject* pObj=NULL; +550 if (fpInputObjects) { +551 pObj=fpInputObjects->At(idx); +552 if (pObj==NULL) { +553 pObj=CreateInputObject(idx, bForce); +554 if (pObj) { +555 fpInputObjects->AddAt(pObj, idx); +556 } +557 } +558 } else { +559 HLTFatal("memory allocation failed: TObjArray of size %d", fCurrentEventData.fBlockCnt); +560 } +561 return pObj; +562 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetNextInputBlock@{GetNextInputBlock}} +\index{GetNextInputBlock@{GetNextInputBlock}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ Ali\-HLTComponent::Get\-Next\-Input\-Block ()\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b21} + + +Get the next block of a specific data type from the input data. The method looks for the next block of type and class specified to the previous {\bf Get\-First\-Input\-Block}{\rm (p.\,\pageref{classAliHLTComponent_b18})} call. To be used within the high-level interface.\par + {\em Note:\/} THE BLOCK DESCRIPTOR MUST NOT BE DELETED by the caller. + +Definition at line 647 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, f\-Current\-Input\-Block, Find\-Input\-Block(), fp\-Input\-Blocks, and f\-Search\-Data\-Type. + +\footnotesize\begin{verbatim}648 { +649 // see header file for function documentation +650 ALIHLTCOMPONENT_BASE_STOPWATCH(); +651 int idx=FindInputBlock(fSearchDataType, fCurrentInputBlock+1); +652 const AliHLTComponentBlockData* pBlock=NULL; +653 if (idx>=0) { +654 // check for fpInputBlocks pointer done in FindInputBlock +655 pBlock=&fpInputBlocks[idx]; +656 } +657 return pBlock; +658 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetNextInputObject@{GetNextInputObject}} +\index{GetNextInputObject@{GetNextInputObject}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const TObject $\ast$ Ali\-HLTComponent::Get\-Next\-Input\-Object (int {\em b\-Force} = {\tt 0})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b15} + + +Get the next object of a specific data type from the input data. The hight-level methods provide functionality to transfer ROOT data structures which inherit from TObject. The method looks for the next ROOT object of type and class specified to the previous {\bf Get\-First\-Input\-Object}{\rm (p.\,\pageref{classAliHLTComponent_b13})} call.\par + {\em Note:\/} THE OBJECT MUST NOT BE DELETED by the caller. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em b\-Force}]force the retrieval of an object, error messages are suppressed if {\em b\-Force\/} is not set \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to TObject, NULL if no more objects available \end{Desc} + + +Definition at line 479 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, f\-Class\-Name, f\-Current\-Input\-Block, Find\-Input\-Block(), f\-Search\-Data\-Type, and Get\-Input\-Object(). + +\footnotesize\begin{verbatim}480 { +481 // see header file for function documentation +482 ALIHLTCOMPONENT_BASE_STOPWATCH(); +483 int idx=FindInputBlock(fSearchDataType, fCurrentInputBlock+1); +484 //HLTDebug("found block %d when searching for data type %s", idx, DataType2Text(fSearchDataType).c_str()); +485 TObject* pObj=NULL; +486 if (idx>=0) { +487 if ((pObj=GetInputObject(idx, fClassName.c_str(), bForce))!=NULL) { +488 fCurrentInputBlock=idx; +489 } +490 } +491 return pObj; +492 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetNumberOfInputBlocks@{GetNumberOfInputBlocks}} +\index{GetNumberOfInputBlocks@{GetNumberOfInputBlocks}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Get\-Number\-Of\-Input\-Blocks () const\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b12} + + +Get the number of input blocks. \begin{Desc} +\item[Returns:]number of input blocks \end{Desc} + + +Definition at line 437 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, f\-Current\-Event\-Data, and fp\-Input\-Blocks. + +\footnotesize\begin{verbatim}438 { +439 // see header file for function documentation +440 if (fpInputBlocks!=NULL) { +441 return fCurrentEventData.fBlockCnt; +442 } +443 return 0; +444 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetOutputDataSize@{GetOutputDataSize}} +\index{GetOutputDataSize@{GetOutputDataSize}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual void Ali\-HLTComponent::Get\-Output\-Data\-Size (unsigned long \& {\em const\-Base}, double \& {\em input\-Multiplier})\hspace{0.3cm}{\tt [pure virtual]}}\label{classAliHLTComponent_a12} + + +Get a ratio by how much the data volume is shrinked or enhanced. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em const\-Base}]{\em return\/}: additive part, independent of the input data volume \item[{\em input\-Multiplier}]{\em return\/}: multiplication ratio \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]values in the reference variables \end{Desc} + + +Implemented in {\bf Ali\-HLTData\-Sink} {\rm (p.\,\pageref{classAliHLTDataSink_a5})}, {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a13})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a13})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a13})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_a15})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a8})}. + +Referenced by Ali\-HLT\_\-C\_\-Get\-Output\-Size(), and Ali\-HLTTask::Process\-Task().\index{AliHLTComponent@{Ali\-HLTComponent}!GetOutputDataType@{GetOutputDataType}} +\index{GetOutputDataType@{GetOutputDataType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual {\bf Ali\-HLTComponent\-Data\-Type} Ali\-HLTComponent::Get\-Output\-Data\-Type ()\hspace{0.3cm}{\tt [pure virtual]}}\label{classAliHLTComponent_a11} + + +Get the output data type of the component. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]output data type \end{Desc} + + +Implemented in {\bf Ali\-HLTData\-Sink} {\rm (p.\,\pageref{classAliHLTDataSink_a4})}, {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a12})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a12})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a12})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_a14})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a7})}. + +Referenced by Ali\-HLT\_\-C\_\-Get\-Output\-Data\-Type(), Find\-Matching\-Data\-Types(), and Make\-Output\-Data\-Block\-List().\index{AliHLTComponent@{Ali\-HLTComponent}!GetSpecification@{GetSpecification}} +\index{GetSpecification@{GetSpecification}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} Ali\-HLTComponent::Get\-Specification (const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em p\-Block} = {\tt NULL})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b22} + + +Get data specification of an input block. Get data specification of the input bblock previously fetched via Get\-First\-Input\-Object/Next\-Input\-Object or the last one if no block specified. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Block}]pointer to input block \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]data specification, k\-Ali\-HLTVoid\-Data\-Spec if failed \end{Desc} + + +Definition at line 676 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, Ali\-HLTUInt32\_\-t, Find\-Input\-Block(), fp\-Input\-Blocks, fp\-Input\-Objects, Ali\-HLTComponent\-Block\-Data::f\-Specification, and HLTError. + +\footnotesize\begin{verbatim}677 { +678 // see header file for function documentation +679 ALIHLTCOMPONENT_BASE_STOPWATCH(); +680 AliHLTUInt32_t iSpec=kAliHLTVoidDataSpec; +681 int idx=fCurrentInputBlock; +682 if (pBlock) { +683 if (fpInputObjects==NULL || (idx=FindInputBlock(pBlock))>=0) { +684 } else { +685 HLTError("unknown Block %p", pBlock); +686 } +687 } +688 if (idx>=0) { +689 // check for fpInputBlocks pointer done in FindInputBlock +690 iSpec=fpInputBlocks[idx].fSpecification; +691 } +692 return iSpec; +693 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!GetSpecification@{GetSpecification}} +\index{GetSpecification@{GetSpecification}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} Ali\-HLTComponent::Get\-Specification (const TObject $\ast$ {\em p\-Object} = {\tt NULL})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b17} + + +Get data specification of an input block. Get data specification of the object previously fetched via Get\-First\-Input\-Object/Next\-Input\-Object or the last one if no object specified. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Object}]pointer to TObject \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]data specification, k\-Ali\-HLTVoid\-Data\-Spec if failed \end{Desc} + + +Definition at line 600 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, Ali\-HLTUInt32\_\-t, Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, f\-Current\-Event\-Data, fp\-Input\-Blocks, fp\-Input\-Objects, Ali\-HLTComponent\-Block\-Data::f\-Specification, HLTError, and HLTFatal. + +\footnotesize\begin{verbatim}601 { +602 // see header file for function documentation +603 ALIHLTCOMPONENT_BASE_STOPWATCH(); +604 AliHLTUInt32_t iSpec=kAliHLTVoidDataSpec; +605 int idx=fCurrentInputBlock; +606 if (pObject) { +607 if (fpInputObjects==NULL || (idx=fpInputObjects->IndexOf(pObject))>=0) { +608 } else { +609 HLTError("unknown object %p", pObject); +610 } +611 } +612 if (idx>=0) { +613 if ((UInt_t)idx=0) fEventCount++; +434 return fEventCount; +435 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!Init@{Init}} +\index{Init@{Init}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Init ({\bf Ali\-HLTComponent\-Environment} $\ast$ {\em environ}, void $\ast$ {\em environ\-Param}, int {\em argc}, const char $\ast$$\ast$ {\em argv})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTComponent_a4} + + +Init function to prepare data processing. Initialization of common data structures for a sequence of events. The call is redirected to the internal method {\bf Do\-Init}{\rm (p.\,\pageref{classAliHLTComponent_b5})} which can be overridden by the child class.\par + During Init also the environment structure is passed to the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em environ}]environment pointer with environment dependend function calls \item[{\em environ\-Param}]additionel parameter for function calls, the pointer is passed as it is \item[{\em argc}]size of the argument array \item[{\em argv}]agument array for component initialization \end{description} +\end{Desc} + + +Reimplemented in {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_a2})}. + +Definition at line 135 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Log\-Severity, Do\-Init(), f\-Environment, f\-Event\-Count, Ali\-HLTComponent\-Environment::f\-Param, HLTError, and Ali\-HLTLogging::Set\-Local\-Logging\-Level(). + +Referenced by Ali\-HLTComponent\-Handler::Create\-Component(), and Ali\-HLTProcessor::Init(). + +\footnotesize\begin{verbatim}136 { +137 // see header file for function documentation +138 int iResult=0; +139 if (environ) { +140 memcpy(&fEnvironment, environ, sizeof(AliHLTComponentEnvironment)); +141 fEnvironment.fParam=environParam; +142 } +143 const char** pArguments=NULL; +144 int iNofChildArgs=0; +145 TString argument=""; +146 int bMissingParam=0; +147 if (argc>0) { +148 pArguments=new const char*[argc]; +149 if (pArguments) { +150 for (int i=0; i=0; i++) { +151 argument=argv[i]; +152 if (argument.IsNull()) continue; +153 +154 // benchmark +155 if (argument.CompareTo("benchmark")==0) { +156 +157 // loglevel +158 } else if (argument.CompareTo("loglevel")==0) { +159 if ((bMissingParam=(++i>=argc))) break; +160 TString parameter(argv[i]); +161 parameter.Remove(TString::kLeading, ' '); // remove all blanks +162 if (parameter.BeginsWith("0x") && +163 parameter.Replace(0,2,"",0).IsHex()) { +164 AliHLTComponentLogSeverity loglevel=kHLTLogNone; +165 sscanf(parameter.Data(),"%x", (unsigned int*)&loglevel); +166 SetLocalLoggingLevel(loglevel); +167 } else { +168 HLTError("wrong parameter for argument %s, hex number expected", argument.Data()); +169 iResult=-EINVAL; +170 } +171 } else { +172 pArguments[iNofChildArgs++]=argv[i]; +173 } +174 } +175 } else { +176 iResult=-ENOMEM; +177 } +178 } +179 if (bMissingParam) { +180 HLTError("missing parameter for argument %s", argument.Data()); +181 iResult=-EINVAL; +182 } +183 if (iResult>=0) { +184 iResult=DoInit(iNofChildArgs, pArguments); +185 } +186 if (iResult>=0) fEventCount=0; +187 if (pArguments) delete [] pArguments; +188 return iResult; +189 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!InsertOutputBlock@{InsertOutputBlock}} +\index{InsertOutputBlock@{InsertOutputBlock}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Insert\-Output\-Block (void $\ast$ {\em p\-Buffer}, int {\em i\-Size}, const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt}, {\bf Ali\-HLTUInt32\_\-t} {\em spec})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_d6} + + +Insert a buffer into the output block stream. This is the only method to insert blocks into the output stream, called from all types of the Pushback method. The actual data might have been written to the output buffer already. In that case NULL can be provided as buffer, only the block descriptor will be build. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Buffer}]pointer to buffer \item[{\em i\-Size}]size of the buffer in byte \item[{\em dt}]data type \item[{\em spec}]data specification \end{description} +\end{Desc} + + +Definition at line 745 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTUInt8\_\-t, Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, Fill\-Block\-Data(), Ali\-HLTComponent\-Block\-Data::f\-Offset, f\-Output\-Blocks, f\-Output\-Buffer\-Filled, f\-Output\-Buffer\-Size, fp\-Output\-Buffer, Ali\-HLTComponent\-Block\-Data::f\-Ptr, Ali\-HLTComponent\-Block\-Data::f\-Size, Ali\-HLTComponent\-Block\-Data::f\-Specification, and HLTError. + +Referenced by Push\-Back(). + +\footnotesize\begin{verbatim}746 { +747 // see header file for function documentation +748 int iResult=0; +749 if (pBuffer) { +750 if (fpOutputBuffer && iSize<=(int)(fOutputBufferSize-fOutputBufferFilled)) { +751 AliHLTUInt8_t* pTgt=fpOutputBuffer+fOutputBufferFilled; +752 AliHLTComponentBlockData bd; +753 FillBlockData( bd ); +754 bd.fOffset = fOutputBufferFilled; +755 bd.fPtr = pTgt; +756 bd.fSize = iSize; +757 bd.fDataType = dt; +758 bd.fSpecification = spec; +759 if (pBuffer!=NULL && pBuffer!=pTgt) { +760 memcpy(pTgt, pBuffer, iSize); +761 //AliHLTUInt32_t firstWord=*((AliHLTUInt32_t*)pBuffer); +762 //HLTDebug("copy %d bytes from %p to output buffer %p, first word %#x", iSize, pBuffer, pTgt, firstWord); +763 } +764 fOutputBufferFilled+=bd.fSize; +765 fOutputBlocks.push_back( bd ); +766 //HLTDebug("buffer inserted to output: size %d data type %s spec %#x", iSize, DataType2Text(dt).c_str(), spec); +767 } else { +768 if (fpOutputBuffer) { +769 HLTError("too little space in output buffer: %d, required %d", fOutputBufferSize-fOutputBufferFilled, iSize); +770 } else { +771 HLTError("output buffer not available"); +772 } +773 iResult=-ENOSPC; +774 } +775 } else { +776 iResult=-EINVAL; +777 } +778 return iResult; +779 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!MakeOutputDataBlockList@{MakeOutputDataBlockList}} +\index{MakeOutputDataBlockList@{MakeOutputDataBlockList}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Make\-Output\-Data\-Block\-List (const vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em blocks}, {\bf Ali\-HLTUInt32\_\-t} $\ast$ {\em block\-Count}, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$$\ast$ {\em output\-Blocks})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b8} + + +Helper function to create a monolithic Block\-Data description block out of a list Block\-Data descriptors. For convenience, inside the interface vector lists are used, to make the interface pure C style, monilithic blocks must be exchanged. The method is redirected to a function provided by the current framework. Function pointers are transferred via the {\bf Ali\-HLTComponent\-Environment}{\rm (p.\,\pageref{structAliHLTComponentEnvironment})} structure. + +Definition at line 258 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTUInt32\_\-t, Alloc\-Memory(), Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, and Get\-Output\-Data\-Type(). + +Referenced by Process\-Event(). + +\footnotesize\begin{verbatim}260 { +261 // see header file for function documentation +262 if ( blockCount==NULL || outputBlocks==NULL ) +263 return -EFAULT; +264 AliHLTUInt32_t count = blocks.size(); +265 if ( !count ) +266 { +267 *blockCount = 0; +268 *outputBlocks = NULL; +269 return 0; +270 } +271 *outputBlocks = reinterpret_cast( AllocMemory( sizeof(AliHLTComponentBlockData)*count ) ); +272 if ( !*outputBlocks ) +273 return -ENOMEM; +274 for ( unsigned long i = 0; i < count; i++ ) { +275 (*outputBlocks)[i] = blocks[i]; +276 if (blocks[i].fDataType==kAliHLTAnyDataType) { +277 (*outputBlocks)[i].fDataType=GetOutputDataType(); +278 /* data type was set to the output data type by the PubSub AliRoot +279 Wrapper component, if data type of the block was ********:****. +280 Now handled by the component base class in order to have same +281 behavior when running embedded in AliRoot +282 memset((*outputBlocks)[i].fDataType.fID, '*', kAliHLTComponentDataTypefIDsize); +283 memset((*outputBlocks)[i].fDataType.fOrigin, '*', kAliHLTComponentDataTypefOriginSize); +284 */ +285 } +286 } +287 *blockCount = count; +288 return 0; +289 +290 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent} \& Ali\-HLTComponent::operator= (const {\bf Ali\-HLTComponent} \&)}\label{classAliHLTComponent_a2} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 101 of file Ali\-HLTComponent.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}102 { +103 // see header file for class documentation +104 HLTFatal("assignment operator untested"); +105 return *this; +106 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!PrintComponentDataTypeInfo@{PrintComponentDataTypeInfo}} +\index{PrintComponentDataTypeInfo@{PrintComponentDataTypeInfo}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Print\-Component\-Data\-Type\-Info (const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt})}\label{classAliHLTComponent_a16} + + +Print info on an {\bf Ali\-HLTComponent\-Data\-Type}{\rm (p.\,\pageref{structAliHLTComponentDataType})} structure This is just a helper function to examine an {\bf Ali\-HLTComponent\-Data\-Type}{\rm (p.\,\pageref{structAliHLTComponentDataType})} structur. + +Definition at line 406 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID, Ali\-HLTComponent\-Data\-Type::f\-Origin, Ali\-HLTComponent\-Data\-Type::f\-Struct\-Size, k\-HLTLog\-None, and Ali\-HLTLogging::Message(). + +\footnotesize\begin{verbatim}407 { +408 // see header file for function documentation +409 TString msg; +410 msg.Form("AliHLTComponentDataType(%d): ID=\"", dt.fStructSize); +411 for ( int i = 0; i < kAliHLTComponentDataTypefIDsize; i++ ) { +412 if (dt.fID[i]!=0) msg+=dt.fID[i]; +413 else msg+="\\0"; +414 } +415 msg+="\" Origin=\""; +416 for ( int i = 0; i < kAliHLTComponentDataTypefOriginSize; i++ ) { +417 if (dt.fOrigin[i]!=0) msg+=dt.fOrigin[i]; +418 else msg+="\\0"; +419 } +420 msg+="\""; +421 AliHLTLogging::Message(NULL, kHLTLogNone, NULL , NULL, msg.Data()); +422 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!PrintDataTypeContent@{PrintDataTypeContent}} +\index{PrintDataTypeContent@{PrintDataTypeContent}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Print\-Data\-Type\-Content ({\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt}, const char $\ast$ {\em format} = {\tt NULL}) const}\label{classAliHLTComponent_a15} + + +Helper function to print content of data type. + +Definition at line 327 of file Ali\-HLTComponent.cxx. + +References Data\-Type2Text(), Ali\-HLTComponent\-Data\-Type::f\-ID, Ali\-HLTComponent\-Data\-Type::f\-Origin, and HLTMessage. + +\footnotesize\begin{verbatim}328 { +329 // see header file for function documentation +330 const char* fmt="publisher \'%s\'"; +331 if (format) fmt=format; +332 HLTMessage(fmt, (DataType2Text(dt)).c_str()); +333 HLTMessage("%x %x %x %x %x %x %x %x : %x %x %x %x", +334 dt.fID[0], +335 dt.fID[1], +336 dt.fID[2], +337 dt.fID[3], +338 dt.fID[4], +339 dt.fID[5], +340 dt.fID[6], +341 dt.fID[7], +342 dt.fOrigin[0], +343 dt.fOrigin[1], +344 dt.fOrigin[2], +345 dt.fOrigin[3]); +346 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!ProcessEvent@{ProcessEvent}} +\index{ProcessEvent@{ProcessEvent}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Process\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, {\bf Ali\-HLTUInt32\_\-t} \& {\em output\-Block\-Cnt}, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$\& {\em output\-Blocks}, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\& {\em edd})}\label{classAliHLTComponent_a6} + + +Processing of one event. The method is the entrance of the event processing. The parameters are cached for uses with the high-level interface and the Do\-Processing implementation is called. + +\begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]\item[{\em blocks}]\item[{\em trig\-Data}]\item[{\em output\-Ptr}]\item[{\em size}]\item[{\em output\-Block\-Cnt}]out: size of the output block array, set by the component \item[{\em output\-Blocks}]out: the output block array is allocated internally \item[{\em edd}]\end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 799 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, ALIHLTCOMPONENT\_\-DA\_\-STOPWATCH, Cleanup\-Input\-Objects(), Do\-Processing(), f\-Current\-Event, f\-Current\-Event\-Data, f\-Current\-Input\-Block, Ali\-HLTComponent\-Event\-Data::f\-Event\-ID, f\-Output\-Blocks, f\-Output\-Buffer\-Filled, f\-Output\-Buffer\-Size, fp\-Input\-Blocks, fp\-Output\-Buffer, f\-Search\-Data\-Type, Get\-Component\-ID(), HLTError, HLTFatal, Increment\-Event\-Counter(), and Make\-Output\-Data\-Block\-List(). + +Referenced by Ali\-HLT\_\-C\_\-Process\-Event(), and Ali\-HLTTask::Process\-Task(). + +\footnotesize\begin{verbatim}807 { +808 // see header file for function documentation +809 ALIHLTCOMPONENT_BASE_STOPWATCH(); +810 int iResult=0; +811 fCurrentEvent=evtData.fEventID; +812 fCurrentEventData=evtData; +813 fpInputBlocks=blocks; +814 fCurrentInputBlock=-1; +815 fSearchDataType=kAliHLTAnyDataType; +816 fpOutputBuffer=outputPtr; +817 fOutputBufferSize=size; +818 fOutputBufferFilled=0; +819 fOutputBlocks.clear(); +820 +821 vector blockData; +822 { // dont delete, sets the scope for the stopwatch guard +823 ALIHLTCOMPONENT_DA_STOPWATCH(); +824 iResult=DoProcessing(evtData, blocks, trigData, outputPtr, size, blockData, edd); +825 } // end of the scope of the stopwatch guard +826 if (iResult>=0) { +827 if (fOutputBlocks.size()>0) { +828 //HLTDebug("got %d block(s) via high level interface", fOutputBlocks.size()); +829 if (blockData.size()>0) { +830 HLTError("low level and high interface must not be mixed; use PushBack methods to insert data blocks"); +831 iResult=-EFAULT; +832 } else { +833 iResult=MakeOutputDataBlockList(fOutputBlocks, &outputBlockCnt, &outputBlocks); +834 size=fOutputBufferFilled; +835 } +836 } else { +837 iResult=MakeOutputDataBlockList(blockData, &outputBlockCnt, &outputBlocks); +838 } +839 if (iResult<0) { +840 HLTFatal("component %s (%p): can not convert output block descriptor list", GetComponentID(), this); +841 } +842 } +843 if (iResult<0) { +844 outputBlockCnt=0; +845 outputBlocks=NULL; +846 } +847 CleanupInputObjects(); +848 IncrementEventCounter(); +849 return iResult; +850 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!PushBack@{PushBack}} +\index{PushBack@{PushBack}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Push\-Back (void $\ast$ {\em p\-Buffer}, int {\em i\-Size}, const char $\ast$ {\em dt\-ID}, const char $\ast$ {\em dt\-Origin}, {\bf Ali\-HLTUInt32\_\-t} {\em spec} = {\tt {\bf k\-Ali\-HLTVoid\-Data\-Spec}})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b26} + + +Insert an object into the output. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Buffer}]pointer to buffer \item[{\em i\-Size}]size of the buffer \item[{\em dt\-ID}]data type ID of the object \item[{\em dt\-Origin}]data type origin of the object \item[{\em spec}]data specification \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 736 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, Push\-Back(), and Set\-Data\-Type(). + +\footnotesize\begin{verbatim}737 { +738 // see header file for function documentation +739 ALIHLTCOMPONENT_BASE_STOPWATCH(); +740 AliHLTComponentDataType dt; +741 SetDataType(dt, dtID, dtOrigin); +742 return PushBack(pBuffer, iSize, dt, spec); +743 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!PushBack@{PushBack}} +\index{PushBack@{PushBack}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Push\-Back (void $\ast$ {\em p\-Buffer}, int {\em i\-Size}, const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt}, {\bf Ali\-HLTUInt32\_\-t} {\em spec} = {\tt {\bf k\-Ali\-HLTVoid\-Data\-Spec}})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b25} + + +Insert an object into the output. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Buffer}]pointer to buffer \item[{\em i\-Size}]size of the buffer \item[{\em dt}]data type of the object \item[{\em spec}]data specification \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 729 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, and Insert\-Output\-Block(). + +\footnotesize\begin{verbatim}730 { +731 // see header file for function documentation +732 ALIHLTCOMPONENT_BASE_STOPWATCH(); +733 return InsertOutputBlock(pBuffer, iSize, dt, spec); +734 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!PushBack@{PushBack}} +\index{PushBack@{PushBack}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Push\-Back (TObject $\ast$ {\em p\-Object}, const char $\ast$ {\em dt\-ID}, const char $\ast$ {\em dt\-Origin}, {\bf Ali\-HLTUInt32\_\-t} {\em spec} = {\tt {\bf k\-Ali\-HLTVoid\-Data\-Spec}})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b24} + + +Insert an object into the output. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Object}]pointer to root object \item[{\em dt\-ID}]data type ID of the object \item[{\em dt\-Origin}]data type origin of the object \item[{\em spec}]data specification \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 720 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, Push\-Back(), and Set\-Data\-Type(). + +\footnotesize\begin{verbatim}721 { +722 // see header file for function documentation +723 ALIHLTCOMPONENT_BASE_STOPWATCH(); +724 AliHLTComponentDataType dt; +725 SetDataType(dt, dtID, dtOrigin); +726 return PushBack(pObject, dt, spec); +727 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!PushBack@{PushBack}} +\index{PushBack@{PushBack}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Push\-Back (TObject $\ast$ {\em p\-Object}, const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em dt}, {\bf Ali\-HLTUInt32\_\-t} {\em spec} = {\tt {\bf k\-Ali\-HLTVoid\-Data\-Spec}})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b23} + + +Insert an object into the output. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Object}]pointer to root object \item[{\em dt}]data type of the object \item[{\em spec}]data specification \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 695 of file Ali\-HLTComponent.cxx. + +References ALIHLTCOMPONENT\_\-BASE\_\-STOPWATCH, HLTDebug, HLTError, Insert\-Output\-Block(), and Ali\-HLTMessage::Set\-Length(). + +Referenced by Push\-Back(). + +\footnotesize\begin{verbatim}696 { +697 // see header file for function documentation +698 ALIHLTCOMPONENT_BASE_STOPWATCH(); +699 int iResult=0; +700 if (pObject) { +701 AliHLTMessage msg(kMESS_OBJECT); +702 msg.WriteObject(pObject); +703 Int_t iMsgLength=msg.Length(); +704 if (iMsgLength>0) { +705 msg.SetLength(); // sets the length to the first (reserved) word +706 iResult=InsertOutputBlock(msg.Buffer(), iMsgLength, dt, spec); +707 if (iResult>=0) { +708 HLTDebug("object %s (%p) size %d inserted to output", pObject->ClassName(), pObject, iMsgLength); +709 } +710 } else { +711 HLTError("object serialization failed for object %p", pObject); +712 iResult=-ENOMSG; +713 } +714 } else { +715 iResult=-EINVAL; +716 } +717 return iResult; +718 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!SetDataType@{SetDataType}} +\index{SetDataType@{SetDataType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent::Set\-Data\-Type ({\bf Ali\-HLTComponent\-Data\-Type} \& {\em tgtdt}, const char $\ast$ {\em id}, const char $\ast$ {\em origin})\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTComponent_b4} + + +Set the ID and Origin of an {\bf Ali\-HLTComponent\-Data\-Type}{\rm (p.\,\pageref{structAliHLTComponentDataType})} structure. The function sets the f\-Structure\-Size member and copies the strings to the ID and Origin. Only characters from the valid part of the string are copied, the rest is fille with 0's. Please note that the f\-ID and f\-Origin members are not strings, just arrays of chars of size {\bf k\-Ali\-HLTComponent\-Data\-Typef\-IDsize}{\rm (p.\,\pageref{AliHLTDataTypes_8h_a12})} and {\bf k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size}{\rm (p.\,\pageref{AliHLTDataTypes_8h_a13})} respectively and not necessarily with a terminating zero. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em tgtdt}]target data type structure \item[{\em id}]ID string \item[{\em origin}]Origin string \end{description} +\end{Desc} + + +Definition at line 381 of file Ali\-HLTComponent.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID, Ali\-HLTComponent\-Data\-Type::f\-Origin, Ali\-HLTComponent\-Data\-Type::f\-Struct\-Size, HLTWarning, k\-Ali\-HLTComponent\-Data\-Typef\-IDsize, and k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size. + +Referenced by Get\-First\-Input\-Block(), Get\-First\-Input\-Object(), and Push\-Back(). + +\footnotesize\begin{verbatim}382 { +383 // see header file for function documentation +384 tgtdt.fStructSize = sizeof(AliHLTComponentDataType); +385 memset(&tgtdt.fID[0], 0, kAliHLTComponentDataTypefIDsize); +386 memset(&tgtdt.fOrigin[0], 0, kAliHLTComponentDataTypefOriginSize); +387 +388 if ((int)strlen(id)>kAliHLTComponentDataTypefIDsize) { +389 HLTWarning("data type id %s is too long, truncated to %d", id, kAliHLTComponentDataTypefIDsize); +390 } +391 strncpy(&tgtdt.fID[0], id, kAliHLTComponentDataTypefIDsize); +392 +393 if ((int)strlen(origin)>kAliHLTComponentDataTypefOriginSize) { +394 HLTWarning("data type origin %s is too long, truncated to %d", origin, kAliHLTComponentDataTypefOriginSize); +395 } +396 strncpy(&tgtdt.fOrigin[0], origin, kAliHLTComponentDataTypefOriginSize); +397 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!SetGlobalComponentHandler@{SetGlobalComponentHandler}} +\index{SetGlobalComponentHandler@{SetGlobalComponentHandler}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Set\-Global\-Component\-Handler ({\bf Ali\-HLTComponent\-Handler} $\ast$ {\em p\-CH}, int {\em b\-Overwrite} = {\tt 0})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTComponent_e0} + + +Set the global component handler. The static method is needed for the automatic registration of components. + +Definition at line 118 of file Ali\-HLTComponent.cxx. + +References fgp\-Component\-Handler. + +Referenced by Ali\-HLTComponent\-Handler::Add\-Standard\-Components(), Ali\-HLTComponent\-Handler::Load\-Library(), and Unset\-Global\-Component\-Handler(). + +\footnotesize\begin{verbatim}119 { +120 // see header file for function documentation +121 int iResult=0; +122 if (fgpComponentHandler==NULL || bOverwrite!=0) +123 fgpComponentHandler=pCH; +124 else +125 iResult=-EPERM; +126 return iResult; +127 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!SetStopwatch@{SetStopwatch}} +\index{SetStopwatch@{SetStopwatch}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Set\-Stopwatch (TObject $\ast$ {\em p\-SW}, {\bf Ali\-HLTStopwatch\-Type} {\em type} = {\tt kSWBase})}\label{classAliHLTComponent_a17} + + +Set a stopwatch for a given purpose. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-SW}]stopwatch object \item[{\em type}]type of the stopwatch \end{description} +\end{Desc} + + +Definition at line 918 of file Ali\-HLTComponent.cxx. + +References fp\-Stopwatches, and HLTWarning. + +Referenced by Ali\-HLTSystem::Init\-Benchmarking(), and Set\-Stopwatches(). + +\footnotesize\begin{verbatim}919 { +920 // see header file for function documentation +921 int iResult=0; +922 if (pSW!=NULL && typeAt((int)type); +925 if (pSW==NULL // explicit reset +926 || pObj==NULL) { // explicit set +927 fpStopwatches->AddAt(pSW, (int)type); +928 } else if (pObj!=pSW) { +929 HLTWarning("stopwatch %d already set, reset first", (int)type); +930 iResult=-EBUSY; +931 } +932 } +933 } else { +934 iResult=-EINVAL; +935 } +936 return iResult; +937 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!SetStopwatches@{SetStopwatches}} +\index{SetStopwatches@{SetStopwatches}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Set\-Stopwatches (TObj\-Array $\ast$ {\em p\-Stopwatches})}\label{classAliHLTComponent_a18} + + +Init a set of stopwatches. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Stopwatches}]object array of stopwatches \end{description} +\end{Desc} + + +Definition at line 939 of file Ali\-HLTComponent.cxx. + +References k\-SWType\-Count, and Set\-Stopwatch(). + +Referenced by Ali\-HLTSystem::Init\-Benchmarking(). + +\footnotesize\begin{verbatim}940 { +941 // see header file for function documentation +942 if (pStopwatches==NULL) return -EINVAL; +943 +944 int iResult=0; +945 for (int i=0 ; i<(int)kSWTypeCount && pStopwatches->GetEntries(); i++) +946 SetStopwatch(pStopwatches->At(i), (AliHLTStopwatchType)i); +947 return iResult; +948 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent@{Ali\-HLTComponent}!Spawn@{Spawn}} +\index{Spawn@{Spawn}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual {\bf Ali\-HLTComponent}$\ast$ Ali\-HLTComponent::Spawn ()\hspace{0.3cm}{\tt [pure virtual]}}\label{classAliHLTComponent_a13} + + +Spawn function. Each component must implement a spawn function to create a new instance of the class. Basically the function must return {\em new {\bf my\_\-class\_\-name}\/}. \begin{Desc} +\item[Returns:]new class instance \end{Desc} + + +Implemented in {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a14})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a15})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a15})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_a16})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Crude\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerCrudeComponent_a5})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Peak\-Finder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerPeakFinderComponent_a3})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a9})}. + +Referenced by Ali\-HLTComponent\-Handler::Create\-Component().\index{AliHLTComponent@{Ali\-HLTComponent}!UnsetGlobalComponentHandler@{UnsetGlobalComponentHandler}} +\index{UnsetGlobalComponentHandler@{UnsetGlobalComponentHandler}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Unset\-Global\-Component\-Handler ()\hspace{0.3cm}{\tt [static]}}\label{classAliHLTComponent_e1} + + +Clear the global component handler. The static method is needed for the automatic registration of components. + +Definition at line 129 of file Ali\-HLTComponent.cxx. + +References Set\-Global\-Component\-Handler(). + +Referenced by Ali\-HLTComponent\-Handler::Add\-Standard\-Components(), and Ali\-HLTComponent\-Handler::Load\-Library(). + +\footnotesize\begin{verbatim}130 { +131 // see header file for function documentation +132 return SetGlobalComponentHandler(NULL,1); +133 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTComponent@{Ali\-HLTComponent}!fClassName@{fClassName}} +\index{fClassName@{fClassName}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}string {\bf Ali\-HLTComponent::f\-Class\-Name}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r8} + + +name of the class for the object to search for + +Definition at line 846 of file Ali\-HLTComponent.h. + +Referenced by Get\-First\-Input\-Block(), Get\-First\-Input\-Object(), and Get\-Next\-Input\-Object().\index{AliHLTComponent@{Ali\-HLTComponent}!fCurrentEvent@{fCurrentEvent}} +\index{fCurrentEvent@{fCurrentEvent}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTEvent\-ID\_\-t} {\bf Ali\-HLTComponent::f\-Current\-Event}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r1} + + +Set by Process\-Event before the processing starts + +Definition at line 825 of file Ali\-HLTComponent.h. + +Referenced by Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!fCurrentEventData@{fCurrentEventData}} +\index{fCurrentEventData@{fCurrentEventData}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Event\-Data} {\bf Ali\-HLTComponent::f\-Current\-Event\-Data}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r4} + + +event data struct of the current event under processing + +Definition at line 834 of file Ali\-HLTComponent.h. + +Referenced by Create\-Input\-Object(), Find\-Input\-Block(), Get\-Data\-Type(), Get\-Input\-Object(), Get\-Number\-Of\-Input\-Blocks(), Get\-Specification(), and Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!fCurrentInputBlock@{fCurrentInputBlock}} +\index{fCurrentInputBlock@{fCurrentInputBlock}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTComponent::f\-Current\-Input\-Block}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r6} + + +transient + +index of the current input block + +Definition at line 840 of file Ali\-HLTComponent.h. + +Referenced by Get\-First\-Input\-Object(), Get\-Next\-Input\-Block(), Get\-Next\-Input\-Object(), and Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!fEnvironment@{fEnvironment}} +\index{fEnvironment@{fEnvironment}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Environment} {\bf Ali\-HLTComponent::f\-Environment}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r0} + + +transient + +The environment where the component is running in + +Definition at line 822 of file Ali\-HLTComponent.h. + +Referenced by Ali\-HLTComponent(), Alloc\-Memory(), Get\-Event\-Done\-Data(), and Init().\index{AliHLTComponent@{Ali\-HLTComponent}!fEventCount@{fEventCount}} +\index{fEventCount@{fEventCount}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTComponent::f\-Event\-Count}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r2} + + +internal event no + +Reimplemented in {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_r3})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_r0})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_r0})}. + +Definition at line 828 of file Ali\-HLTComponent.h. + +Referenced by Do\-Deinit(), Do\-Init(), Increment\-Event\-Counter(), and Init().\index{AliHLTComponent@{Ali\-HLTComponent}!fFailedEvents@{fFailedEvents}} +\index{fFailedEvents@{fFailedEvents}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTComponent::f\-Failed\-Events}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r3} + + +the number of failed events + +Definition at line 831 of file Ali\-HLTComponent.h.\index{AliHLTComponent@{Ali\-HLTComponent}!fgpComponentHandler@{fgpComponentHandler}} +\index{fgpComponentHandler@{fgpComponentHandler}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Handler} $\ast$ {\bf Ali\-HLTComponent::fgp\-Component\-Handler} = NULL\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTComponent_v0} + + +The global component handler instance + +Definition at line 116 of file Ali\-HLTComponent.cxx. + +Referenced by Ali\-HLTComponent(), and Set\-Global\-Component\-Handler().\index{AliHLTComponent@{Ali\-HLTComponent}!fOutputBlocks@{fOutputBlocks}} +\index{fOutputBlocks@{fOutputBlocks}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTComponent\-Block\-Data}$>$ {\bf Ali\-HLTComponent::f\-Output\-Blocks}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r13} + + +list of ouput block data descriptors + +Definition at line 861 of file Ali\-HLTComponent.h. + +Referenced by Insert\-Output\-Block(), and Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!fOutputBufferFilled@{fOutputBufferFilled}} +\index{fOutputBufferFilled@{fOutputBufferFilled}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent::f\-Output\-Buffer\-Filled}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r12} + + +size of data written to output buffer + +Definition at line 858 of file Ali\-HLTComponent.h. + +Referenced by Insert\-Output\-Block(), and Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!fOutputBufferSize@{fOutputBufferSize}} +\index{fOutputBufferSize@{fOutputBufferSize}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent::f\-Output\-Buffer\-Size}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r11} + + +transient + +size of the output buffer + +Definition at line 855 of file Ali\-HLTComponent.h. + +Referenced by Insert\-Output\-Block(), and Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!fpInputBlocks@{fpInputBlocks}} +\index{fpInputBlocks@{fpInputBlocks}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Block\-Data}$\ast$ {\bf Ali\-HLTComponent::fp\-Input\-Blocks}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r5} + + +array of input data blocks of the current event + +Definition at line 837 of file Ali\-HLTComponent.h. + +Referenced by Create\-Input\-Object(), Find\-Input\-Block(), Get\-Data\-Type(), Get\-First\-Input\-Block(), Get\-Next\-Input\-Block(), Get\-Number\-Of\-Input\-Blocks(), Get\-Specification(), and Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!fpInputObjects@{fpInputObjects}} +\index{fpInputObjects@{fpInputObjects}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TObj\-Array$\ast$ {\bf Ali\-HLTComponent::fp\-Input\-Objects}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r9} + + +array of generated input objects + +Definition at line 849 of file Ali\-HLTComponent.h. + +Referenced by Cleanup\-Input\-Objects(), Get\-Data\-Type(), Get\-Input\-Object(), and Get\-Specification().\index{AliHLTComponent@{Ali\-HLTComponent}!fpOutputBuffer@{fpOutputBuffer}} +\index{fpOutputBuffer@{fpOutputBuffer}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t}$\ast$ {\bf Ali\-HLTComponent::fp\-Output\-Buffer}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r10} + + +transient + +the output buffer + +Definition at line 852 of file Ali\-HLTComponent.h. + +Referenced by Insert\-Output\-Block(), and Process\-Event().\index{AliHLTComponent@{Ali\-HLTComponent}!fpStopwatches@{fpStopwatches}} +\index{fpStopwatches@{fpStopwatches}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TObj\-Array$\ast$ {\bf Ali\-HLTComponent::fp\-Stopwatches}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r14} + + +stopwatch array + +Definition at line 864 of file Ali\-HLTComponent.h. + +Referenced by Set\-Stopwatch(), and $\sim$Ali\-HLTComponent().\index{AliHLTComponent@{Ali\-HLTComponent}!fSearchDataType@{fSearchDataType}} +\index{fSearchDataType@{fSearchDataType}!AliHLTComponent@{Ali\-HLTComponent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTComponent::f\-Search\-Data\-Type}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_r7} + + +data type of the last block search + +Definition at line 843 of file Ali\-HLTComponent.h. + +Referenced by Get\-First\-Input\-Block(), Get\-First\-Input\-Object(), Get\-Next\-Input\-Block(), Get\-Next\-Input\-Object(), and Process\-Event(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTComponent.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTComponent.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTComponentHandler.eps b/HLT/PHOS/latex/classAliHLTComponentHandler.eps new file mode 100644 index 00000000000..f92728f471d --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTComponentHandler.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 240.964 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 2.075 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTComponentHandler) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTComponentHandler) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTComponentHandler.tex b/HLT/PHOS/latex/classAliHLTComponentHandler.tex new file mode 100644 index 00000000000..a9d89647481 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTComponentHandler.tex @@ -0,0 +1,992 @@ +\section{Ali\-HLTComponent\-Handler Class Reference} +\label{classAliHLTComponentHandler}\index{AliHLTComponentHandler@{AliHLTComponentHandler}} +{\tt \#include $<$Ali\-HLTComponent\-Handler.h$>$} + +Inheritance diagram for Ali\-HLTComponent\-Handler::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTComponentHandler} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +The component handler controls all the processing components available in the system. It also controls the component shared libraries. + + + +Definition at line 32 of file Ali\-HLTComponent\-Handler.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent\-Handler} () +\item +{\bf Ali\-HLTComponent\-Handler} ({\bf Ali\-HLTComponent\-Environment} $\ast$p\-Env) +\item +{\bf Ali\-HLTComponent\-Handler} (const {\bf Ali\-HLTComponent\-Handler} \&) +\item +{\bf Ali\-HLTComponent\-Handler} \& {\bf operator=} (const {\bf Ali\-HLTComponent\-Handler} \&) +\item +virtual {\bf $\sim$Ali\-HLTComponent\-Handler} () +\item +void {\bf Set\-Environment} ({\bf Ali\-HLTComponent\-Environment} $\ast$p\-Env) +\item +int {\bf Load\-Library} (const char $\ast$library\-Path) +\item +void $\ast$ {\bf Find\-Symbol} (const char $\ast$library, const char $\ast$symbol) +\item +int {\bf Unload\-Library} (const char $\ast$library\-Path) +\item +int {\bf Schedule\-Register} ({\bf Ali\-HLTComponent} $\ast$p\-Sample) +\item +int {\bf Register\-Component} ({\bf Ali\-HLTComponent} $\ast$p\-Sample) +\item +int {\bf Register\-Scheduled\-Components} () +\item +int {\bf Deregister\-Component} (const char $\ast$component\-ID) +\item +int {\bf Add\-Standard\-Components} () +\item +int {\bf Delete\-Standard\-Components} () +\item +int {\bf Create\-Component} (const char $\ast$component\-ID, void $\ast$p\-Env\-Param, int argc, const char $\ast$$\ast$argv, {\bf Ali\-HLTComponent} $\ast$\&component) +\item +int {\bf Create\-Component} (const char $\ast$component\-ID, void $\ast$p\-Env\-Param, {\bf Ali\-HLTComponent} $\ast$\&component) +\item +void {\bf List} () +\item +int {\bf Announce\-Version} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +int {\bf Find\-Component\-Index} (const char $\ast$component\-ID) +\item +{\bf Ali\-HLTComponent} $\ast$ {\bf Find\-Component} (const char $\ast$component\-ID) +\item +int {\bf Insert\-Component} ({\bf Ali\-HLTComponent} $\ast$p\-Sample) +\item +int {\bf Unload\-Libraries} () +\item +{\bf Ali\-HLTLib\-Handle} $\ast$ {\bf Find\-Library} (const char $\ast$library) +\item +int {\bf Unload\-Library} ({\bf Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle} \&handle) +\item +{\bf Class\-Def} ({\bf Ali\-HLTComponent\-Handler}, 0) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +vector$<$ {\bf Ali\-HLTComponent} $\ast$ $>$ {\bf f\-Component\-List} +\item +vector$<$ {\bf Ali\-HLTComponent} $\ast$ $>$ {\bf f\-Schedule\-List} +\item +vector$<$ {\bf Ali\-HLTLib\-Handle} $>$ {\bf f\-Library\-List} +\item +{\bf Ali\-HLTComponent\-Environment} {\bf f\-Environment} +\item +vector$<$ {\bf Ali\-HLTComponent} $\ast$ $>$ {\bf f\-Standard\-List} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!AliHLTComponentHandler@{AliHLTComponentHandler}} +\index{AliHLTComponentHandler@{AliHLTComponentHandler}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent\-Handler::Ali\-HLTComponent\-Handler ()}\label{classAliHLTComponentHandler_a0} + + +standard constructor \index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!AliHLTComponentHandler@{AliHLTComponentHandler}} +\index{AliHLTComponentHandler@{AliHLTComponentHandler}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent\-Handler::Ali\-HLTComponent\-Handler ({\bf Ali\-HLTComponent\-Environment} $\ast$ {\em p\-Env})}\label{classAliHLTComponentHandler_a1} + + +constructor + +Definition at line 67 of file Ali\-HLTComponent\-Handler.cxx. + +References Add\-Standard\-Components(), f\-Environment, Ali\-HLTComponent\-Environment::f\-Logging\-Func, and Ali\-HLTLogging::Init(). + +\footnotesize\begin{verbatim}68 : +69 fComponentList(), +70 fScheduleList(), +71 fLibraryList(), +72 fEnvironment(), +73 fStandardList() +74 { +75 // see header file for class documentation +76 if (pEnv) { +77 memcpy(&fEnvironment, pEnv, sizeof(AliHLTComponentEnvironment)); +78 if (pEnv->fLoggingFunc) { +79 // the AliHLTLogging::Init method also sets the stream output +80 // and notification handler to AliLog. This should only be done +81 // if the logging environment contains a logging function +82 // for redirection +83 AliHLTLogging::Init(pEnv->fLoggingFunc); +84 } +85 } else +86 memset(&fEnvironment, 0, sizeof(AliHLTComponentEnvironment)); +87 AddStandardComponents(); +88 } + +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!AliHLTComponentHandler@{AliHLTComponentHandler}} +\index{AliHLTComponentHandler@{AliHLTComponentHandler}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent\-Handler::Ali\-HLTComponent\-Handler (const {\bf Ali\-HLTComponent\-Handler} \&)}\label{classAliHLTComponentHandler_a2} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 90 of file Ali\-HLTComponent\-Handler.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}91 : +92 fComponentList(), +93 fScheduleList(), +94 fLibraryList(), +95 fEnvironment(), +96 fStandardList() +97 { +98 // see header file for class documentation +99 HLTFatal("copy constructor untested"); +100 } + +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!~AliHLTComponentHandler@{$\sim$AliHLTComponentHandler}} +\index{~AliHLTComponentHandler@{$\sim$AliHLTComponentHandler}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent\-Handler::$\sim${\bf Ali\-HLTComponent\-Handler} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTComponentHandler_a4} + + +destructor + +Definition at line 109 of file Ali\-HLTComponent\-Handler.cxx. + +References Delete\-Standard\-Components(), and Unload\-Libraries(). + +\footnotesize\begin{verbatim}110 { +111 // see header file for class documentation +112 DeleteStandardComponents(); +113 UnloadLibraries(); +114 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!AddStandardComponents@{AddStandardComponents}} +\index{AddStandardComponents@{AddStandardComponents}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Add\-Standard\-Components ()}\label{classAliHLTComponentHandler_a13} + + +Add standard components The standard components are part of the lib\-HLTbase library and need therefore a special handling. + +Definition at line 447 of file Ali\-HLTComponent\-Handler.cxx. + +References Register\-Scheduled\-Components(), Ali\-HLTComponent::Set\-Global\-Component\-Handler(), and Ali\-HLTComponent::Unset\-Global\-Component\-Handler(). + +Referenced by Ali\-HLTComponent\-Handler(). + +\footnotesize\begin{verbatim}448 { +449 // see header file for class documentation +450 int iResult=0; +451 AliHLTComponent::SetGlobalComponentHandler(this); +452 // fStandardList.push_back(new AliHLTFilePublisher); +453 // fStandardList.push_back(new AliHLTFileWriter); +454 // fStandardList.push_back(new AliHLTRootFilePublisherComponent); +455 // fStandardList.push_back(new AliHLTRootFileWriterComponent); +456 AliHLTComponent::UnsetGlobalComponentHandler(); +457 iResult=RegisterScheduledComponents(); +458 return iResult; +459 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!AnnounceVersion@{AnnounceVersion}} +\index{AnnounceVersion@{AnnounceVersion}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Announce\-Version ()}\label{classAliHLTComponentHandler_a18} + + +Announce version and compilation info of the base library. + +Definition at line 116 of file Ali\-HLTComponent\-Handler.cxx. + +References HLTInfo. + +Referenced by Ali\-HLT\_\-C\_\-Component\_\-Init\-System(). + +\footnotesize\begin{verbatim}117 { +118 // see header file for class documentation +119 int iResult=0; +120 #ifdef PACKAGE_STRING +121 void HLTbaseCompileInfo( char*& date, char*& time); +122 char* date=""; +123 char* time=""; +124 HLTbaseCompileInfo(date, time); +125 if (!date) date="unknown"; +126 if (!time) time="unknown"; +127 HLTInfo("%s build on %s (%s)", PACKAGE_STRING, date, time); +128 #else +129 HLTInfo("ALICE High Level Trigger build on %s (%s) (embedded AliRoot build)", __DATE__, __TIME__); +130 #endif +131 return iResult; +132 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent\-Handler::Class\-Def ({\bf Ali\-HLTComponent\-Handler}, 0)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_d6} + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!CreateComponent@{CreateComponent}} +\index{CreateComponent@{CreateComponent}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Create\-Component (const char $\ast$ {\em component\-ID}, void $\ast$ {\em p\-Env\-Param}, {\bf Ali\-HLTComponent} $\ast$\& {\em component})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTComponentHandler_a16} + + +Create a component of the given name (ID). Introduced for backward compatibility. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em component\-ID}]ID of the component to create \item[{\em p\-Env\-Param}]environment parameter for the component \item[{\em component}]reference to receive the create component instance \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]component pointer in component, neg. error code if failed \end{Desc} + + +Definition at line 166 of file Ali\-HLTComponent\-Handler.h. + +References Create\-Component(). + +\footnotesize\begin{verbatim}168 { +169 return CreateComponent( componentID, pEnvParam, 0, NULL, component ); +170 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!CreateComponent@{CreateComponent}} +\index{CreateComponent@{CreateComponent}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Create\-Component (const char $\ast$ {\em component\-ID}, void $\ast$ {\em p\-Env\-Param}, int {\em argc}, const char $\ast$$\ast$ {\em argv}, {\bf Ali\-HLTComponent} $\ast$\& {\em component})}\label{classAliHLTComponentHandler_a15} + + +Create a component of the given name (ID). The method tries to find a registerd component of id {\em component\-ID\/} and calls the {\em Spawn\/} method of the template component. After successful creation of a new object, the Init method is called in order to initialize the environment and the component arguments. \par + The environment is the same for all components, but each component can have an additional private parameter {\em p\-Env\-Param\/}.\par + The component arguments consist of an array of strings and the array size in the usual manner of the {\bf main()}{\rm (p.\,\pageref{PeakFinderTest_8cxx_a1})} function. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em component\-ID}]ID of the component to create \item[{\em p\-Env\-Param}]environment parameter for the component \item[{\em argc}]number of arguments in argv \item[{\em argv}]argument array like in {\bf main()}{\rm (p.\,\pageref{PeakFinderTest_8cxx_a1})} \item[{\em component}]reference to receive the create component instance \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]component pointer in component, neg. error code if failed \end{Desc} + + +Definition at line 180 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Environment, Find\-Component(), HLTDebug, HLTError, HLTWarning, Ali\-HLTComponent::Init(), and Ali\-HLTComponent::Spawn(). + +Referenced by Ali\-HLT\_\-C\_\-Create\-Component(), Create\-Component(), and Ali\-HLTTask::Init(). + +\footnotesize\begin{verbatim}181 { +182 // see header file for class documentation +183 int iResult=0; +184 if (componentID) { +185 AliHLTComponent* pSample=FindComponent(componentID); +186 if (pSample!=NULL) { +187 component=pSample->Spawn(); +188 if (component) { +189 HLTDebug("component \"%s\" created (%p)", componentID, component); +190 if ((iResult=component->Init(&fEnvironment, pEnvParam, argc, argv))!=0) { +191 HLTError("Initialization of component \"%s\" failed with error %d", componentID, iResult); +192 delete component; +193 component=NULL; +194 } +195 } else { +196 HLTError("can not spawn component \"%s\"", componentID); +197 iResult=-ENOENT; +198 } +199 } else { +200 HLTWarning("can not find component \"%s\"", componentID); +201 iResult=-ENOENT; +202 } +203 } else { +204 iResult=-EINVAL; +205 } +206 return iResult; +207 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!DeleteStandardComponents@{DeleteStandardComponents}} +\index{DeleteStandardComponents@{DeleteStandardComponents}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Delete\-Standard\-Components ()}\label{classAliHLTComponentHandler_a14} + + + + +Definition at line 476 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Standard\-List. + +Referenced by $\sim$Ali\-HLTComponent\-Handler(). + +\footnotesize\begin{verbatim}477 { +478 // see header file for class documentation +479 int iResult=0; +480 vector::iterator element=fStandardList.begin(); +481 while (element!=fStandardList.end()) { +482 //DeregisterComponent((*element)->GetComponentID()); +483 delete(*element); +484 fStandardList.erase(element); +485 element=fStandardList.begin(); +486 } +487 return iResult; +488 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!DeregisterComponent@{DeregisterComponent}} +\index{DeregisterComponent@{DeregisterComponent}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Deregister\-Component (const char $\ast$ {\em component\-ID})}\label{classAliHLTComponentHandler_a12} + + +Deregister a component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em component\-ID}]ID of the component \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 155 of file Ali\-HLTComponent\-Handler.cxx. + +References HLTWarning. + +\footnotesize\begin{verbatim}156 { +157 // see header file for class documentation +158 +159 int iResult=0; +160 if (componentID) { +161 HLTWarning("not yet implemented, please notify the developers if you need this function"); +162 } else { +163 iResult=-EINVAL; +164 } +165 return iResult; +166 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!FindComponent@{FindComponent}} +\index{FindComponent@{FindComponent}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent} $\ast$ Ali\-HLTComponent\-Handler::Find\-Component (const char $\ast$ {\em component\-ID})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_d1} + + +Find a component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em component\-ID}]ID of the component to find \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]descriptor \end{Desc} + + +Definition at line 229 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Component\-List, and Find\-Component\-Index(). + +Referenced by Create\-Component(), and Register\-Component(). + +\footnotesize\begin{verbatim}230 { +231 // see header file for class documentation +232 AliHLTComponent* pSample=NULL; +233 Int_t index=FindComponentIndex(componentID); +234 if (index>=0) { +235 pSample=(AliHLTComponent*)fComponentList.at(index); +236 } +237 return pSample; +238 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!FindComponentIndex@{FindComponentIndex}} +\index{FindComponentIndex@{FindComponentIndex}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t Ali\-HLTComponent\-Handler::Find\-Component\-Index (const char $\ast$ {\em component\-ID})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_d0} + + +Find a component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em component\-ID}]ID of the component to find \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]index, neg. error code if failed \end{Desc} + + +Definition at line 209 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Component\-List. + +Referenced by Find\-Component(). + +\footnotesize\begin{verbatim}210 { +211 // see header file for class documentation +212 Int_t iResult=0; +213 if (componentID) { +214 vector::iterator element=fComponentList.begin(); +215 while (element!=fComponentList.end() && iResult>=0) { +216 if (strcmp(componentID, (*element)->GetComponentID())==0) { +217 break; +218 } +219 element++; +220 iResult++; +221 } +222 if (element==fComponentList.end()) iResult=-ENOENT; +223 } else { +224 iResult=-EINVAL; +225 } +226 return iResult; +227 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!FindLibrary@{FindLibrary}} +\index{FindLibrary@{FindLibrary}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle} $\ast$ Ali\-HLTComponent\-Handler::Find\-Library (const char $\ast$ {\em library})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_d4} + + +Find a specific library among the loaded libraries. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em library}]library name/path \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to {\bf Ali\-HLTLib\-Handle}{\rm (p.\,\pageref{structAliHLTComponentHandler_1_1AliHLTLibHandle})} \end{Desc} + + +Definition at line 431 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Library\-List. + +Referenced by Find\-Symbol(), and Load\-Library(). + +\footnotesize\begin{verbatim}432 { +433 // see header file for class documentation +434 AliHLTLibHandle* hLib=NULL; +435 vector::iterator element=fLibraryList.begin(); +436 while (element!=fLibraryList.end()) { +437 TString* name=reinterpret_cast((*element).fName); +438 if (name->CompareTo(library)==0) { +439 hLib=&(*element); +440 break; +441 } +442 element++; +443 } +444 return hLib; +445 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!FindSymbol@{FindSymbol}} +\index{FindSymbol@{FindSymbol}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void $\ast$ Ali\-HLTComponent\-Handler::Find\-Symbol (const char $\ast$ {\em library}, const char $\ast$ {\em symbol})}\label{classAliHLTComponentHandler_a7} + + +Find a symbol in a dynamically loaded library. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em library}]library \item[{\em symbol}]the symbol to find \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]void pointer to function \end{Desc} + + +Definition at line 416 of file Ali\-HLTComponent\-Handler.cxx. + +References Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::f\-Handle, Find\-Library(), and Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::f\-Name. + +Referenced by Ali\-HLTSystem::Find\-Dynamic\-Symbol(), and Ali\-HLTLogging::Init\-Ali\-Log\-Trap(). + +\footnotesize\begin{verbatim}417 { +418 // see header file for class documentation +419 AliHLTLibHandle* hLib=FindLibrary(library); +420 if (hLib==NULL) return NULL; +421 void* pFunc=NULL; +422 #ifdef HAVE_DLFCN_H +423 pFunc=dlsym(hLib->fHandle, symbol); +424 #else +425 TString* name=reinterpret_cast(hLib->fName); +426 pFunc=gSystem->DynFindSymbol(name->Data(), symbol); +427 #endif +428 return pFunc; +429 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!InsertComponent@{InsertComponent}} +\index{InsertComponent@{InsertComponent}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t Ali\-HLTComponent\-Handler::Insert\-Component ({\bf Ali\-HLTComponent} $\ast$ {\em p\-Sample})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_d2} + + +Insert component to the list \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Sample}]sample object of the component \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 240 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Component\-List. + +Referenced by Register\-Component(). + +\footnotesize\begin{verbatim}241 { +242 // see header file for class documentation +243 Int_t iResult=0; +244 if (pSample!=NULL) { +245 fComponentList.push_back(pSample); +246 } else { +247 iResult=-EINVAL; +248 } +249 return iResult; +250 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!List@{List}} +\index{List@{List}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent\-Handler::List ()}\label{classAliHLTComponentHandler_a17} + + +Print registered components to stdout. \begin{Desc} +\item[Returns:]none \end{Desc} + + +Definition at line 252 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Component\-List, and HLTInfo. + +\footnotesize\begin{verbatim}253 { +254 // see header file for class documentation +255 vector::iterator element=fComponentList.begin(); +256 int index=0; +257 while (element!=fComponentList.end()) { +258 HLTInfo("%d. %s", index++, (*element++)->GetComponentID()); +259 } +260 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!LoadLibrary@{LoadLibrary}} +\index{LoadLibrary@{LoadLibrary}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Load\-Library (const char $\ast$ {\em library\-Path})}\label{classAliHLTComponentHandler_a6} + + +Load a component shared library. The component library needs to be loaded from the Component\-Hanler in order to automatically register all components in the library. Registration is done by passing a sample object of the component to the handler. The object has to be valid during the whole runtime and should thus be a global object which is ONLY used for the purpose of registration. This also ensures automatically registration at library load time. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em library\-Path}]const char string containing the library name/path \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]0 if succeeded, neg. error code if failed \end{Desc} + + +Definition at line 277 of file Ali\-HLTComponent\-Handler.cxx. + +References Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::f\-Handle, Find\-Library(), f\-Library\-List, Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::f\-Name, HLTDebug, HLTError, HLTInfo, Register\-Scheduled\-Components(), Ali\-HLTComponent::Set\-Global\-Component\-Handler(), and Ali\-HLTComponent::Unset\-Global\-Component\-Handler(). + +Referenced by Ali\-HLT\_\-C\_\-Component\_\-Load\-Library(), Ali\-HLTLogging::Init\-Ali\-Log\-Trap(), and Ali\-HLTSystem::Load\-Component\-Libraries(). + +\footnotesize\begin{verbatim}278 { +279 // see header file for class documentation +280 int iResult=0; +281 if (libraryPath) { +282 AliHLTComponent::SetGlobalComponentHandler(this); +283 AliHLTLibHandle hLib; +284 const char* loadtype=""; +285 #ifdef HAVE_DLFCN_H +286 // use interface to the dynamic linking loader +287 hLib.fHandle=dlopen(libraryPath, RTLD_NOW); +288 loadtype="dlopen"; +289 #else +290 // use ROOT dynamic loader +291 // check if the library was already loaded, as Load returns +292 // 'failure' if the library was already loaded +293 AliHLTLibHandle* pLib=FindLibrary(libraryPath); +294 if (pLib) { +295 int* pRootHandle=reinterpret_cast(pLib->fHandle); +296 (*pRootHandle)++; +297 HLTDebug("instance %d of library %s loaded", (*pRootHandle), libraryPath); +298 hLib.fHandle=pRootHandle; +299 } +300 +301 if (hLib.fHandle==NULL && gSystem->Load(libraryPath)==0) { +302 int* pRootHandle=new int; +303 if (pRootHandle) *pRootHandle=1; +304 hLib.fHandle=pRootHandle; +305 //HLTDebug("library %s loaded via gSystem", libraryPath); +306 } +307 loadtype="gSystem"; +308 #endif //HAVE_DLFCN_H +309 if (hLib.fHandle!=NULL) { +310 // create TString object to store library path and use pointer as handle +311 hLib.fName=new TString(libraryPath); +312 HLTInfo("library %s loaded (%s)", libraryPath, loadtype); +313 fLibraryList.insert(fLibraryList.begin(), hLib); +314 iResult=RegisterScheduledComponents(); +315 } else { +316 HLTError("can not load library %s", libraryPath); +317 #ifdef HAVE_DLFCN_H +318 HLTError("dlopen error: %s", dlerror()); +319 #endif //HAVE_DLFCN_H +320 #ifdef __APPLE__ +321 iResult=-EFTYPE; +322 #else +323 iResult=-ELIBACC; +324 #endif +325 } +326 AliHLTComponent::UnsetGlobalComponentHandler(); +327 } else { +328 iResult=-EINVAL; +329 } +330 return iResult; +331 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Handler} \& Ali\-HLTComponent\-Handler::operator= (const {\bf Ali\-HLTComponent\-Handler} \&)}\label{classAliHLTComponentHandler_a3} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 102 of file Ali\-HLTComponent\-Handler.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}103 { +104 // see header file for class documentation +105 HLTFatal("assignment operator untested"); +106 return *this; +107 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!RegisterComponent@{RegisterComponent}} +\index{RegisterComponent@{RegisterComponent}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t Ali\-HLTComponent\-Handler::Register\-Component ({\bf Ali\-HLTComponent} $\ast$ {\em p\-Sample})}\label{classAliHLTComponentHandler_a10} + + +Register a component. Registration is done by passing a sample object of the component to the handler. The object has to be valid during the whole runtime and should thus be a global object which is ONLY used for the purpose of registration. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Sample}]a sample object of the component \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 134 of file Ali\-HLTComponent\-Handler.cxx. + +References Find\-Component(), Ali\-HLTComponent::Get\-Component\-ID(), HLTDebug, HLTInfo, and Insert\-Component(). + +Referenced by Register\-Scheduled\-Components(). + +\footnotesize\begin{verbatim}135 { +136 // see header file for class documentation +137 Int_t iResult=0; +138 if (pSample) { +139 if (FindComponent(pSample->GetComponentID())==NULL) { +140 iResult=InsertComponent(pSample); +141 if (iResult>=0) { +142 HLTInfo("component %s registered", pSample->GetComponentID()); +143 } +144 } else { +145 // component already registered +146 HLTDebug("component %s already registered, skipped", pSample->GetComponentID()); +147 iResult=-EEXIST; +148 } +149 } else { +150 iResult=-EINVAL; +151 } +152 return iResult; +153 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!RegisterScheduledComponents@{RegisterScheduledComponents}} +\index{RegisterScheduledComponents@{RegisterScheduledComponents}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Register\-Scheduled\-Components ()}\label{classAliHLTComponentHandler_a11} + + +Registers all scheduled components. + +Definition at line 461 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Schedule\-List, and Register\-Component(). + +Referenced by Add\-Standard\-Components(), and Load\-Library(). + +\footnotesize\begin{verbatim}462 { +463 // see header file for class documentation +464 int iResult=0; +465 vector::iterator element=fScheduleList.begin(); +466 int iLocalResult=0; +467 while (element!=fScheduleList.end()) { +468 iLocalResult=RegisterComponent(*element); +469 if (iResult==0) iResult=iLocalResult; +470 fScheduleList.erase(element); +471 element=fScheduleList.begin(); +472 } +473 return iResult; +474 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!ScheduleRegister@{ScheduleRegister}} +\index{ScheduleRegister@{ScheduleRegister}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t Ali\-HLTComponent\-Handler::Schedule\-Register ({\bf Ali\-HLTComponent} $\ast$ {\em p\-Sample})}\label{classAliHLTComponentHandler_a9} + + +Schedule a component for registration. Full registration will be done after successfull loading of the shared library. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Sample}]a sample object of the component \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 168 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Schedule\-List. + +Referenced by Ali\-HLTComponent::Ali\-HLTComponent(). + +\footnotesize\begin{verbatim}169 { +170 // see header file for class documentation +171 Int_t iResult=0; +172 if (pSample) { +173 fScheduleList.push_back(pSample); +174 } else { +175 iResult=-EINVAL; +176 } +177 return iResult; +178 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!SetEnvironment@{SetEnvironment}} +\index{SetEnvironment@{SetEnvironment}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTComponent\-Handler::Set\-Environment ({\bf Ali\-HLTComponent\-Environment} $\ast$ {\em p\-Env})}\label{classAliHLTComponentHandler_a5} + + +Set the environment for the HLT framework. The environment mainly consists of function pointers for the integration of the HLT framework into a system like the Pub\-Sub online system or Ali\-Root offline system. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Env}]pointer to {\bf Ali\-HLTComponent\-Environment}{\rm (p.\,\pageref{structAliHLTComponentEnvironment})} structure \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]none \end{Desc} + + +Definition at line 262 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Environment, Ali\-HLTComponent\-Environment::f\-Logging\-Func, and Ali\-HLTLogging::Init(). + +\footnotesize\begin{verbatim}263 { +264 // see header file for class documentation +265 if (pEnv) { +266 memcpy(&fEnvironment, pEnv, sizeof(AliHLTComponentEnvironment)); +267 if (fEnvironment.fLoggingFunc) { +268 // the AliHLTLogging::Init method also sets the stream output +269 // and notification handler to AliLog. This should only be done +270 // if the logging environment contains a logging function +271 // for redirection +272 AliHLTLogging::Init(fEnvironment.fLoggingFunc); +273 } +274 } +275 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!UnloadLibraries@{UnloadLibraries}} +\index{UnloadLibraries@{UnloadLibraries}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Unload\-Libraries ()\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_d3} + + +Close all libraries. \begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 403 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Library\-List, and Unload\-Library(). + +Referenced by $\sim$Ali\-HLTComponent\-Handler(). + +\footnotesize\begin{verbatim}404 { +405 // see header file for class documentation +406 int iResult=0; +407 vector::iterator element=fLibraryList.begin(); +408 while (element!=fLibraryList.end()) { +409 UnloadLibrary(*element); +410 fLibraryList.erase(element); +411 element=fLibraryList.begin(); +412 } +413 return iResult; +414 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!UnloadLibrary@{UnloadLibrary}} +\index{UnloadLibrary@{UnloadLibrary}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Unload\-Library ({\bf Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle} \& {\em handle})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_d5} + + +Unload a component shared library. All components will be de-registered when the last instance of the library was unloaded. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em handle}]handle to the library to unload \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]0 if succeeded, neg. error code if failed \end{Desc} + + +Definition at line 354 of file Ali\-HLTComponent\-Handler.cxx. + +References Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::f\-Handle, Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::f\-Name, HLTDebug, HLTError, and HLTWarning. + +\footnotesize\begin{verbatim}355 { +356 // see header file for class documentation +357 int iResult=0; +358 fgAliLoggingFunc=NULL; +359 TString* pName=reinterpret_cast(handle.fName); +360 #ifdef HAVE_DLFCN_H +361 dlclose(handle.fHandle); +362 #else +363 int* pCount=reinterpret_cast(handle.fHandle); +364 if (--(*pCount)==0) { +365 if (pName) { +384 } +385 else { +386 HLTError("missing library name, can not unload"); +387 } +388 delete pCount; +389 } +390 #endif //HAVE_DLFCN_H +391 handle.fName=NULL; +392 handle.fHandle=NULL; +393 if (pName) { +394 HLTDebug("unload library %s", pName->Data()); +395 delete pName; +396 } else { +397 HLTWarning("missing name for unloaded library"); +398 } +399 pName=NULL; +400 return iResult; +401 } +\end{verbatim}\normalsize + + +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!UnloadLibrary@{UnloadLibrary}} +\index{UnloadLibrary@{UnloadLibrary}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent\-Handler::Unload\-Library (const char $\ast$ {\em library\-Path})}\label{classAliHLTComponentHandler_a8} + + +Unload a component shared library. All components will be de-registered when the last instance of the library was unloaded. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em library\-Path}]library name as specified to {\bf Load\-Library}{\rm (p.\,\pageref{classAliHLTComponentHandler_a6})} \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]0 if succeeded, neg. error code if failed \end{Desc} + + +Definition at line 333 of file Ali\-HLTComponent\-Handler.cxx. + +References f\-Library\-List. + +Referenced by Ali\-HLT\_\-C\_\-Component\_\-Unload\-Library(), and Unload\-Libraries(). + +\footnotesize\begin{verbatim}334 { +335 // see header file for class documentation +336 int iResult=0; +337 if (libraryPath) { +338 vector::iterator element=fLibraryList.begin(); +339 while (element!=fLibraryList.end()) { +340 TString* pName=reinterpret_cast((*element).fName); +341 if (pName->CompareTo(libraryPath)==0) { +342 UnloadLibrary(*element); +343 fLibraryList.erase(element); +344 break; +345 } +346 element++; +347 } +348 } else { +349 iResult=-EINVAL; +350 } +351 return iResult; +352 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!fComponentList@{fComponentList}} +\index{fComponentList@{fComponentList}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTComponent}$\ast$$>$ {\bf Ali\-HLTComponent\-Handler::f\-Component\-List}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_r0} + + +list of registered components + +Definition at line 241 of file Ali\-HLTComponent\-Handler.h. + +Referenced by Find\-Component(), Find\-Component\-Index(), Insert\-Component(), and List().\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!fEnvironment@{fEnvironment}} +\index{fEnvironment@{fEnvironment}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Environment} {\bf Ali\-HLTComponent\-Handler::f\-Environment}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_r3} + + +running environment for the component + +Definition at line 247 of file Ali\-HLTComponent\-Handler.h. + +Referenced by Ali\-HLTComponent\-Handler(), Create\-Component(), and Set\-Environment().\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!fLibraryList@{fLibraryList}} +\index{fLibraryList@{fLibraryList}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTLib\-Handle}$>$ {\bf Ali\-HLTComponent\-Handler::f\-Library\-List}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_r2} + + +list of libraries + +Definition at line 245 of file Ali\-HLTComponent\-Handler.h. + +Referenced by Find\-Library(), Load\-Library(), Unload\-Libraries(), and Unload\-Library().\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!fScheduleList@{fScheduleList}} +\index{fScheduleList@{fScheduleList}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTComponent}$\ast$$>$ {\bf Ali\-HLTComponent\-Handler::f\-Schedule\-List}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_r1} + + +list of scheduled components + +Definition at line 243 of file Ali\-HLTComponent\-Handler.h. + +Referenced by Register\-Scheduled\-Components(), and Schedule\-Register().\index{AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}!fStandardList@{fStandardList}} +\index{fStandardList@{fStandardList}!AliHLTComponentHandler@{Ali\-HLTComponent\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTComponent}$\ast$$>$ {\bf Ali\-HLTComponent\-Handler::f\-Standard\-List}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponentHandler_r4} + + +list of standard components + +Definition at line 249 of file Ali\-HLTComponent\-Handler.h. + +Referenced by Delete\-Standard\-Components(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTComponent\-Handler.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTComponent\-Handler.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTComponent_1_1AliHLTStopwatchGuard.tex b/HLT/PHOS/latex/classAliHLTComponent_1_1AliHLTStopwatchGuard.tex new file mode 100644 index 00000000000..9a00eb2d9e3 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTComponent_1_1AliHLTStopwatchGuard.tex @@ -0,0 +1,243 @@ +\section{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard Class Reference} +\label{classAliHLTComponent_1_1AliHLTStopwatchGuard}\index{AliHLTComponent::AliHLTStopwatchGuard@{AliHLTComponent::AliHLTStopwatchGuard}} +{\tt \#include $<$Ali\-HLTComponent.h$>$} + + + +\subsection{Detailed Description} +Helper class for starting and stopping a stopwatch. The guard can be used by instantiating an object in a function. The specified stopwatch is started and the previous stopwatch put on hold. When the function is terminated, the object is deleted automatically deleted, stopping the stopwatch and starting the one on hold.\par + {\em IMPORTANT:\/} never create dynamic objects from this guard as this violates the idea of a guard. + + + +Definition at line 396 of file Ali\-HLTComponent.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTStopwatch\-Guard} () +\item +{\bf Ali\-HLTStopwatch\-Guard} (TStopwatch $\ast$p\-Start) +\item +{\bf Ali\-HLTStopwatch\-Guard} ({\bf Ali\-HLTStopwatch\-Guard} \&) +\item +{\bf $\sim$Ali\-HLTStopwatch\-Guard} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +int {\bf Hold} (TStopwatch $\ast$p\-Succ) +\item +int {\bf Resume} (TStopwatch $\ast$p\-Succ) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +TStopwatch $\ast$ {\bf fp\-Stopwatch} +\item +{\bf Ali\-HLTStopwatch\-Guard} $\ast$ {\bf fp\-Prec} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTStopwatch\-Guard} $\ast$ {\bf fgp\-Current} = NULL +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!AliHLTStopwatchGuard@{AliHLTStopwatchGuard}} +\index{AliHLTStopwatchGuard@{AliHLTStopwatchGuard}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::Ali\-HLTStopwatch\-Guard ()}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_a0} + + +standard constructor (not for use) + +Definition at line 852 of file Ali\-HLTComponent.cxx. + +\footnotesize\begin{verbatim}853 : +854 fpStopwatch(NULL), +855 fpPrec(NULL) +856 { +857 // standard constructor (not for use) +858 } + +\end{verbatim}\normalsize + + +\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!AliHLTStopwatchGuard@{AliHLTStopwatchGuard}} +\index{AliHLTStopwatchGuard@{AliHLTStopwatchGuard}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::Ali\-HLTStopwatch\-Guard (TStopwatch $\ast$ {\em p\-Start})}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_a1} + + +constructor + +Definition at line 860 of file Ali\-HLTComponent.cxx. + +References fgp\-Current, fp\-Prec, fp\-Stopwatch, and Hold(). + +\footnotesize\begin{verbatim}861 : +862 fpStopwatch(pStopwatch), +863 fpPrec(NULL) +864 { +865 // constructor +866 +867 // check for already existing guard +868 if (fgpCurrent) fpPrec=fgpCurrent; +869 fgpCurrent=this; +870 +871 // stop the preceeding guard if it controls a different stopwatch +872 int bStart=1; +873 if (fpPrec && fpPrec!=this) bStart=fpPrec->Hold(fpStopwatch); +874 +875 // start the stopwatch if the current guard controls a different one +876 if (fpStopwatch && bStart==1) fpStopwatch->Start(kFALSE); +877 } + +\end{verbatim}\normalsize + + +\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!AliHLTStopwatchGuard@{AliHLTStopwatchGuard}} +\index{AliHLTStopwatchGuard@{AliHLTStopwatchGuard}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::Ali\-HLTStopwatch\-Guard ({\bf Ali\-HLTStopwatch\-Guard} \&)}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_a2} + + +copy constructor (not for use) + +Definition at line 879 of file Ali\-HLTComponent.cxx. + +\footnotesize\begin{verbatim}880 : +881 fpStopwatch(NULL), +882 fpPrec(NULL) +883 { +884 // copy constructor (not for use) +885 } + +\end{verbatim}\normalsize + + +\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!~AliHLTStopwatchGuard@{$\sim$AliHLTStopwatchGuard}} +\index{~AliHLTStopwatchGuard@{$\sim$AliHLTStopwatchGuard}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::$\sim${\bf Ali\-HLTStopwatch\-Guard} ()}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_a3} + + +destructor + +Definition at line 889 of file Ali\-HLTComponent.cxx. + +References fgp\-Current, fp\-Prec, fp\-Stopwatch, and Resume(). + +\footnotesize\begin{verbatim}890 { +891 // destructor +892 +893 // resume the preceeding guard if it controls a different stopwatch +894 int bStop=1; +895 if (fpPrec && fpPrec!=this) bStop=fpPrec->Resume(fpStopwatch); +896 +897 // stop the stopwatch if the current guard controls a different one +898 if (fpStopwatch && bStop==1) fpStopwatch->Stop(); +899 +900 // resume to the preceeding guard +901 fgpCurrent=fpPrec; +902 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!Hold@{Hold}} +\index{Hold@{Hold}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::Hold (TStopwatch $\ast$ {\em p\-Succ})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_d0} + + +Hold the previous guard for the existence of this guard. Checks whether this guard controls a new stopwatch. In that case, the previous guard and its stopwatch are put on hold. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Succ}]instance of the stopwatch of the new guard \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]1 if p\-Succ is a different stopwatch which should be started\par + 0 if it controls the same stopwatch \end{Desc} + + +Definition at line 904 of file Ali\-HLTComponent.cxx. + +References fp\-Stopwatch. + +Referenced by Ali\-HLTStopwatch\-Guard(). + +\footnotesize\begin{verbatim}905 { +906 // see header file for function documentation +907 if (fpStopwatch!=NULL && fpStopwatch!=pSucc) fpStopwatch->Stop(); +908 return fpStopwatch!=pSucc?1:0; +909 } +\end{verbatim}\normalsize + + +\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!Resume@{Resume}} +\index{Resume@{Resume}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::Resume (TStopwatch $\ast$ {\em p\-Succ})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_d1} + + +Resume the previous guard. Checks whether the peceeding guard controls a different stopwatch. In that case, the its stopwatch is resumed. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Succ}]instance of the stopwatch of the new guard \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]1 if p\-Succ is a different stopwatch which should be stopped\par + 0 if it controls the same stopwatch \end{Desc} + + +Definition at line 911 of file Ali\-HLTComponent.cxx. + +References fp\-Stopwatch. + +Referenced by $\sim$Ali\-HLTStopwatch\-Guard(). + +\footnotesize\begin{verbatim}912 { +913 // see header file for function documentation +914 if (fpStopwatch!=NULL && fpStopwatch!=pSucc) fpStopwatch->Start(kFALSE); +915 return fpStopwatch!=pSucc?1:0; +916 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!fgpCurrent@{fgpCurrent}} +\index{fgpCurrent@{fgpCurrent}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard} $\ast$ {\bf Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::fgp\-Current} = NULL\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_v0} + + +transient + +active stopwatch guard + +Definition at line 887 of file Ali\-HLTComponent.cxx. + +Referenced by Ali\-HLTStopwatch\-Guard(), and $\sim$Ali\-HLTStopwatch\-Guard().\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!fpPrec@{fpPrec}} +\index{fpPrec@{fpPrec}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTStopwatch\-Guard}$\ast$ {\bf Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::fp\-Prec}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_r1} + + +transient + +previous stopwatch guard, put on hold during existence of the guard + +Definition at line 434 of file Ali\-HLTComponent.h. + +Referenced by Ali\-HLTStopwatch\-Guard(), and $\sim$Ali\-HLTStopwatch\-Guard().\index{AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}!fpStopwatch@{fpStopwatch}} +\index{fpStopwatch@{fpStopwatch}!AliHLTComponent::AliHLTStopwatchGuard@{Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TStopwatch$\ast$ {\bf Ali\-HLTComponent::Ali\-HLTStopwatch\-Guard::fp\-Stopwatch}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTComponent_1_1AliHLTStopwatchGuard_r0} + + +the stopwatch controlled by this guard + +Definition at line 431 of file Ali\-HLTComponent.h. + +Referenced by Ali\-HLTStopwatch\-Guard(), Hold(), Resume(), and $\sim$Ali\-HLTStopwatch\-Guard(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTComponent.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTComponent.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTConfiguration.eps b/HLT/PHOS/latex/classAliHLTConfiguration.eps new file mode 100644 index 00000000000..0299e19a7b9 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTConfiguration.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 298.507 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.675 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTConfiguration) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTConfiguration) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTConfiguration.tex b/HLT/PHOS/latex/classAliHLTConfiguration.tex new file mode 100644 index 00000000000..d6c97faf2b5 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTConfiguration.tex @@ -0,0 +1,925 @@ +\section{Ali\-HLTConfiguration Class Reference} +\label{classAliHLTConfiguration}\index{AliHLTConfiguration@{AliHLTConfiguration}} +{\tt \#include $<$Ali\-HLTConfiguration.h$>$} + +Inheritance diagram for Ali\-HLTConfiguration::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTConfiguration} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Description of HLT processing chains. + +This class describes a certain configuration af an HLT processing step by the following parameters:\begin{itemize} +\item a unique id string/name\item the id of the component\item the ids of the configurations it requires input from\item the arguments, which are passed to the component when it is initialized\end{itemize} + + +The setup of a configuration requires simply the creation of a global object of {\bf Ali\-HLTConfiguration}{\rm (p.\,\pageref{classAliHLTConfiguration})}. The Configuration is automatically registered in the list of available configurations maintained by the {\bf Ali\-HLTConfiguration\-Handler}{\rm (p.\,\pageref{classAliHLTConfigurationHandler})}. The list is used by to resolve the dependencies on other configurations. Hierarchies can be built up in an easy way. + +A configuration is interpreted by the {\bf Ali\-HLTConfiguration\-Handler}{\rm (p.\,\pageref{classAliHLTConfigurationHandler})} and transformed into a Task List. + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 49 of file Ali\-HLTConfiguration.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTConfiguration} () +\item +{\bf Ali\-HLTConfiguration} (const char $\ast$id, const char $\ast$component, const char $\ast$sources, const char $\ast$arguments) +\item +{\bf Ali\-HLTConfiguration} (const {\bf Ali\-HLTConfiguration} \&src) +\item +{\bf Ali\-HLTConfiguration} \& {\bf operator=} (const {\bf Ali\-HLTConfiguration} \&src) +\item +virtual {\bf $\sim$Ali\-HLTConfiguration} () +\item +const char $\ast$ {\bf Get\-Name} () const +\item +const char $\ast$ {\bf Get\-Component\-ID} () const +\item +void {\bf Print\-Status} () +\item +{\bf Ali\-HLTConfiguration} $\ast$ {\bf Get\-Source} (const char $\ast$id) +\item +int {\bf Follow\-Dependency} (const char $\ast$id, TList $\ast$p\-Tgt\-List=NULL) +\item +int {\bf Get\-Nof\-Sources} () +\item +int {\bf Sources\-Resolved} (int b\-Auto=0) +\item +{\bf Ali\-HLTConfiguration} $\ast$ {\bf Get\-First\-Source} () +\item +{\bf Ali\-HLTConfiguration} $\ast$ {\bf Get\-Next\-Source} () +\item +int {\bf Invalidate\-Source} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf) +\item +int {\bf Invalidate\-Sources} () +\item +int {\bf Get\-Arguments} (const char $\ast$$\ast$$\ast$p\-Argv) +\end{CompactItemize} +\subsection*{Static Public Member Functions} +\begin{CompactItemize} +\item +int {\bf Global\-Init} ({\bf Ali\-HLTConfiguration\-Handler} $\ast$p\-Handler) +\item +int {\bf Global\-Deinit} ({\bf Ali\-HLTConfiguration\-Handler} $\ast$p\-Handler) +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +int {\bf Extract\-Sources} () +\item +int {\bf Extract\-Arguments} () +\item +int {\bf Interprete\-String} (const char $\ast$arg, vector$<$ char $\ast$ $>$ \&arg\-List) +\item +{\bf Class\-Def} ({\bf Ali\-HLTConfiguration}, 0) +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +TString {\bf f\-ID} +\item +TString {\bf f\-Component} +\item +TString {\bf f\-String\-Sources} +\item +int {\bf f\-Nof\-Sources} +\item +vector$<$ {\bf Ali\-HLTConfiguration} $\ast$ $>$ {\bf f\-List\-Sources} +\item +vector$<$ {\bf Ali\-HLTConfiguration} $\ast$ $>$::iterator {\bf f\-List\-Src\-Element} +\item +TString {\bf f\-Arguments} +\item +int {\bf f\-Argc} +\item +char $\ast$$\ast$ {\bf f\-Argv} +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTConfiguration\-Handler} $\ast$ {\bf fg\-Configuration\-Handler} = NULL +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!AliHLTConfiguration@{AliHLTConfiguration}} +\index{AliHLTConfiguration@{AliHLTConfiguration}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConfiguration::Ali\-HLTConfiguration ()}\label{classAliHLTConfiguration_a0} + + +standard constructor. The configuration is automatically registered in the global configuration manager \index{AliHLTConfiguration@{Ali\-HLTConfiguration}!AliHLTConfiguration@{AliHLTConfiguration}} +\index{AliHLTConfiguration@{AliHLTConfiguration}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConfiguration::Ali\-HLTConfiguration (const char $\ast$ {\em id}, const char $\ast$ {\em component}, const char $\ast$ {\em sources}, const char $\ast$ {\em arguments})}\label{classAliHLTConfiguration_a1} + + +constructor. The configuration is automatically registered in the global configuration manager \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]unique id of the configuration \item[{\em component}]component id \item[{\em sources}]blank separated list of source configuration ids \item[{\em arguments}]argument string passed to the component at initialization \end{description} +\end{Desc} + + +Definition at line 57 of file Ali\-HLTConfiguration.cxx. + +References fg\-Configuration\-Handler, f\-List\-Sources, f\-List\-Src\-Element, HLTError, and Ali\-HLTConfiguration\-Handler::Register\-Configuration(). + +\footnotesize\begin{verbatim}58 : +59 fID(id), +60 fComponent(component), +61 fStringSources(sources), +62 fNofSources(-1), +63 fListSources(), +64 fListSrcElement(), +65 fArguments(arguments), +66 fArgc(-1), +67 fArgv(NULL) +68 { +69 // see header file for function documentation +70 fListSrcElement=fListSources.begin(); +71 if (id && component) { +72 if (fgConfigurationHandler) { +73 fgConfigurationHandler->RegisterConfiguration(this); +74 } else { +75 HLTError("no configuration handler set, abort registration"); +76 } +77 } +78 } + +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!AliHLTConfiguration@{AliHLTConfiguration}} +\index{AliHLTConfiguration@{AliHLTConfiguration}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConfiguration::Ali\-HLTConfiguration (const {\bf Ali\-HLTConfiguration} \& {\em src})}\label{classAliHLTConfiguration_a2} + + +copy constructor + +Definition at line 80 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Sources, and f\-List\-Src\-Element. + +\footnotesize\begin{verbatim}81 : +82 TObject(), +83 AliHLTLogging(), +84 fID(src.fID), +85 fComponent(src.fComponent), +86 fStringSources(src.fStringSources), +87 fNofSources(-1), +88 fListSources(), +89 fListSrcElement(), +90 fArguments(src.fArguments), +91 fArgc(-1), +92 fArgv(NULL) +93 { +94 // see header file for function documentation +95 fListSrcElement=fListSources.begin(); +96 } + +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!~AliHLTConfiguration@{$\sim$AliHLTConfiguration}} +\index{~AliHLTConfiguration@{$\sim$AliHLTConfiguration}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConfiguration::$\sim${\bf Ali\-HLTConfiguration} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTConfiguration_a4} + + +destructor + +Definition at line 111 of file Ali\-HLTConfiguration.cxx. + +References f\-Argc, f\-Argv, fg\-Configuration\-Handler, f\-ID, Ali\-HLTConfiguration\-Handler::Find\-Configuration(), f\-List\-Sources, and Ali\-HLTConfiguration\-Handler::Remove\-Configuration(). + +\footnotesize\begin{verbatim}112 { +113 // see header file for function documentation +114 if (fgConfigurationHandler) { +115 if (fgConfigurationHandler->FindConfiguration(fID.Data())!=NULL) { +116 fgConfigurationHandler->RemoveConfiguration(this); +117 } +118 } +119 if (fArgv != NULL) { +120 if (fArgc>0) { +121 for (int i=0; i::iterator element=fListSources.begin(); +130 while (element!=fListSources.end()) { +131 fListSources.erase(element); +132 element=fListSources.begin(); +133 } +134 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConfiguration::Class\-Def ({\bf Ali\-HLTConfiguration}, 0)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_d3} + + +transient + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!ExtractArguments@{ExtractArguments}} +\index{ExtractArguments@{ExtractArguments}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Extract\-Arguments ()\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_d1} + + + + +Definition at line 326 of file Ali\-HLTConfiguration.cxx. + +References f\-Argc, f\-Arguments, f\-Argv, and Interprete\-String(). + +Referenced by Get\-Arguments(). + +\footnotesize\begin{verbatim}327 { +328 // see header file for function documentation +329 int iResult=0; +330 if (!fArguments.IsNull()) { +331 vector tgtList; +332 if ((iResult=InterpreteString(fArguments, tgtList))>=0) { +333 fArgc=tgtList.size(); +334 //HLTDebug("configuration %s: extracted %d arguments from \"%s\"", GetName(), fArgc, fArguments); +335 if (fArgc>0) { +336 fArgv = new char*[fArgc]; +337 if (fArgv) { +338 vector::iterator element=tgtList.begin(); +339 int i=0; +340 while (element!=tgtList.end()) { +341 //HLTDebug("assign arguments %d (%s)", i, *element); +342 fArgv[i++]=(*element); +343 element++; +344 } +345 } else { +346 iResult=-ENOMEM; +347 } +348 } +349 } +350 } else { +351 // there are zero arguments +352 fArgc=0; +353 } +354 return iResult; +355 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!ExtractSources@{ExtractSources}} +\index{ExtractSources@{ExtractSources}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Extract\-Sources ()\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_d0} + + + + +Definition at line 292 of file Ali\-HLTConfiguration.cxx. + +References fg\-Configuration\-Handler, Ali\-HLTConfiguration\-Handler::Find\-Configuration(), f\-List\-Sources, f\-List\-Src\-Element, f\-Nof\-Sources, f\-String\-Sources, HLTError, HLTFatal, and Interprete\-String(). + +Referenced by Get\-First\-Source(), and Sources\-Resolved(). + +\footnotesize\begin{verbatim}293 { +294 // see header file for function documentation +295 int iResult=0; +296 fNofSources=0; +297 if (!fStringSources.IsNull()) { +298 vector tgtList; +299 fListSources.clear(); +300 if ((iResult=InterpreteString(fStringSources.Data(), tgtList))>=0) { +301 fNofSources=tgtList.size(); +302 vector::iterator element=tgtList.begin(); +303 while ((element=tgtList.begin())!=tgtList.end()) { +304 if (fgConfigurationHandler) { +305 AliHLTConfiguration* pConf=fgConfigurationHandler->FindConfiguration(*element); +306 if (pConf) { +307 //HLTDebug("configuration %s (%p): source \"%s\" (%p) inserted", GetName(), this, pConf->GetName(), pConf); +308 fListSources.push_back(pConf); +309 } else { +310 HLTError("can not find source \"%s\"", (*element)); +311 iResult=-ENOENT; +312 } +313 } else if (iResult>=0) { +314 iResult=-EFAULT; +315 HLTFatal("global configuration handler not initialized, can not resolve sources"); +316 } +317 delete[] (*element); +318 tgtList.erase(element); +319 } +320 fListSrcElement=fListSources.begin(); +321 } +322 } +323 return iResult; +324 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!FollowDependency@{FollowDependency}} +\index{FollowDependency@{FollowDependency}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Follow\-Dependency (const char $\ast$ {\em id}, TList $\ast$ {\em p\-Tgt\-List} = {\tt NULL})}\label{classAliHLTConfiguration_a9} + + +Try to find a dependency recursively in the list of sources. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]the source to search for \item[{\em p\-Tgt\-List}](optional) target list to receive the dependency tree \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]0 if not found n found in the n-th level dependency list in the target list \end{Desc} + + +Definition at line 393 of file Ali\-HLTConfiguration.cxx. + +References Get\-First\-Source(), Get\-Next\-Source(), and Get\-Source(). + +Referenced by Ali\-HLTSystem::Build\-Task\-List(), and Ali\-HLTTask::Print\-Dependency\-Tree(). + +\footnotesize\begin{verbatim}394 { +395 // see header file for function documentation +396 int iResult=0; +397 if (id) { +398 AliHLTConfiguration* pDep=NULL; +399 if ((pDep=GetSource(id))!=NULL) { +400 if (pTgtList) pTgtList->Add(pDep); +401 iResult++; +402 } else { +403 pDep=GetFirstSource(); +404 while (pDep && iResult==0) { +405 if ((iResult=pDep->FollowDependency(id, pTgtList))>0) { +406 if (pTgtList) pTgtList->AddFirst(pDep); +407 iResult++; +408 } +409 pDep=GetNextSource(); +410 } +411 } +412 } else { +413 iResult=-EINVAL; +414 } +415 return iResult; +416 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GetArguments@{GetArguments}} +\index{GetArguments@{GetArguments}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Get\-Arguments (const char $\ast$$\ast$$\ast$ {\em p\-Argv})}\label{classAliHLTConfiguration_a16} + + +Get the arguments array. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Argv}]pointer to receive argument array pointer \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]argc if succeeded, neg. error code if failed \end{Desc} + + +Definition at line 268 of file Ali\-HLTConfiguration.cxx. + +References Extract\-Arguments(), f\-Argc, Get\-Name(), and HLTError. + +Referenced by Ali\-HLTTask::Init(). + +\footnotesize\begin{verbatim}269 { +270 // see header file for function documentation +271 int iResult=0; +272 if (pArgv) { +273 if (fArgc==-1) { +274 if ((iResult=ExtractArguments())<0) { +275 HLTError("error extracting arguments for configuration %s", GetName()); +276 fArgc=-EINVAL; +277 } +278 } else if (fArgc<0) { +279 HLTError("previous argument extraction failed"); +280 } +281 //HLTDebug("%s fArgc %d", GetName(), fArgc); +282 iResult=fArgc; +283 *pArgv=(const char**)fArgv; +284 } else { +285 HLTError("invalid parameter"); +286 iResult=-EINVAL; +287 } +288 return iResult; +289 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GetComponentID@{GetComponentID}} +\index{GetComponentID@{GetComponentID}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ Ali\-HLTConfiguration::Get\-Component\-ID () const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTConfiguration_a6} + + +Get id of the component. The id is a unique string. \begin{Desc} +\item[Returns:]id of the component \end{Desc} + + +Definition at line 104 of file Ali\-HLTConfiguration.h. + +Referenced by Ali\-HLTTask::Init(). + +\footnotesize\begin{verbatim}104 {return fComponent;} +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GetFirstSource@{GetFirstSource}} +\index{GetFirstSource@{GetFirstSource}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration} $\ast$ Ali\-HLTConfiguration::Get\-First\-Source ()}\label{classAliHLTConfiguration_a12} + + +Start iteration and get the first source. \begin{Desc} +\item[Returns:]pointer to the first configuration descriptor \end{Desc} + + +Definition at line 193 of file Ali\-HLTConfiguration.cxx. + +References Extract\-Sources(), f\-List\-Sources, f\-List\-Src\-Element, and f\-Nof\-Sources. + +Referenced by Ali\-HLTSystem::Build\-Task\-List(), Ali\-HLTTask::Check\-Dependencies(), Follow\-Dependency(), Get\-Source(), Ali\-HLTTask::Print\-Status(), and Print\-Status(). + +\footnotesize\begin{verbatim}194 { +195 // see header file for function documentation +196 AliHLTConfiguration* pSrc=NULL; +197 if (fNofSources>=0 || ExtractSources()) { +198 fListSrcElement=fListSources.begin(); +199 if (fListSrcElement!=fListSources.end()) pSrc=*fListSrcElement; +200 } +201 return pSrc; +202 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GetName@{GetName}} +\index{GetName@{GetName}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTConfiguration::Get\-Name () const}\label{classAliHLTConfiguration_a5} + + +Get configuration id, a unique name This is an overridden TObject function in order to return the configuration name instead of the class name. Enables use of TList standard functions. \begin{Desc} +\item[Returns:]configuration id \end{Desc} + + +Definition at line 163 of file Ali\-HLTConfiguration.cxx. + +References f\-ID. + +Referenced by Ali\-HLTSystem::Build\-Task\-List(), Ali\-HLTTask::Check\-Dependencies(), Get\-Arguments(), Ali\-HLTTask::Get\-Name(), Get\-Source(), Ali\-HLTTask::Init(), Ali\-HLTTask::Print\-Status(), Print\-Status(), Ali\-HLTConfiguration\-Handler::Register\-Configuration(), Ali\-HLTConfiguration\-Handler::Remove\-Configuration(), and Ali\-HLTConfiguration\-Handler::$\sim$Ali\-HLTConfiguration\-Handler(). + +\footnotesize\begin{verbatim}164 { +165 // see header file for function documentation +166 if (!fID.IsNull()) +167 return fID.Data(); +168 return TObject::GetName(); +169 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GetNextSource@{GetNextSource}} +\index{GetNextSource@{GetNextSource}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration} $\ast$ Ali\-HLTConfiguration::Get\-Next\-Source ()}\label{classAliHLTConfiguration_a13} + + +Continue iteration and get the next source. \begin{Desc} +\item[Returns:]pointer to the next configuration descriptor in the list \end{Desc} + + +Definition at line 204 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Sources, f\-List\-Src\-Element, and f\-Nof\-Sources. + +Referenced by Ali\-HLTSystem::Build\-Task\-List(), Ali\-HLTTask::Check\-Dependencies(), Follow\-Dependency(), Get\-Source(), Ali\-HLTTask::Print\-Status(), and Print\-Status(). + +\footnotesize\begin{verbatim}205 { +206 // see header file for function documentation +207 AliHLTConfiguration* pSrc=NULL; +208 if (fNofSources>0) { +209 if (fListSrcElement!=fListSources.end() && (++fListSrcElement)!=fListSources.end()) +210 pSrc=*fListSrcElement; +211 } +212 return pSrc; +213 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GetNofSources@{GetNofSources}} +\index{GetNofSources@{GetNofSources}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Get\-Nof\-Sources ()\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTConfiguration_a10} + + +Get the number of resolved sources. \begin{Desc} +\item[Returns:]number of resolved sources \end{Desc} + + +Definition at line 134 of file Ali\-HLTConfiguration.h. + +References f\-List\-Sources. + +\footnotesize\begin{verbatim}134 {return fListSources.size();} +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GetSource@{GetSource}} +\index{GetSource@{GetSource}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration} $\ast$ Ali\-HLTConfiguration::Get\-Source (const char $\ast$ {\em id})}\label{classAliHLTConfiguration_a8} + + +Get a certain source. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]of the source configuration \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to the corresponding configuration descriptor \end{Desc} + + +Definition at line 171 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Sources, f\-List\-Src\-Element, Get\-First\-Source(), Get\-Name(), and Get\-Next\-Source(). + +Referenced by Ali\-HLTTask::Depends(), and Follow\-Dependency(). + +\footnotesize\begin{verbatim}172 { +173 // see header file for function documentation +174 AliHLTConfiguration* pSrc=NULL; +175 if (id) { +176 // first check the current element +177 if (fListSrcElement!=fListSources.end() && strcmp(id, (*fListSrcElement)->GetName())==0) { +178 pSrc=*fListSrcElement; +179 } else { +180 // check the list +181 +182 pSrc=GetFirstSource(); +183 while (pSrc) { +184 if (strcmp(id, pSrc->GetName())==0) +185 break; +186 pSrc=GetNextSource(); +187 } +188 } +189 } +190 return pSrc; +191 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GlobalDeinit@{GlobalDeinit}} +\index{GlobalDeinit@{GlobalDeinit}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Global\-Deinit ({\bf Ali\-HLTConfiguration\-Handler} $\ast$ {\em p\-Handler})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTConfiguration_e1} + + +Global de-init and cleanup of the global configuration handler + +Definition at line 151 of file Ali\-HLTConfiguration.cxx. + +References fg\-Configuration\-Handler, HLT\_\-DEFAULT\_\-LOG\_\-KEYWORD, k\-HLTLog\-Warning, and Ali\-HLTLogging::Logging(). + +Referenced by Ali\-HLTSystem::$\sim$Ali\-HLTSystem(). + +\footnotesize\begin{verbatim}152 { +153 // see header file for function documentation +154 int iResult=0; +155 if (pHandler!=NULL && fgConfigurationHandler!=pHandler) { +156 fgConfigurationHandler->Logging(kHLTLogWarning, "AliHLTConfiguration::GlobalDeinit", HLT_DEFAULT_LOG_KEYWORD, "handler %p is not set, skip ...", pHandler); +157 return -EBADF; +158 } +159 fgConfigurationHandler=NULL; +160 return iResult; +161 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!GlobalInit@{GlobalInit}} +\index{GlobalInit@{GlobalInit}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Global\-Init ({\bf Ali\-HLTConfiguration\-Handler} $\ast$ {\em p\-Handler})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTConfiguration_e0} + + +Global initialization of the configuration handler. + +Definition at line 140 of file Ali\-HLTConfiguration.cxx. + +References fg\-Configuration\-Handler, HLT\_\-DEFAULT\_\-LOG\_\-KEYWORD, k\-HLTLog\-Warning, and Ali\-HLTLogging::Logging(). + +Referenced by Class\-Imp(). + +\footnotesize\begin{verbatim}141 { +142 // see header file for function documentation +143 int iResult=0; +144 if (fgConfigurationHandler!=NULL) { +145 fgConfigurationHandler->Logging(kHLTLogWarning, "AliHLTConfiguration::GlobalInit", HLT_DEFAULT_LOG_KEYWORD, "configuration handler already initialized, overriding object %p with %p", fgConfigurationHandler, pHandler); +146 } +147 fgConfigurationHandler=pHandler; +148 return iResult; +149 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!InterpreteString@{InterpreteString}} +\index{InterpreteString@{InterpreteString}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Interprete\-String (const char $\ast$ {\em arg}, vector$<$ char $\ast$ $>$ \& {\em arg\-List})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_d2} + + +Helper function to build a vector from an argument string \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em arg}]pointer to argument string \item[{\em arg\-List}]target to receive the argument list \end{description} +\end{Desc} + + +Definition at line 357 of file Ali\-HLTConfiguration.cxx. + +Referenced by Extract\-Arguments(), and Extract\-Sources(). + +\footnotesize\begin{verbatim}358 { +359 // see header file for function documentation +360 int iResult=0; +361 if (arg) { +362 //HLTDebug("interprete \"%s\"", arg); +363 int i=0; +364 int prec=-1; +365 int bQuote=0; +366 do { +367 //HLTDebug("%d %x", i, arg[i]); +368 if (arg[i]=='\'' && bQuote==0) { +369 bQuote=1; +370 } else if (arg[i]==0 || +371 (arg[i]==' ' && bQuote==0) || +372 (arg[i]=='\'' && bQuote==1)) { +373 bQuote=0; +374 if (prec>=0) { +375 char* pEntry= new char[i-prec+1]; +376 if (pEntry) { +377 strncpy(pEntry, &arg[prec], i-prec); +378 pEntry[i-prec]=0; // terminate string +379 //HLTDebug("create string \"%s\", insert at %d", pEntry, argList.size()); +380 argList.push_back(pEntry); +381 } else +382 iResult=-ENOMEM; +383 prec=-1; +384 } +385 } else if (prec==-1) prec=i; +386 } while (arg[i++]!=0 && iResult>=0); +387 } else { +388 iResult=-EINVAL; +389 } +390 return iResult; +391 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!InvalidateSource@{InvalidateSource}} +\index{InvalidateSource@{InvalidateSource}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Invalidate\-Source ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf})}\label{classAliHLTConfiguration_a14} + + +Invalidate a dependency and mark the configuration to be re-evaluted. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]pointer to configuration descriptor \end{description} +\end{Desc} + + +Definition at line 227 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Sources, and f\-List\-Src\-Element. + +Referenced by Ali\-HLTConfiguration\-Handler::Remove\-Configuration(). + +\footnotesize\begin{verbatim}228 { +229 // see header file for function documentation +230 int iResult=0; +231 if (pConf) { +232 vector::iterator element=fListSources.begin(); +233 while (element!=fListSources.end()) { +234 if (*element==pConf) { +235 fListSources.erase(element); +236 fListSrcElement=fListSources.end(); +237 // there is no need to re-evaluate until there was a new configuration registered +238 // -> postpone the invalidation, its done in AliHLTConfigurationHandler::RegisterConfiguration +239 //InvalidateSources(); +240 break; +241 } +242 element++; +243 } +244 } else { +245 iResult=-EINVAL; +246 } +247 return iResult; +248 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!InvalidateSources@{InvalidateSources}} +\index{InvalidateSources@{InvalidateSources}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Invalidate\-Sources ()\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTConfiguration_a15} + + +Mark the configuration to be re-evaluted. + +Definition at line 164 of file Ali\-HLTConfiguration.h. + +References f\-Nof\-Sources. + +Referenced by Ali\-HLTConfiguration\-Handler::Register\-Configuration(), and Ali\-HLTTask::Unset\-Dependency(). + +\footnotesize\begin{verbatim}164 {fNofSources=-1; return 0;} +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration} \& Ali\-HLTConfiguration::operator= (const {\bf Ali\-HLTConfiguration} \& {\em src})}\label{classAliHLTConfiguration_a3} + + +assignment op + +Definition at line 98 of file Ali\-HLTConfiguration.cxx. + +References f\-Argc, f\-Arguments, f\-Argv, f\-Component, f\-ID, f\-Nof\-Sources, and f\-String\-Sources. + +\footnotesize\begin{verbatim}99 { +100 // see header file for function documentation +101 fID=src.fID; +102 fComponent=src.fComponent; +103 fStringSources=src.fStringSources; +104 fNofSources=-1; +105 fArguments=src.fArguments; +106 fArgc=-1; +107 fArgv=NULL; +108 return *this; +109 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!PrintStatus@{PrintStatus}} +\index{PrintStatus@{PrintStatus}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTConfiguration::Print\-Status ()}\label{classAliHLTConfiguration_a7} + + +Print status info. Short summary on id, component, sources and unresolved sources. + +Definition at line 250 of file Ali\-HLTConfiguration.cxx. + +References f\-Component, f\-String\-Sources, Get\-First\-Source(), Get\-Name(), Get\-Next\-Source(), HLTLog\-Keyword, HLTMessage, and Sources\-Resolved(). + +\footnotesize\begin{verbatim}251 { +252 // see header file for function documentation +253 HLTLogKeyword("configuration status"); +254 HLTMessage("status of configuration \"%s\" (%p)", GetName(), this); +255 if (!fComponent.IsNull()) HLTMessage(" - component: \"%s\"", fComponent.Data()); +256 else HLTMessage(" - component string invalid"); +257 if (!fStringSources.IsNull()) HLTMessage(" - sources: \"%s\"", fStringSources.Data()); +258 else HLTMessage(" - no sources"); +259 if (SourcesResolved(1)<=0) +260 HLTMessage(" there are unresolved sources"); +261 AliHLTConfiguration* pSrc=GetFirstSource(); +262 while (pSrc) { +263 HLTMessage(" source \"%s\" (%p) resolved", pSrc->GetName(), pSrc); +264 pSrc=GetNextSource(); +265 } +266 } +\end{verbatim}\normalsize + + +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!SourcesResolved@{SourcesResolved}} +\index{SourcesResolved@{SourcesResolved}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration::Sources\-Resolved (int {\em b\-Auto} = {\tt 0})}\label{classAliHLTConfiguration_a11} + + +Check resolving status. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em b\-Auto}]resolve if ==1 \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]1 if all sources resolved \end{Desc} + + +Definition at line 215 of file Ali\-HLTConfiguration.cxx. + +References Extract\-Sources(), f\-List\-Sources, and f\-Nof\-Sources. + +Referenced by Ali\-HLTSystem::Build\-Task\-List(), Print\-Status(), and Ali\-HLTConfiguration\-Handler::Register\-Configuration(). + +\footnotesize\begin{verbatim}216 { +217 // see header file for function documentation +218 int iResult=0; +219 if (fNofSources>=0 || bAuto && (iResult=ExtractSources())>=0) { +220 //HLTDebug("fNofSources=%d", fNofSources); +221 //HLTDebug("list size = %d", fListSources.size()); +222 iResult=fNofSources==(int)fListSources.size(); +223 } +224 return iResult; +225 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fArgc@{fArgc}} +\index{fArgc@{fArgc}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTConfiguration::f\-Argc}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r7} + + +number of arguments + +Definition at line 214 of file Ali\-HLTConfiguration.h. + +Referenced by Extract\-Arguments(), Get\-Arguments(), operator=(), and $\sim$Ali\-HLTConfiguration().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fArguments@{fArguments}} +\index{fArguments@{fArguments}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TString {\bf Ali\-HLTConfiguration::f\-Arguments}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r6} + + +The argument string as passed to the constructor. Specifies the arguments for the Analysys component. The string will be parsed and the separated arguments stored in the {\bf f\-Argv}{\rm (p.\,\pageref{classAliHLTConfiguration_r8})} array and {\bf f\-Argc}{\rm (p.\,\pageref{classAliHLTConfiguration_r7})} member. + +Definition at line 212 of file Ali\-HLTConfiguration.h. + +Referenced by Extract\-Arguments(), and operator=().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fArgv@{fArgv}} +\index{fArgv@{fArgv}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$$\ast$ {\bf Ali\-HLTConfiguration::f\-Argv}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r8} + + +argument array + +Definition at line 216 of file Ali\-HLTConfiguration.h. + +Referenced by Extract\-Arguments(), operator=(), and $\sim$Ali\-HLTConfiguration().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fComponent@{fComponent}} +\index{fComponent@{fComponent}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TString {\bf Ali\-HLTConfiguration::f\-Component}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r1} + + +component id of this configuration + +Definition at line 195 of file Ali\-HLTConfiguration.h. + +Referenced by operator=(), and Print\-Status().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fgConfigurationHandler@{fgConfigurationHandler}} +\index{fgConfigurationHandler@{fgConfigurationHandler}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration\-Handler} $\ast$ {\bf Ali\-HLTConfiguration::fg\-Configuration\-Handler} = NULL\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTConfiguration_v0} + + +the instance of the global configuration handler + +Definition at line 138 of file Ali\-HLTConfiguration.cxx. + +Referenced by Ali\-HLTConfiguration(), Extract\-Sources(), Global\-Deinit(), Global\-Init(), and $\sim$Ali\-HLTConfiguration().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fID@{fID}} +\index{fID@{fID}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TString {\bf Ali\-HLTConfiguration::f\-ID}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r0} + + +id of this configuration + +Definition at line 193 of file Ali\-HLTConfiguration.h. + +Referenced by Get\-Name(), operator=(), and $\sim$Ali\-HLTConfiguration().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fListSources@{fListSources}} +\index{fListSources@{fListSources}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTConfiguration}$\ast$$>$ {\bf Ali\-HLTConfiguration::f\-List\-Sources}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r4} + + +list of sources + +Definition at line 202 of file Ali\-HLTConfiguration.h. + +Referenced by Ali\-HLTConfiguration(), Extract\-Sources(), Get\-First\-Source(), Get\-Next\-Source(), Get\-Nof\-Sources(), Get\-Source(), Invalidate\-Source(), Sources\-Resolved(), and $\sim$Ali\-HLTConfiguration().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fListSrcElement@{fListSrcElement}} +\index{fListSrcElement@{fListSrcElement}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTConfiguration}$\ast$$>$::iterator {\bf Ali\-HLTConfiguration::f\-List\-Src\-Element}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r5} + + +iterator for the above list + +Definition at line 204 of file Ali\-HLTConfiguration.h. + +Referenced by Ali\-HLTConfiguration(), Extract\-Sources(), Get\-First\-Source(), Get\-Next\-Source(), Get\-Source(), and Invalidate\-Source().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fNofSources@{fNofSources}} +\index{fNofSources@{fNofSources}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTConfiguration::f\-Nof\-Sources}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r3} + + +number of resolved sources, -1 indicates re-evaluation + +Definition at line 200 of file Ali\-HLTConfiguration.h. + +Referenced by Extract\-Sources(), Get\-First\-Source(), Get\-Next\-Source(), Invalidate\-Sources(), operator=(), and Sources\-Resolved().\index{AliHLTConfiguration@{Ali\-HLTConfiguration}!fStringSources@{fStringSources}} +\index{fStringSources@{fStringSources}!AliHLTConfiguration@{Ali\-HLTConfiguration}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TString {\bf Ali\-HLTConfiguration::f\-String\-Sources}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfiguration_r2} + + +the {\em sources\/} string as passed to the constructor + +Definition at line 198 of file Ali\-HLTConfiguration.h. + +Referenced by Extract\-Sources(), operator=(), and Print\-Status(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTConfiguration.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTConfiguration.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTConfigurationHandler.eps b/HLT/PHOS/latex/classAliHLTConfigurationHandler.eps new file mode 100644 index 00000000000..e04e194f8c8 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTConfigurationHandler.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 223.464 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 2.2375 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTConfigurationHandler) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTConfigurationHandler) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTConfigurationHandler.tex b/HLT/PHOS/latex/classAliHLTConfigurationHandler.tex new file mode 100644 index 00000000000..331834ca9d0 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTConfigurationHandler.tex @@ -0,0 +1,328 @@ +\section{Ali\-HLTConfiguration\-Handler Class Reference} +\label{classAliHLTConfigurationHandler}\index{AliHLTConfigurationHandler@{AliHLTConfigurationHandler}} +{\tt \#include $<$Ali\-HLTConfiguration\-Handler.h$>$} + +Inheritance diagram for Ali\-HLTConfiguration\-Handler::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTConfigurationHandler} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Global Handling of HLT configurations. + +This class implements the global handling of {\bf Ali\-HLTConfiguration}{\rm (p.\,\pageref{classAliHLTConfiguration})} objects. It is a list of all configuartion descriptor currently available in the system. Each {\bf Ali\-HLTConfiguration}{\rm (p.\,\pageref{classAliHLTConfiguration})} object is registerd automatically with the handler and put into the list. + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 31 of file Ali\-HLTConfiguration\-Handler.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTConfiguration\-Handler} () +\item +virtual {\bf $\sim$Ali\-HLTConfiguration\-Handler} () +\item +int {\bf Register\-Configuration} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf) +\item +int {\bf Create\-Configuration} (const char $\ast$id, const char $\ast$component, const char $\ast$sources, const char $\ast$arguments) +\item +int {\bf Remove\-Configuration} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf) +\item +int {\bf Remove\-Configuration} (const char $\ast$id) +\item +{\bf Ali\-HLTConfiguration} $\ast$ {\bf Find\-Configuration} (const char $\ast$id) +\item +void {\bf Print\-Configurations} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Class\-Def} ({\bf Ali\-HLTConfiguration\-Handler}, 1) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +TList {\bf fg\-List\-Configurations} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!AliHLTConfigurationHandler@{AliHLTConfigurationHandler}} +\index{AliHLTConfigurationHandler@{AliHLTConfigurationHandler}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConfiguration\-Handler::Ali\-HLTConfiguration\-Handler ()}\label{classAliHLTConfigurationHandler_a0} + + +standard constructor \index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!~AliHLTConfigurationHandler@{$\sim$AliHLTConfigurationHandler}} +\index{~AliHLTConfigurationHandler@{$\sim$AliHLTConfigurationHandler}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConfiguration\-Handler::$\sim${\bf Ali\-HLTConfiguration\-Handler} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTConfigurationHandler_a1} + + +destructor + +Definition at line 1076 of file Ali\-HLTConfiguration.cxx. + +References fg\-List\-Configurations, Ali\-HLTConfiguration::Get\-Name(), and HLTDebug. + +\footnotesize\begin{verbatim}1077 { +1078 // see header file for function documentation +1079 TObjLink* lnk=NULL; +1080 while (lnk=fgListConfigurations.FirstLink()) { +1081 AliHLTConfiguration* pConf=(AliHLTConfiguration*)lnk->GetObject(); +1082 HLTDebug("delete configuration \"%s\"", pConf->GetName()); +1083 fgListConfigurations.Remove(lnk); +1084 delete pConf; +1085 } +1086 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConfiguration\-Handler::Class\-Def ({\bf Ali\-HLTConfiguration\-Handler}, 1)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfigurationHandler_d0} + + +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!CreateConfiguration@{CreateConfiguration}} +\index{CreateConfiguration@{CreateConfiguration}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration\-Handler::Create\-Configuration (const char $\ast$ {\em id}, const char $\ast$ {\em component}, const char $\ast$ {\em sources}, const char $\ast$ {\em arguments})}\label{classAliHLTConfigurationHandler_a3} + + +Create a configuration and register it. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]\item[{\em component}]\item[{\em sources}]\item[{\em arguments}]\end{description} +\end{Desc} + + +Definition at line 1117 of file Ali\-HLTConfiguration.cxx. + +References Find\-Configuration(), and HLTError. + +\footnotesize\begin{verbatim}1118 { +1119 // see header file for function documentation +1120 int iResult=0; +1121 AliHLTConfiguration* pConf= new AliHLTConfiguration(id, component, sources, arguments); +1122 if (pConf) { +1123 // the configuration will be registered automatically, if this failes the configuration +1124 // is missing -> delete it +1125 if (FindConfiguration(id)==NULL) { +1126 delete pConf; +1127 pConf=NULL; +1128 iResult=-EEXIST; +1129 } +1130 } else { +1131 HLTError("system error: object allocation failed"); +1132 iResult=-ENOMEM; +1133 } +1134 return iResult; +1135 } +\end{verbatim}\normalsize + + +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!FindConfiguration@{FindConfiguration}} +\index{FindConfiguration@{FindConfiguration}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration} $\ast$ Ali\-HLTConfiguration\-Handler::Find\-Configuration (const char $\ast$ {\em id})}\label{classAliHLTConfigurationHandler_a6} + + +Find a configuration from the global list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]Id of the configuration to find \end{description} +\end{Desc} + + +Definition at line 1193 of file Ali\-HLTConfiguration.cxx. + +References fg\-List\-Configurations. + +Referenced by Ali\-HLTSystem::Build\-Task\-List(), Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), Create\-Configuration(), Ali\-HLTConfiguration::Extract\-Sources(), Register\-Configuration(), Remove\-Configuration(), and Ali\-HLTConfiguration::$\sim$Ali\-HLTConfiguration(). + +\footnotesize\begin{verbatim}1194 { +1195 // see header file for function documentation +1196 AliHLTConfiguration* pConf=NULL; +1197 if (id) { +1198 pConf=(AliHLTConfiguration*)fgListConfigurations.FindObject(id); +1199 } +1200 return pConf; +1201 } +\end{verbatim}\normalsize + + +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!PrintConfigurations@{PrintConfigurations}} +\index{PrintConfigurations@{PrintConfigurations}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTConfiguration\-Handler::Print\-Configurations ()}\label{classAliHLTConfigurationHandler_a7} + + +Print the registered configurations to the logging function. + +Definition at line 1137 of file Ali\-HLTConfiguration.cxx. + +References fg\-List\-Configurations, HLTLog\-Keyword, and HLTMessage. + +\footnotesize\begin{verbatim}1138 { +1139 // see header file for function documentation +1140 HLTLogKeyword("configuration listing"); +1141 HLTMessage("registered configurations:"); +1142 TObjLink *lnk = fgListConfigurations.FirstLink(); +1143 while (lnk) { +1144 TObject *obj = lnk->GetObject(); +1145 HLTMessage(" %s", obj->GetName()); +1146 lnk = lnk->Next(); +1147 } +1148 } +\end{verbatim}\normalsize + + +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!RegisterConfiguration@{RegisterConfiguration}} +\index{RegisterConfiguration@{RegisterConfiguration}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration\-Handler::Register\-Configuration ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf})}\label{classAliHLTConfigurationHandler_a2} + + +Register a configuration to the global list of configurations. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]The configuration to register \end{description} +\end{Desc} + + +Definition at line 1088 of file Ali\-HLTConfiguration.cxx. + +References fg\-List\-Configurations, Find\-Configuration(), Ali\-HLTConfiguration::Get\-Name(), HLTDebug, HLTWarning, Ali\-HLTConfiguration::Invalidate\-Sources(), and Ali\-HLTConfiguration::Sources\-Resolved(). + +Referenced by Ali\-HLTConfiguration::Ali\-HLTConfiguration(). + +\footnotesize\begin{verbatim}1089 { +1090 // see header file for function documentation +1091 int iResult=0; +1092 if (pConf) { +1093 if (FindConfiguration(pConf->GetName()) == NULL) { +1094 AliHLTConfiguration* pClone=new AliHLTConfiguration(*pConf); +1095 fgListConfigurations.Add(pClone); +1096 HLTDebug("configuration \"%s\" (%p) registered from %p", pClone->GetName(), pClone, pConf); +1097 +1098 // mark all configurations with unresolved dependencies for re-evaluation +1099 TObjLink* lnk=fgListConfigurations.FirstLink(); +1100 while (lnk) { +1101 AliHLTConfiguration* pSrc=(AliHLTConfiguration*)lnk->GetObject(); +1102 if (pSrc && pSrc!=pClone && pSrc->SourcesResolved()!=1) { +1103 pSrc->InvalidateSources(); +1104 } +1105 lnk=lnk->Next(); +1106 } +1107 } else { +1108 iResult=-EEXIST; +1109 HLTWarning("configuration \"%s\" already registered", pConf->GetName()); +1110 } +1111 } else { +1112 iResult=-EINVAL; +1113 } +1114 return iResult; +1115 } +\end{verbatim}\normalsize + + +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!RemoveConfiguration@{RemoveConfiguration}} +\index{RemoveConfiguration@{RemoveConfiguration}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration\-Handler::Remove\-Configuration (const char $\ast$ {\em id})}\label{classAliHLTConfigurationHandler_a5} + + +Remove a configuration from the global list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]The configuration to remove \end{description} +\end{Desc} + + +Definition at line 1150 of file Ali\-HLTConfiguration.cxx. + +References Find\-Configuration(), HLTWarning, and Remove\-Configuration(). + +\footnotesize\begin{verbatim}1151 { +1152 // see header file for function documentation +1153 int iResult=0; +1154 if (id) { +1155 AliHLTConfiguration* pConf=NULL; +1156 if ((pConf=FindConfiguration(id))!=NULL) { +1157 iResult=RemoveConfiguration(pConf); +1158 delete pConf; +1159 pConf=NULL; +1160 } else { +1161 HLTWarning("can not find configuration \"%s\"", id); +1162 iResult=-ENOENT; +1163 } +1164 } else { +1165 iResult=-EINVAL; +1166 } +1167 return iResult; +1168 } +\end{verbatim}\normalsize + + +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!RemoveConfiguration@{RemoveConfiguration}} +\index{RemoveConfiguration@{RemoveConfiguration}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConfiguration\-Handler::Remove\-Configuration ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf})}\label{classAliHLTConfigurationHandler_a4} + + +Remove a configuration from the global list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]The configuration to remove \end{description} +\end{Desc} + + +Definition at line 1170 of file Ali\-HLTConfiguration.cxx. + +References fg\-List\-Configurations, Ali\-HLTConfiguration::Get\-Name(), HLTDebug, and Ali\-HLTConfiguration::Invalidate\-Source(). + +Referenced by Remove\-Configuration(), and Ali\-HLTConfiguration::$\sim$Ali\-HLTConfiguration(). + +\footnotesize\begin{verbatim}1171 { +1172 // see header file for function documentation +1173 int iResult=0; +1174 if (pConf) { +1175 // remove the configuration from the list +1176 HLTDebug("remove configuration \"%s\"", pConf->GetName()); +1177 fgListConfigurations.Remove(pConf); +1178 // remove cross links in the remaining configurations +1179 TObjLink* lnk=fgListConfigurations.FirstLink(); +1180 while (lnk && iResult>=0) { +1181 AliHLTConfiguration* pRem=(AliHLTConfiguration*)lnk->GetObject(); +1182 if (pRem) { +1183 pRem->InvalidateSource(pConf); +1184 } else { +1185 iResult=-EFAULT; +1186 } +1187 lnk=lnk->Next(); +1188 } +1189 } +1190 return iResult; +1191 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}!fgListConfigurations@{fgListConfigurations}} +\index{fgListConfigurations@{fgListConfigurations}!AliHLTConfigurationHandler@{Ali\-HLTConfiguration\-Handler}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TList {\bf Ali\-HLTConfiguration\-Handler::fg\-List\-Configurations}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConfigurationHandler_r0} + + +the list of registered configurations + +Definition at line 86 of file Ali\-HLTConfiguration\-Handler.h. + +Referenced by Find\-Configuration(), Print\-Configurations(), Register\-Configuration(), Remove\-Configuration(), and $\sim$Ali\-HLTConfiguration\-Handler(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTConfiguration\-Handler.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTConfiguration.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTConsumerDescriptor.eps b/HLT/PHOS/latex/classAliHLTConsumerDescriptor.eps new file mode 100644 index 00000000000..97f1408d700 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTConsumerDescriptor.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 229.885 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 2.175 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTConsumerDescriptor) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTConsumerDescriptor) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTConsumerDescriptor.tex b/HLT/PHOS/latex/classAliHLTConsumerDescriptor.tex new file mode 100644 index 00000000000..6a90f95464d --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTConsumerDescriptor.tex @@ -0,0 +1,329 @@ +\section{Ali\-HLTConsumer\-Descriptor Class Reference} +\label{classAliHLTConsumerDescriptor}\index{AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}} +{\tt \#include $<$Ali\-HLTConsumer\-Descriptor.h$>$} + +Inheritance diagram for Ali\-HLTConsumer\-Descriptor::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTConsumerDescriptor} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Helper class to describe a consumer component. + +There is unfortunately no unique determination of the data type from the component itself possible, thats why both component and data type have to be initialized and are stored in a compound. The class is intended to make bookkeeping easier. + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 30 of file Ali\-HLTConsumer\-Descriptor.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTConsumer\-Descriptor} () +\item +{\bf Ali\-HLTConsumer\-Descriptor} ({\bf Ali\-HLTComponent} $\ast$p\-Consumer) +\item +{\bf Ali\-HLTConsumer\-Descriptor} (const {\bf Ali\-HLTConsumer\-Descriptor} \&) +\item +{\bf Ali\-HLTConsumer\-Descriptor} \& {\bf operator=} (const {\bf Ali\-HLTConsumer\-Descriptor} \&) +\item +{\bf $\sim$Ali\-HLTConsumer\-Descriptor} () +\item +{\bf Ali\-HLTComponent} $\ast$ {\bf Get\-Component} () +\item +int {\bf Set\-Active\-Data\-Segment} ({\bf Ali\-HLTUInt32\_\-t} offset, {\bf Ali\-HLTUInt32\_\-t} size) +\item +int {\bf Check\-Active\-Data\-Segment} ({\bf Ali\-HLTUInt32\_\-t} offset, {\bf Ali\-HLTUInt32\_\-t} size) +\item +int {\bf Get\-Nof\-Active\-Segments} () +\item +int {\bf Release\-Active\-Data\-Segment} ({\bf Ali\-HLTUInt32\_\-t} offset, {\bf Ali\-HLTUInt32\_\-t} size) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent} $\ast$ {\bf fp\-Consumer} +\item +vector$<$ {\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment} $>$ {\bf f\-Segments} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}} +\index{AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConsumer\-Descriptor::Ali\-HLTConsumer\-Descriptor ()}\label{classAliHLTConsumerDescriptor_a0} + + +standard constructur \index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}} +\index{AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConsumer\-Descriptor::Ali\-HLTConsumer\-Descriptor ({\bf Ali\-HLTComponent} $\ast$ {\em p\-Consumer})}\label{classAliHLTConsumerDescriptor_a1} + + +constructur \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer}]pointer to the consumer component \end{description} +\end{Desc} + + +Definition at line 46 of file Ali\-HLTConsumer\-Descriptor.cxx. + +References f\-Segments. + +\footnotesize\begin{verbatim}47 : +48 fpConsumer(pConsumer), +49 fSegments() +50 { +51 // see header file for function documentation +52 fSegments.clear(); +53 } + +\end{verbatim}\normalsize + + +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}} +\index{AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConsumer\-Descriptor::Ali\-HLTConsumer\-Descriptor (const {\bf Ali\-HLTConsumer\-Descriptor} \&)}\label{classAliHLTConsumerDescriptor_a2} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 55 of file Ali\-HLTConsumer\-Descriptor.cxx. + +\footnotesize\begin{verbatim}56 : +57 TObject(), +58 AliHLTLogging(), +59 fpConsumer(desc.fpConsumer), +60 fSegments() +61 { +62 // see header file for function documentation +63 +64 // we can simply transfer the pointer to th new object since there are no +65 // release actions in the destructor +66 } + +\end{verbatim}\normalsize + + +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!~AliHLTConsumerDescriptor@{$\sim$AliHLTConsumerDescriptor}} +\index{~AliHLTConsumerDescriptor@{$\sim$AliHLTConsumerDescriptor}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTConsumer\-Descriptor::$\sim${\bf Ali\-HLTConsumer\-Descriptor} ()}\label{classAliHLTConsumerDescriptor_a4} + + +destructor + +Definition at line 78 of file Ali\-HLTConsumer\-Descriptor.cxx. + +References f\-Segments. + +\footnotesize\begin{verbatim}79 { +80 // see header file for function documentation +81 if (fSegments.size()>0) { +82 //HLTWarning("unreleased data segments found"); +83 } +84 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!CheckActiveDataSegment@{CheckActiveDataSegment}} +\index{CheckActiveDataSegment@{CheckActiveDataSegment}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConsumer\-Descriptor::Check\-Active\-Data\-Segment ({\bf Ali\-HLTUInt32\_\-t} {\em offset}, {\bf Ali\-HLTUInt32\_\-t} {\em size})}\label{classAliHLTConsumerDescriptor_a7} + + +Check whether there is an active data segment of certain size with certain offset. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em offset}]offset of the data segment in the data buffer \item[{\em size}]size of the data segment in the data buffer \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]$>$ if existend, 0 if not \end{Desc} + + +Definition at line 96 of file Ali\-HLTConsumer\-Descriptor.cxx. + +References f\-Segments. + +Referenced by Ali\-HLTData\-Buffer::Release(). + +\footnotesize\begin{verbatim}97 { +98 // see header file for function documentation +99 int iResult=0; +100 if (fSegments.size()>0) { +101 vector::iterator segment=fSegments.begin(); +102 while (segment!=fSegments.end()) { +103 if ((iResult=((*segment).fSegmentOffset==offset && (*segment).fSegmentSize==size))>0) { +104 break; +105 } +106 segment++; +107 } +108 } else { +109 //HLTWarning("no data segment active for consumer %p", this); +110 iResult=-ENODATA; +111 } +112 return iResult; +113 } +\end{verbatim}\normalsize + + +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!GetComponent@{GetComponent}} +\index{GetComponent@{GetComponent}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent}$\ast$ Ali\-HLTConsumer\-Descriptor::Get\-Component ()\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTConsumerDescriptor_a5} + + +Get the component of this descriptor. \begin{Desc} +\item[Returns:]pointer to the component \end{Desc} + + +Definition at line 49 of file Ali\-HLTConsumer\-Descriptor.h. + +\footnotesize\begin{verbatim}49 {return fpConsumer;} +\end{verbatim}\normalsize + + +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!GetNofActiveSegments@{GetNofActiveSegments}} +\index{GetNofActiveSegments@{GetNofActiveSegments}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConsumer\-Descriptor::Get\-Nof\-Active\-Segments ()\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTConsumerDescriptor_a8} + + +get the number of active segments for this consumer \begin{Desc} +\item[Returns:]number of active segments \end{Desc} + + +Definition at line 81 of file Ali\-HLTConsumer\-Descriptor.h. + +References f\-Segments. + +Referenced by Ali\-HLTData\-Buffer::Release(). + +\footnotesize\begin{verbatim}81 {return fSegments.size();}; +\end{verbatim}\normalsize + + +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConsumer\-Descriptor} \& Ali\-HLTConsumer\-Descriptor::operator= (const {\bf Ali\-HLTConsumer\-Descriptor} \&)}\label{classAliHLTConsumerDescriptor_a3} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 68 of file Ali\-HLTConsumer\-Descriptor.cxx. + +References fp\-Consumer. + +\footnotesize\begin{verbatim}69 { +70 // see header file for function documentation +71 +72 // we can simply transfer the pointer to th new object since there are no +73 // release actions in the destructor +74 fpConsumer=desc.fpConsumer; +75 return *this; +76 } +\end{verbatim}\normalsize + + +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!ReleaseActiveDataSegment@{ReleaseActiveDataSegment}} +\index{ReleaseActiveDataSegment@{ReleaseActiveDataSegment}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConsumer\-Descriptor::Release\-Active\-Data\-Segment ({\bf Ali\-HLTUInt32\_\-t} {\em offset}, {\bf Ali\-HLTUInt32\_\-t} {\em size})}\label{classAliHLTConsumerDescriptor_a9} + + + + +Definition at line 115 of file Ali\-HLTConsumer\-Descriptor.cxx. + +References f\-Segments. + +Referenced by Ali\-HLTData\-Buffer::Release(). + +\footnotesize\begin{verbatim}116 { +117 // see header file for function documentation +118 int iResult=0; +119 if (fSegments.size()>0) { +120 vector::iterator segment=fSegments.begin(); +121 while (segment!=fSegments.end()) { +122 if ((iResult=((*segment).fSegmentOffset==offset && (*segment).fSegmentSize==size))>0) { +123 fSegments.erase(segment); +124 break; +125 } +126 segment++; +127 } +128 if (iResult==0) { +129 //HLTWarning("no data segment (%d:%d) active for consumer %p", offset, size, this); +130 iResult=-ENOENT; +131 } +132 } else { +133 //HLTWarning("no data segment active for consumer %p", this); +134 iResult=-ENODATA; +135 } +136 return iResult; +137 } +\end{verbatim}\normalsize + + +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!SetActiveDataSegment@{SetActiveDataSegment}} +\index{SetActiveDataSegment@{SetActiveDataSegment}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTConsumer\-Descriptor::Set\-Active\-Data\-Segment ({\bf Ali\-HLTUInt32\_\-t} {\em offset}, {\bf Ali\-HLTUInt32\_\-t} {\em size})}\label{classAliHLTConsumerDescriptor_a6} + + +Set an active data segment. the pointer will be handled in a container, no allocation, copy or cleanup. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em offset}]offset of the segment in the buffer \item[{\em size}]size of the segment in the buffer \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]$>$=0 if succeeded \end{Desc} + + +Definition at line 86 of file Ali\-HLTConsumer\-Descriptor.cxx. + +References f\-Segments. + +Referenced by Ali\-HLTData\-Buffer::Subscribe(). + +\footnotesize\begin{verbatim}87 { +88 // see header file for function documentation +89 int iResult=0; +90 AliHLTDataBuffer::AliHLTDataSegment segment(offset, size); +91 fSegments.push_back(segment); +92 //HLTDebug("set active segment (%d:%d) for consumer %p", offset, size, this); +93 return iResult; +94 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!fpConsumer@{fpConsumer}} +\index{fpConsumer@{fpConsumer}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent}$\ast$ {\bf Ali\-HLTConsumer\-Descriptor::fp\-Consumer}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConsumerDescriptor_r0} + + +consumer object + +Definition at line 89 of file Ali\-HLTConsumer\-Descriptor.h. + +Referenced by operator=().\index{AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}!fSegments@{fSegments}} +\index{fSegments@{fSegments}!AliHLTConsumerDescriptor@{Ali\-HLTConsumer\-Descriptor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}$>$ {\bf Ali\-HLTConsumer\-Descriptor::f\-Segments}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTConsumerDescriptor_r1} + + +transient + +list of data segments + +Definition at line 92 of file Ali\-HLTConsumer\-Descriptor.h. + +Referenced by Ali\-HLTConsumer\-Descriptor(), Check\-Active\-Data\-Segment(), Get\-Nof\-Active\-Segments(), Release\-Active\-Data\-Segment(), Set\-Active\-Data\-Segment(), and $\sim$Ali\-HLTConsumer\-Descriptor(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTConsumer\-Descriptor.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTConsumer\-Descriptor.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTDataBuffer.eps b/HLT/PHOS/latex/classAliHLTDataBuffer.eps new file mode 100644 index 00000000000..a340e87eddc --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTDataBuffer.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 336.134 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.4875 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTDataBuffer) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTDataBuffer) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTDataBuffer.tex b/HLT/PHOS/latex/classAliHLTDataBuffer.tex new file mode 100644 index 00000000000..dd0cb529072 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTDataBuffer.tex @@ -0,0 +1,1158 @@ +\section{Ali\-HLTData\-Buffer Class Reference} +\label{classAliHLTDataBuffer}\index{AliHLTDataBuffer@{AliHLTDataBuffer}} +{\tt \#include $<$Ali\-HLTData\-Buffer.h$>$} + +Inheritance diagram for Ali\-HLTData\-Buffer::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTDataBuffer} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Handling of data buffers for the HLT. + +The class provides handling of data buffers for HLT tasks. Each task gets its own Data Buffer instance. The buffer is grouped into different data segments according to the output of the component.\par + The Data Buffer keeps control over the data requests of the 'child' components. Each component can subscribe to a certain segment of the data buffer. It's state is then changed from 'reserved' to 'active'. After the data processing, the component has to release the segment and it's state is set to 'processed'. If all components have requested and released their data, the Raw Buffer is released and pushed back in the list of available buffers. + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 41 of file Ali\-HLTData\-Buffer.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTData\-Buffer} () +\item +{\bf Ali\-HLTData\-Buffer} (const {\bf Ali\-HLTData\-Buffer} \&) +\item +{\bf Ali\-HLTData\-Buffer} \& {\bf operator=} (const {\bf Ali\-HLTData\-Buffer} \&) +\item +virtual {\bf $\sim$Ali\-HLTData\-Buffer} () +\item +int {\bf Set\-Consumer} ({\bf Ali\-HLTComponent} $\ast$p\-Consumer) +\item +int {\bf Find\-Matching\-Data\-Blocks} (const {\bf Ali\-HLTComponent} $\ast$p\-Consumer, vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ $\ast$tgt\-List=NULL) +\item +int {\bf Subscribe} (const {\bf Ali\-HLTComponent} $\ast$p\-Consumer, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$array\-Block\-Desc, int i\-Array\-Size) +\item +int {\bf Release} ({\bf Ali\-HLTComponent\-Block\-Data} $\ast$p\-Block\-Desc, const {\bf Ali\-HLTComponent} $\ast$p\-Consumer) +\item +{\bf Ali\-HLTUInt8\_\-t} $\ast$ {\bf Get\-Target\-Buffer} (int i\-Min\-Size) +\item +int {\bf Set\-Segments} ({\bf Ali\-HLTUInt8\_\-t} $\ast$p\-Tgt, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$array\-Segments, int i\-Size) +\item +int {\bf Is\-Empty} () +\item +int {\bf Get\-Nof\-Segments} () +\item +int {\bf Get\-Nof\-Consumers} () +\item +int {\bf Get\-Nof\-Active\-Consumers} () +\item +int {\bf Find\-Consumer} ({\bf Ali\-HLTComponent} $\ast$p\-Consumer, int b\-All\-Lists=1) +\item +int {\bf Reset} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +int {\bf Find\-Matching\-Data\-Segments} (const {\bf Ali\-HLTComponent} $\ast$p\-Consumer, vector$<$ {\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment} $>$ \&tgt\-List) +\item +int {\bf Reset\-Data\-Buffer} () +\item +{\bf Ali\-HLTConsumer\-Descriptor} $\ast$ {\bf Find\-Consumer} (const {\bf Ali\-HLTComponent} $\ast$p\-Consumer, vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ \&list) const +\begin{CompactList}\small\item\em transient/////////////////////////////////////////////////////////////////////////// \item\end{CompactList}\item +int {\bf Change\-Consumer\-State} ({\bf Ali\-HLTConsumer\-Descriptor} $\ast$p\-Desc, vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ \&src\-List, vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ \&tgt\-List) +\item +int {\bf Cleanup\-Consumer\-List} () +\end{CompactItemize} +\subsection*{Static Private Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTRaw\-Buffer} $\ast$ {\bf Create\-Raw\-Buffer} ({\bf Ali\-HLTUInt32\_\-t} size) +\item +int {\bf Release\-Raw\-Buffer} ({\bf Ali\-HLTRaw\-Buffer} $\ast$p\-Buffer) +\item +int {\bf Delete\-Raw\-Buffers} () +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +vector$<$ {\bf Ali\-HLTData\-Segment} $>$ {\bf f\-Segments} +\item +vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ {\bf f\-Consumers} +\item +vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ {\bf f\-Active\-Consumers} +\item +vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ {\bf f\-Released\-Consumers} +\item +{\bf Ali\-HLTRaw\-Buffer} $\ast$ {\bf fp\-Buffer} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Flags} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +int {\bf fg\-Nof\-Instances} = 0 +\item +vector$<$ {\bf Ali\-HLTRaw\-Buffer} $\ast$ $>$ {\bf fg\-Free\-Buffers} +\item +vector$<$ {\bf Ali\-HLTRaw\-Buffer} $\ast$ $>$ {\bf fg\-Active\-Buffers} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf fg\-Margin} = 1024 +\item +{\bf Ali\-HLTLogging} {\bf fg\-Logging} +\item +const Int\_\-t {\bf fgk\-Safety\-Pattern\-Size} = 16 +\item +const char {\bf fgk\-Safety\-Pattern} [$\,$] = \{0x28, 0x63, 0x29, 0x4d, 0x52, 0x49, 0x43, 0x48, 0x54, 0x45, 0x52, 0x20, 0x32, 0x30, 0x30, 0x37\} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!AliHLTDataBuffer@{AliHLTDataBuffer}} +\index{AliHLTDataBuffer@{AliHLTDataBuffer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Buffer::Ali\-HLTData\-Buffer ()}\label{classAliHLTDataBuffer_a0} + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!AliHLTDataBuffer@{AliHLTDataBuffer}} +\index{AliHLTDataBuffer@{AliHLTDataBuffer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Buffer::Ali\-HLTData\-Buffer (const {\bf Ali\-HLTData\-Buffer} \&)}\label{classAliHLTDataBuffer_a1} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 59 of file Ali\-HLTData\-Buffer.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}60 : +61 TObject(), +62 AliHLTLogging(), +63 fSegments(), +64 fConsumers(), +65 fActiveConsumers(), +66 fReleasedConsumers(), +67 fpBuffer(NULL), +68 fFlags(0) +69 { +70 // see header file for function documentation +71 HLTFatal("copy constructor untested"); +72 } + +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!~AliHLTDataBuffer@{$\sim$AliHLTDataBuffer}} +\index{~AliHLTDataBuffer@{$\sim$AliHLTDataBuffer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Buffer::$\sim${\bf Ali\-HLTData\-Buffer} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTDataBuffer_a3} + + +destructor + +Definition at line 89 of file Ali\-HLTData\-Buffer.cxx. + +References Cleanup\-Consumer\-List(), Delete\-Raw\-Buffers(), and fg\-Nof\-Instances. + +\footnotesize\begin{verbatim}90 { +91 // see header file for function documentation +92 if (--fgNofInstances<=0) { +93 DeleteRawBuffers(); +94 } +95 CleanupConsumerList(); +96 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!ChangeConsumerState@{ChangeConsumerState}} +\index{ChangeConsumerState@{ChangeConsumerState}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Change\-Consumer\-State ({\bf Ali\-HLTConsumer\-Descriptor} $\ast$ {\em p\-Desc}, vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ \& {\em src\-List}, vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ \& {\em tgt\-List})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_d3} + + +Change the state of a consumer. The state of a consumer is determined by the list it is strored in, the method moves a consumer from the source to the target list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Desc}]pointer to consumer descriptor \item[{\em src\-List}]list where the consumer is currently to be found \item[{\em tgt\-List}]list where to move the consumer \end{description} +\end{Desc} + + +Definition at line 526 of file Ali\-HLTData\-Buffer.cxx. + +References HLTError. + +Referenced by Release(), and Subscribe(). + +\footnotesize\begin{verbatim}527 { +528 // see header file for function documentation +529 int iResult=-ENOENT; +530 if (pDesc) { +531 vector::iterator desc=srcList.begin(); +532 while (desc!=srcList.end()) { +533 if ((*desc)==pDesc) { +534 srcList.erase(desc); +535 tgtList.push_back(pDesc); +536 iResult=0; +537 break; +538 } +539 desc++; +540 } +541 if (iResult<0) { +542 HLTError("can not find consumer descriptor %p in list", pDesc); +543 } +544 } else { +545 HLTError("invalid parameter"); +546 iResult=-EINVAL; +547 } +548 return iResult; +549 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!CleanupConsumerList@{CleanupConsumerList}} +\index{CleanupConsumerList@{CleanupConsumerList}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Cleanup\-Consumer\-List ()\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_d4} + + +Cleanup a consumer list. Release all allocated data structures. {\bf Note:} Not the component itself! + +Definition at line 551 of file Ali\-HLTData\-Buffer.cxx. + +References f\-Consumers, and Reset\-Data\-Buffer(). + +Referenced by $\sim$Ali\-HLTData\-Buffer(). + +\footnotesize\begin{verbatim}552 { +553 // see header file for function documentation +554 int iResult=0; +555 ResetDataBuffer(); +556 vector::iterator desc=fConsumers.begin(); +557 while (desc!=fConsumers.end()) { +558 delete *desc; +559 fConsumers.erase(desc); +560 desc=fConsumers.begin(); +561 } +562 return iResult; +563 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!CreateRawBuffer@{CreateRawBuffer}} +\index{CreateRawBuffer@{CreateRawBuffer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer} $\ast$ Ali\-HLTData\-Buffer::Create\-Raw\-Buffer ({\bf Ali\-HLTUInt32\_\-t} {\em size})\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_h0} + + +Create a raw buffer of a certain size. The function tries to find a buffer of the given size (or a bit bigger by a certain margin {\bf fg\-Margin}{\rm (p.\,\pageref{classAliHLTDataBuffer_v3})}) from the list of free buffers. If no buffer is available, a new one is created and added to the buffer handling. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em size}]min. size of the requested buffer \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to raw buffer \end{Desc} + + +Definition at line 348 of file Ali\-HLTData\-Buffer.cxx. + +References fg\-Active\-Buffers, fg\-Free\-Buffers, fgk\-Safety\-Pattern, fg\-Logging, Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Ptr, Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Size, Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Total\-Size, k\-HLTLog\-Debug, k\-HLTLog\-Error, and Ali\-HLTLogging::Logging(). + +Referenced by Get\-Target\-Buffer(). + +\footnotesize\begin{verbatim}349 { +350 // see header file for function documentation +351 AliHLTRawBuffer* pRawBuffer=NULL; +352 unsigned int reqSize=size+fgkSafetyPatternSize; +353 vector::iterator buffer=fgFreeBuffers.begin(); +354 while (buffer!=fgFreeBuffers.end() && pRawBuffer==NULL) { +355 if ((*buffer)->fTotalSize>=reqSize && ((*buffer)->fTotalSize-reqSize)fSize=size; +359 fgFreeBuffers.erase(buffer); +360 fgLogging.Logging(kHLTLogDebug, "AliHLTDataBuffer::CreateRawBuffer", "data buffer handling", "raw buffer container %p provided for request of %d bytes (total %d available in buffer %p)", pRawBuffer, size, pRawBuffer->fTotalSize, pRawBuffer->fPtr); +361 fgActiveBuffers.push_back(pRawBuffer); +362 break; +363 } +364 buffer++; +365 } +366 if (pRawBuffer==NULL) { +367 // no buffer found, create a new one +368 pRawBuffer=new AliHLTRawBuffer; +369 if (pRawBuffer) { +370 pRawBuffer->fPtr=malloc(reqSize); +371 if (pRawBuffer->fPtr) { +372 pRawBuffer->fSize=size; +373 pRawBuffer->fTotalSize=reqSize; +374 fgActiveBuffers.push_back(pRawBuffer); +375 fgLogging.Logging(kHLTLogDebug, "AliHLTDataBuffer::CreateRawBuffer", "data buffer handling", "new raw buffer %p of size %d created (container %p)", pRawBuffer->fPtr, pRawBuffer->fTotalSize, pRawBuffer); +376 if (fgkSafetyPatternSize>0) { +377 memcpy(((char*)pRawBuffer->fPtr)+pRawBuffer->fSize, fgkSafetyPattern, fgkSafetyPatternSize); +378 } +379 } else { +380 delete pRawBuffer; +381 pRawBuffer=NULL; +382 fgLogging.Logging(kHLTLogError, "AliHLTDataBuffer::CreateRawBuffer", "data buffer handling", "memory allocation failed"); +383 } +384 } else { +385 fgLogging.Logging(kHLTLogError, "AliHLTDataBuffer::CreateRawBuffer", "data buffer handling", "memory allocation failed"); +386 } +387 } +388 return pRawBuffer; +389 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!DeleteRawBuffers@{DeleteRawBuffers}} +\index{DeleteRawBuffers@{DeleteRawBuffers}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Delete\-Raw\-Buffers ()\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_h2} + + +Deletes all the raw buffers. When the last Data Buffer object is destructed, all raw data buffers are relesed. + +Definition at line 421 of file Ali\-HLTData\-Buffer.cxx. + +References fg\-Active\-Buffers, fg\-Free\-Buffers, fg\-Logging, k\-HLTLog\-Warning, and Ali\-HLTLogging::Logging(). + +Referenced by $\sim$Ali\-HLTData\-Buffer(). + +\footnotesize\begin{verbatim}422 { +423 // see header file for function documentation +424 int iResult=0; +425 vector::iterator buffer=fgFreeBuffers.begin(); +426 while (buffer!=fgFreeBuffers.end()) { +427 free((*buffer)->fPtr); +428 delete *buffer; +429 fgFreeBuffers.erase(buffer); +430 buffer=fgFreeBuffers.begin(); +431 } +432 buffer=fgActiveBuffers.begin(); +433 while (buffer!=fgActiveBuffers.end()) { +434 fgLogging.Logging(kHLTLogWarning, "AliHLTDataBuffer::ReleaseRawBuffer", "data buffer handling", "request to delete active raw buffer container (raw buffer %p, size %d)", (*buffer)->fPtr, (*buffer)->fTotalSize); +435 free((*buffer)->fPtr); +436 delete *buffer; +437 fgActiveBuffers.erase(buffer); +438 buffer=fgActiveBuffers.begin(); +439 } +440 return iResult; +441 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!FindConsumer@{FindConsumer}} +\index{FindConsumer@{FindConsumer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConsumer\-Descriptor} $\ast$ Ali\-HLTData\-Buffer::Find\-Consumer (const {\bf Ali\-HLTComponent} $\ast$ {\em p\-Consumer}, vector$<$ {\bf Ali\-HLTConsumer\-Descriptor} $\ast$ $>$ \& {\em list}) const\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_d2} + + +transient/////////////////////////////////////////////////////////////////////////// + +Find the consumer descriptor for a certain component and data type in a list of consumers.\par + {\bf Note:} There are three lists which contain the consumers in the different states. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer}]pointer to consumer component \item[{\em list}]list where to search for the consumer \end{description} +\end{Desc} + + +Definition at line 443 of file Ali\-HLTData\-Buffer.cxx. + +\footnotesize\begin{verbatim}444 { +445 // see header file for function documentation +446 AliHLTConsumerDescriptor* pDesc=NULL; +447 vector::iterator desc=list.begin(); +448 while (desc!=list.end() && pDesc==NULL) { +449 if ((pConsumer==NULL || (*desc)->GetComponent()==pConsumer)) { +450 pDesc=*desc; +451 } +452 desc++; +453 } +454 return pDesc; +455 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!FindConsumer@{FindConsumer}} +\index{FindConsumer@{FindConsumer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Find\-Consumer ({\bf Ali\-HLTComponent} $\ast$ {\em p\-Consumer}, int {\em b\-All\-Lists} = {\tt 1})}\label{classAliHLTDataBuffer_a14} + + +Check if a consumer is already in the list \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer}]pointer to consumer component \item[{\em b\-All\-Lists}]search in all lists if 1 search only in f\-Consumer list if 0 \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]1 if found, 0 if not \end{Desc} + + +Definition at line 565 of file Ali\-HLTData\-Buffer.cxx. + +References f\-Active\-Consumers, f\-Consumers, and f\-Released\-Consumers. + +Referenced by Release(), Set\-Consumer(), and Subscribe(). + +\footnotesize\begin{verbatim}566 { +567 // see header file for function documentation +568 vector::iterator desc=fConsumers.begin(); +569 while (desc!=fConsumers.end()) { +570 if ((*desc)->GetComponent()==pConsumer) +571 return 1; +572 desc++; +573 } +574 if (bAllLists==0) return 0; +575 +576 desc=fActiveConsumers.begin(); +577 while (desc!=fActiveConsumers.end()) { +578 if ((*desc)->GetComponent()==pConsumer) +579 return 1; +580 desc++; +581 } +582 desc=fReleasedConsumers.begin(); +583 while (desc!=fReleasedConsumers.end()) { +584 if ((*desc)->GetComponent()==pConsumer) +585 return 1; +586 desc++; +587 } +588 return 0; +589 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!FindMatchingDataBlocks@{FindMatchingDataBlocks}} +\index{FindMatchingDataBlocks@{FindMatchingDataBlocks}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Find\-Matching\-Data\-Blocks (const {\bf Ali\-HLTComponent} $\ast$ {\em p\-Consumer}, vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ $\ast$ {\em tgt\-List} = {\tt NULL})}\label{classAliHLTDataBuffer_a5} + + +Determine the number of matching data blocks for the component and a consumer component. \par + The first approach will support only one output data type for processing components. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer}]the component which subscribes to the buffer \item[{\em tgt\-List}](optional) the list to receive the data types \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]: number of data blocks which match the input data types of the consumer, neg. error code if failed \par + -EINVAL invalid parameter \par + \end{Desc} + + +Definition at line 121 of file Ali\-HLTData\-Buffer.cxx. + +References Find\-Matching\-Data\-Segments(). + +Referenced by Ali\-HLTTask::Get\-Nof\-Matching\-Data\-Blocks(). + +\footnotesize\begin{verbatim}122 { +123 // see header file for function documentation +124 int iResult=0; +125 if (pConsumer) { +126 vector segments; +127 if ((iResult=FindMatchingDataSegments(pConsumer, segments))>=0) { +128 if (tgtList) { +129 vector::iterator segment=segments.begin(); +130 while (segment!=segments.end()) { +131 tgtList->push_back((*segment).fDataType); +132 segment++; +133 } +134 } +135 iResult=segments.size(); +136 } +137 } else { +138 iResult=-EINVAL; +139 } +140 return iResult; +141 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!FindMatchingDataSegments@{FindMatchingDataSegments}} +\index{FindMatchingDataSegments@{FindMatchingDataSegments}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Find\-Matching\-Data\-Segments (const {\bf Ali\-HLTComponent} $\ast$ {\em p\-Consumer}, vector$<$ {\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment} $>$ \& {\em tgt\-List})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_d0} + + +Find those data segments which match the input types of a component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer}]the component which subscribes to the buffer \item[{\em tgt\-List}]the list to receive the data segment descriptors \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]: number of data blocks which match the input data types of the consumer, neg. error code if failed \par + -EINVAL invalid parameter \par + \end{Desc} + + +Definition at line 143 of file Ali\-HLTData\-Buffer.cxx. + +References f\-Segments. + +Referenced by Find\-Matching\-Data\-Blocks(), and Subscribe(). + +\footnotesize\begin{verbatim}144 { +145 // see header file for function documentation +146 int iResult=0; +147 if (pConsumer) { +148 vector dtlist; +149 ((AliHLTComponent*)pConsumer)->GetInputDataTypes(dtlist); +150 vector::iterator segment=fSegments.begin(); +151 while (segment!=fSegments.end()) { +152 vector::iterator type=dtlist.begin(); +153 while (type!=dtlist.end()) { +154 if ((*segment).fDataType==(*type) || +155 (*type)==kAliHLTAnyDataType) { +156 tgtList.push_back(*segment); +157 iResult++; +158 break; +159 } +160 type++; +161 } +162 segment++; +163 } +164 } else { +165 iResult=-EINVAL; +166 } +167 return iResult; +168 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!GetNofActiveConsumers@{GetNofActiveConsumers}} +\index{GetNofActiveConsumers@{GetNofActiveConsumers}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Get\-Nof\-Active\-Consumers ()}\label{classAliHLTDataBuffer_a13} + + +Get the number of active consumers \begin{Desc} +\item[Returns:]number of active consumers \end{Desc} + + +Definition at line 341 of file Ali\-HLTData\-Buffer.cxx. + +References f\-Active\-Consumers. + +Referenced by Get\-Nof\-Consumers(), and Release(). + +\footnotesize\begin{verbatim}342 { +343 // see header file for function documentation +344 int iResult=fActiveConsumers.size(); +345 return iResult; +346 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!GetNofConsumers@{GetNofConsumers}} +\index{GetNofConsumers@{GetNofConsumers}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Get\-Nof\-Consumers ()}\label{classAliHLTDataBuffer_a12} + + +Get the number of consumers \begin{Desc} +\item[Returns:]number of consumers \end{Desc} + + +Definition at line 334 of file Ali\-HLTData\-Buffer.cxx. + +References f\-Consumers, f\-Released\-Consumers, and Get\-Nof\-Active\-Consumers(). + +\footnotesize\begin{verbatim}335 { +336 // see header file for function documentation +337 int iResult=fConsumers.size() + GetNofActiveConsumers() + fReleasedConsumers.size(); +338 return iResult; +339 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!GetNofSegments@{GetNofSegments}} +\index{GetNofSegments@{GetNofSegments}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Get\-Nof\-Segments ()}\label{classAliHLTDataBuffer_a11} + + +Get the number of segments \begin{Desc} +\item[Returns:]number of segments \end{Desc} + + +Definition at line 327 of file Ali\-HLTData\-Buffer.cxx. + +References f\-Segments. + +Referenced by Is\-Empty(). + +\footnotesize\begin{verbatim}328 { +329 // see header file for function documentation +330 int iResult=fSegments.size(); +331 return iResult; +332 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!GetTargetBuffer@{GetTargetBuffer}} +\index{GetTargetBuffer@{GetTargetBuffer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} $\ast$ Ali\-HLTData\-Buffer::Get\-Target\-Buffer (int {\em i\-Min\-Size})}\label{classAliHLTDataBuffer_a8} + + +Get a target buffer of minimum size i\-Min\-Size. The method is used by the component which owns the Data Buffer to allocate a buffer for the data it is going to produce. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em i\-Min\-Size}]minumum size of the requested buffer \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]: pointer to target buffer if \end{Desc} + + +Definition at line 270 of file Ali\-HLTData\-Buffer.cxx. + +References Ali\-HLTUInt8\_\-t, Create\-Raw\-Buffer(), fp\-Buffer, Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Ptr, and HLTError. + +Referenced by Ali\-HLTTask::Process\-Task(). + +\footnotesize\begin{verbatim}271 { +272 // see header file for function documentation +273 AliHLTUInt8_t* pTargetBuffer=NULL; +274 fpBuffer=CreateRawBuffer(iMinSize); +275 if (fpBuffer) { +276 pTargetBuffer=(AliHLTUInt8_t*)fpBuffer->fPtr; +277 } else { +278 HLTError("can not create raw buffer"); +279 } +280 return pTargetBuffer; +281 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!IsEmpty@{IsEmpty}} +\index{IsEmpty@{IsEmpty}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Is\-Empty ()}\label{classAliHLTDataBuffer_a10} + + +Check if the data buffer is empty. \begin{Desc} +\item[Returns:]1 if empty, 0 if not \end{Desc} + + +Definition at line 320 of file Ali\-HLTData\-Buffer.cxx. + +References fp\-Buffer, and Get\-Nof\-Segments(). + +\footnotesize\begin{verbatim}321 { +322 // see header file for function documentation +323 int iResult=fpBuffer==NULL || GetNofSegments()==0; +324 return iResult; +325 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTData\-Buffer} \& Ali\-HLTData\-Buffer::operator= (const {\bf Ali\-HLTData\-Buffer} \&)}\label{classAliHLTDataBuffer_a2} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 74 of file Ali\-HLTData\-Buffer.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}75 { +76 // see header file for function documentation +77 HLTFatal("assignment operator untested"); +78 return *this; +79 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!Release@{Release}} +\index{Release@{Release}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Release ({\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em p\-Block\-Desc}, const {\bf Ali\-HLTComponent} $\ast$ {\em p\-Consumer})}\label{classAliHLTDataBuffer_a7} + + +Release an instance of the data buffer. Resets the variables of the block descriptor. If all buffer segments are released, the Data Buffer is reseted and the Raw Buffer released.\par + The method is used by the consumer component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Block\-Desc}]descriptor of the data segment \item[{\em p\-Consumer}]the component which subscribes to the buffer \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]: $>$0 if success, negative error code if failed \par + -EACCESS the consumer state can not be changed (de-activated) -ENOENT consumer has not subscribed to the buffer \par + -EINVAL invalid parameter \par + \end{Desc} + + +Definition at line 231 of file Ali\-HLTData\-Buffer.cxx. + +References Change\-Consumer\-State(), Ali\-HLTConsumer\-Descriptor::Check\-Active\-Data\-Segment(), f\-Active\-Consumers, Find\-Consumer(), Ali\-HLTComponent\-Block\-Data::f\-Offset, Ali\-HLTComponent\-Block\-Data::f\-Ptr, f\-Released\-Consumers, Ali\-HLTComponent\-Block\-Data::f\-Size, Get\-Nof\-Active\-Consumers(), Ali\-HLTConsumer\-Descriptor::Get\-Nof\-Active\-Segments(), HLTError, HLTWarning, Ali\-HLTConsumer\-Descriptor::Release\-Active\-Data\-Segment(), and Reset\-Data\-Buffer(). + +Referenced by Ali\-HLTTask::Release(). + +\footnotesize\begin{verbatim}232 { +233 // see header file for function documentation +234 int iResult=0; +235 if (pBlockDesc && pConsumer) { +236 AliHLTConsumerDescriptor* pDesc=FindConsumer(pConsumer, fActiveConsumers); +237 if (pDesc) { +238 if ((iResult=pDesc->CheckActiveDataSegment(pBlockDesc->fOffset, pBlockDesc->fSize))!=1) { +239 HLTWarning("data segment missmatch, component %p has not subscribed to a segment with offset %#x and size %d", pConsumer, pBlockDesc->fOffset, pBlockDesc->fSize); +240 // TODO: appropriate error handling, but so far optional +241 iResult=0; +242 } else { +243 pDesc->ReleaseActiveDataSegment(pBlockDesc->fOffset, pBlockDesc->fSize); +244 pBlockDesc->fOffset=0; +245 pBlockDesc->fPtr=NULL; +246 pBlockDesc->fSize=0; +247 } +248 if (pDesc->GetNofActiveSegments()==0) { +249 if ((iResult=ChangeConsumerState(pDesc, fActiveConsumers, fReleasedConsumers))>=0) { +250 if (GetNofActiveConsumers()==0) { +251 // this is the last consumer, reset the consumer list and release the raw buffer +252 ResetDataBuffer(); +253 } +254 } else { +255 HLTError("can not deactivate consumer %p for data buffer %p", pConsumer, this); +256 iResult=-EACCES; +257 } +258 } +259 } else { +260 HLTWarning("component %p has currently not subscribed to the data buffer %p", pConsumer, this); +261 iResult=-ENOENT; +262 } +263 } else { +264 HLTError("inavalid parameter: pBlockDesc=%p pConsumer=%p", pBlockDesc, pConsumer); +265 iResult=-EINVAL; +266 } +267 return iResult; +268 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!ReleaseRawBuffer@{ReleaseRawBuffer}} +\index{ReleaseRawBuffer@{ReleaseRawBuffer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Release\-Raw\-Buffer ({\bf Ali\-HLTRaw\-Buffer} $\ast$ {\em p\-Buffer})\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_h1} + + +Mark a buffer as free. After the Data Buffer has finnished using the raw buffer, it is released and added to the list of available buffers. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Buffer}]the raw buffer to release \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]$>$=0 if succeeded, neg. error code if failed \end{Desc} + + +Definition at line 391 of file Ali\-HLTData\-Buffer.cxx. + +References fg\-Active\-Buffers, fg\-Free\-Buffers, fgk\-Safety\-Pattern, fgk\-Safety\-Pattern\-Size, fg\-Logging, k\-HLTLog\-Error, k\-HLTLog\-Fatal, k\-HLTLog\-Warning, and Ali\-HLTLogging::Logging(). + +Referenced by Reset\-Data\-Buffer(). + +\footnotesize\begin{verbatim}392 { +393 // see header file for function documentation +394 int iResult=0; +395 if (pBuffer) { +396 vector::iterator buffer=fgActiveBuffers.begin(); +397 while (buffer!=fgActiveBuffers.end() && (*buffer)!=pBuffer) { +398 buffer++; +399 } +400 if (buffer!=fgActiveBuffers.end()) { +401 if (fgkSafetyPatternSize>0) { +402 if (memcmp(((char*)(*buffer)->fPtr)+(*buffer)->fSize, fgkSafetyPattern, fgkSafetyPatternSize)!=0) { +403 fgLogging.Logging(kHLTLogFatal, "AliHLTDataBuffer::ReleaseRawBuffer", "data buffer handling", "component has written beyond end of data buffer %p size %d", (*buffer)->fPtr, (*buffer)->fSize); +404 } +405 } +406 (*buffer)->fSize=0; +407 fgFreeBuffers.push_back(*buffer); +408 fgActiveBuffers.erase(buffer); +409 } else { +410 fgLogging.Logging(kHLTLogWarning, "AliHLTDataBuffer::ReleaseRawBuffer", "data buffer handling", "can not find raw buffer container %p in the list of active containers", pBuffer); +411 iResult=-ENOENT; +412 } +413 } else { +414 fgLogging.Logging(kHLTLogError, "AliHLTDataBuffer::ReleaseRawBuffer", "data buffer handling", "invalid parameter"); +415 iResult=-EINVAL; +416 } +417 return iResult; +418 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!Reset@{Reset}} +\index{Reset@{Reset}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Reset ()}\label{classAliHLTDataBuffer_a15} + + +Public method to reset the buffer. Eventually with some additional checks. In normal operation, an external reset should not be necessary. + +Definition at line 495 of file Ali\-HLTData\-Buffer.cxx. + +References Reset\-Data\-Buffer(). + +Referenced by Ali\-HLTTask::Process\-Task(). + +\footnotesize\begin{verbatim}496 { +497 // see header file for function documentation +498 return ResetDataBuffer(); +499 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!ResetDataBuffer@{ResetDataBuffer}} +\index{ResetDataBuffer@{ResetDataBuffer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Reset\-Data\-Buffer ()\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_d1} + + +Reset the data buffer. Removes all consumers back to the {\bf f\-Consumers}{\rm (p.\,\pageref{classAliHLTDataBuffer_r1})} list, deletes segments and releases the Raw Buffer. + +Definition at line 457 of file Ali\-HLTData\-Buffer.cxx. + +References f\-Active\-Consumers, f\-Consumers, fp\-Buffer, f\-Released\-Consumers, f\-Segments, HLTWarning, and Release\-Raw\-Buffer(). + +Referenced by Cleanup\-Consumer\-List(), Release(), and Reset(). + +\footnotesize\begin{verbatim}458 { +459 // see header file for function documentation +460 int iResult=0; +461 AliHLTRawBuffer* pBuffer=fpBuffer; +462 fpBuffer=NULL; +463 +464 // cleanup consumer states +465 vector::iterator desc=fReleasedConsumers.begin(); +466 while (desc!=fReleasedConsumers.end()) { +467 AliHLTConsumerDescriptor* pDesc=*desc; +468 fReleasedConsumers.erase(desc); +469 desc=fReleasedConsumers.begin(); +470 fConsumers.push_back(pDesc); +471 } +472 desc=fActiveConsumers.begin(); +473 while (desc!=fActiveConsumers.end()) { +474 AliHLTConsumerDescriptor* pDesc=*desc; +475 HLTWarning("consumer %p was not released", pDesc); +476 fActiveConsumers.erase(desc); +477 desc=fActiveConsumers.begin(); +478 fConsumers.push_back(pDesc); +479 } +480 +481 // cleanup segments +482 vector::iterator segment=fSegments.begin(); +483 while (segment!=fSegments.end()) { +484 fSegments.erase(segment); +485 segment=fSegments.begin(); +486 } +487 +488 // cleanup raw buffer +489 if (pBuffer) { +490 ReleaseRawBuffer(pBuffer); +491 } +492 return iResult; +493 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!SetConsumer@{SetConsumer}} +\index{SetConsumer@{SetConsumer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Set\-Consumer ({\bf Ali\-HLTComponent} $\ast$ {\em p\-Consumer})}\label{classAliHLTDataBuffer_a4} + + +Add component to the list of consumers \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer}]- a consumer of type {\bf Ali\-HLTComponent}{\rm (p.\,\pageref{classAliHLTComponent})} \end{description} +\end{Desc} + + +Definition at line 98 of file Ali\-HLTData\-Buffer.cxx. + +References f\-Consumers, Find\-Consumer(), Ali\-HLTComponent::Get\-Component\-ID(), HLTDebug, HLTError, and HLTWarning. + +Referenced by Ali\-HLTTask::Start\-Run(). + +\footnotesize\begin{verbatim}99 { +100 // see header file for function documentation +101 int iResult=0; +102 if (pConsumer) { +103 if (FindConsumer(pConsumer)) { +104 HLTWarning("consumer %s (%p) already set to data buffer %p", pConsumer->GetComponentID(), pConsumer, this); +105 } +106 AliHLTConsumerDescriptor* pDesc=new AliHLTConsumerDescriptor(pConsumer); +107 if (pDesc) { +108 fConsumers.push_back(pDesc); +109 HLTDebug("set consumer %s (%p) to data buffer %p", pConsumer->GetComponentID(), pConsumer, this); +110 } else { +111 HLTError("memory allocation failed"); +112 iResult=-ENOMEM; +113 } +114 } else { +115 HLTError("invalid parameter: consumer component (nil)"); +116 iResult=-EINVAL; +117 } +118 return iResult; +119 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!SetSegments@{SetSegments}} +\index{SetSegments@{SetSegments}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Set\-Segments ({\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em p\-Tgt}, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em array\-Segments}, int {\em i\-Size})}\label{classAliHLTDataBuffer_a9} + + +Set the segments for the data buffer. This is usually done after the component has written the data to the buffer, which was requested by the {\bf Get\-Target\-Buffer}{\rm (p.\,\pageref{classAliHLTDataBuffer_a8})} method. The component might produce different types of data, for each type a segment has to be defined which describes the data inside the buffer.\par + The {\bf Ali\-HLTComponent\-Block\-Data}{\rm (p.\,\pageref{structAliHLTComponentBlockData})} segment descriptor comes directly from the {\bf Ali\-HLTComponent::Process\-Event}{\rm (p.\,\pageref{classAliHLTComponent_a6})} method. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Tgt}]the target buffer which the segments refer to \item[{\em array\-Segments}]the output block descriptors of the component \item[{\em i\-Size}]size of the array \end{description} +\end{Desc} + + +Definition at line 283 of file Ali\-HLTData\-Buffer.cxx. + +References Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::f\-Data\-Type, Ali\-HLTComponent\-Block\-Data::f\-Offset, fp\-Buffer, Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Ptr, Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::f\-Segment\-Offset, f\-Segments, Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::f\-Segment\-Size, Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Size, Ali\-HLTComponent\-Block\-Data::f\-Size, Ali\-HLTComponent\-Block\-Data::f\-Specification, Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::f\-Specification, HLTDebug, HLTError, and HLTFatal. + +Referenced by Ali\-HLTTask::Process\-Task(). + +\footnotesize\begin{verbatim}284 { +285 // see header file for function documentation +286 int iResult=0; +287 if (pTgt && arrayBlockData && iSize>=0) { +288 if (fpBuffer) { +289 if (fpBuffer->fPtr==(void*)pTgt) { +290 AliHLTDataBuffer::AliHLTDataSegment segment; +291 for (int i=0; ifSize) { +293 segment.fSegmentOffset=arrayBlockData[i].fOffset; +294 segment.fSegmentSize=arrayBlockData[i].fSize; +295 segment.fDataType=arrayBlockData[i].fDataType; +296 segment.fSpecification=arrayBlockData[i].fSpecification; +297 fSegments.push_back(segment); +298 HLTDebug("set segment %s with size %d at offset %d", AliHLTComponent::DataType2Text(segment.fDataType).data(), segment.fSegmentSize, segment.fSegmentOffset); +299 } else { +300 HLTError("block data specification %#d (%s) exceeds size of data buffer", i, AliHLTComponent::DataType2Text(arrayBlockData[i].fDataType).data()); +301 HLTError("block offset=%d, block size=%d, buffer size=%d", arrayBlockData[i].fOffset, arrayBlockData[i].fSize, fpBuffer->fSize); +302 iResult=-E2BIG; +303 } +304 } +305 } else { +306 HLTError("this data buffer (%p) does not match the internal data buffer %p of raw buffer %p", pTgt, fpBuffer->fPtr, fpBuffer); +307 iResult=-EINVAL; +308 } +309 } else { +310 HLTFatal("internal data structur missmatch"); +311 iResult=-EFAULT; +312 } +313 } else { +314 HLTError("invalid parameter: pTgtBuffer=%p arrayBlockData=%p", pTgt, arrayBlockData); +315 iResult=-EINVAL; +316 } +317 return iResult; +318 } +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!Subscribe@{Subscribe}} +\index{Subscribe@{Subscribe}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Buffer::Subscribe (const {\bf Ali\-HLTComponent} $\ast$ {\em p\-Consumer}, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em array\-Block\-Desc}, int {\em i\-Array\-Size})}\label{classAliHLTDataBuffer_a6} + + +Subscribe to a segment of the data buffer. The function prepares the block descriptor for subsequent use with the {\bf Ali\-HLTComponent::Process\-Event}{\rm (p.\,\pageref{classAliHLTComponent_a6})} method, the method can prepare several block descriptors up to the array size specified by i\-Array\-Size. The return value is independent from the array size the number of block descriptors which would have been prepared if there was enough space in the array\par + The method is used by the consumer component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer}]the component which subscribes to the buffer \item[{\em array\-Block\-Desc}]pointer to block descriptor to be filled \item[{\em i\-Array\-Size}]size of the block descriptor array \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]: number of matching data blocks, neg. error code if failed\par + -EACCESS the consumer state can't be changed (activated) -EBADF unresolved data segments \par + -ENOENT consumer component not found \par + -ENODATA data buffer does not have raw data \par + -EINVAL invalid parameter \par + \end{Desc} + + +Definition at line 170 of file Ali\-HLTData\-Buffer.cxx. + +References Change\-Consumer\-State(), f\-Active\-Consumers, f\-Consumers, Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, Find\-Consumer(), Find\-Matching\-Data\-Segments(), Ali\-HLTComponent\-Block\-Data::f\-Offset, fp\-Buffer, Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Ptr, Ali\-HLTComponent\-Block\-Data::f\-Ptr, Ali\-HLTComponent\-Shm\-Data::f\-Shm\-ID, Ali\-HLTComponent\-Block\-Data::f\-Shm\-Key, Ali\-HLTComponent\-Shm\-Data::f\-Shm\-Type, Ali\-HLTComponent\-Block\-Data::f\-Size, Ali\-HLTComponent\-Block\-Data::f\-Specification, Ali\-HLTComponent\-Shm\-Data::f\-Struct\-Size, Ali\-HLTComponent\-Block\-Data::f\-Struct\-Size, HLTDebug, HLTError, and Ali\-HLTConsumer\-Descriptor::Set\-Active\-Data\-Segment(). + +Referenced by Ali\-HLTTask::Subscribe(). + +\footnotesize\begin{verbatim}171 { +172 // see header file for function documentation +173 int iResult=0; +174 if (pConsumer && arrayBlockDesc) { +175 if (fpBuffer) { +176 AliHLTConsumerDescriptor* pDesc=FindConsumer(pConsumer, fConsumers); +177 if (pDesc) { +178 vector tgtList; +179 /* TODO: think about a good policy for this check +180 * is it enough that at least one segment is available, or have all to be available? +181 * or is it possible to have optional segments? +182 */ +183 if ((iResult=FindMatchingDataSegments(pConsumer, tgtList))>0) { +184 int i =0; +185 vector::iterator segment=tgtList.begin(); +186 while (segment!=tgtList.end() && ifPtr; +195 arrayBlockDesc[i].fSize=(*segment).fSegmentSize; +196 arrayBlockDesc[i].fDataType=(*segment).fDataType; +197 arrayBlockDesc[i].fSpecification=(*segment).fSpecification; +198 pDesc->SetActiveDataSegment(arrayBlockDesc[i].fOffset, arrayBlockDesc[i].fSize); +199 HLTDebug("component %p (%s) subscribed to segment #%d offset %d", pConsumer, ((AliHLTComponent*)pConsumer)->GetComponentID(), i, arrayBlockDesc[i].fOffset); +200 i++; +201 segment++; +202 } +203 // move this consumer to the active list +204 if (ChangeConsumerState(pDesc, fConsumers, fActiveConsumers)>=0) { +205 HLTDebug("component %p (%s) subscribed to data buffer %p", pConsumer, ((AliHLTComponent*)pConsumer)->GetComponentID(), this); +206 } else { +207 // TODO: cleanup the consumer descriptor correctly +208 memset(arrayBlockDesc, 0, iArraySize*sizeof(AliHLTComponentBlockData)); +209 HLTError("can not activate consumer %p for data buffer %p", pConsumer, this); +210 iResult=-EACCES; +211 } +212 } else { +213 HLTError("unresolved data segment(s) for component %p (%s)", pConsumer, ((AliHLTComponent*)pConsumer)->GetComponentID()); +214 iResult=-EBADF; +215 } +216 } else { +217 HLTError("component %p is not a data consumer of data buffer %s", pConsumer, this); +218 iResult=-ENOENT; +219 } +220 } else { +221 HLTError("data buffer %p is empty", this); +222 iResult=-ENODATA; +223 } +224 } else { +225 HLTError("invalid parameter"); +226 iResult=-EINVAL; +227 } +228 return iResult; +229 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fActiveConsumers@{fActiveConsumers}} +\index{fActiveConsumers@{fActiveConsumers}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTConsumer\-Descriptor}$\ast$$>$ {\bf Ali\-HLTData\-Buffer::f\-Active\-Consumers}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_r2} + + + + +Definition at line 283 of file Ali\-HLTData\-Buffer.h. + +Referenced by Find\-Consumer(), Get\-Nof\-Active\-Consumers(), Release(), Reset\-Data\-Buffer(), and Subscribe().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fConsumers@{fConsumers}} +\index{fConsumers@{fConsumers}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTConsumer\-Descriptor}$\ast$$>$ {\bf Ali\-HLTData\-Buffer::f\-Consumers}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_r1} + + + + +Definition at line 281 of file Ali\-HLTData\-Buffer.h. + +Referenced by Cleanup\-Consumer\-List(), Find\-Consumer(), Get\-Nof\-Consumers(), Reset\-Data\-Buffer(), Set\-Consumer(), and Subscribe().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fFlags@{fFlags}} +\index{fFlags@{fFlags}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTData\-Buffer::f\-Flags}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_r5} + + +transient + + + +Definition at line 291 of file Ali\-HLTData\-Buffer.h.\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fgActiveBuffers@{fgActiveBuffers}} +\index{fgActiveBuffers@{fgActiveBuffers}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<$ {\bf Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer} $\ast$ $>$ {\bf Ali\-HLTData\-Buffer::fg\-Active\-Buffers}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_v2} + + +global list of currently active raw buffers + +Definition at line 83 of file Ali\-HLTData\-Buffer.cxx. + +Referenced by Create\-Raw\-Buffer(), Delete\-Raw\-Buffers(), and Release\-Raw\-Buffer().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fgFreeBuffers@{fgFreeBuffers}} +\index{fgFreeBuffers@{fgFreeBuffers}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<$ {\bf Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer} $\ast$ $>$ {\bf Ali\-HLTData\-Buffer::fg\-Free\-Buffers}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_v1} + + +global list of free raw buffers + +Definition at line 82 of file Ali\-HLTData\-Buffer.cxx. + +Referenced by Create\-Raw\-Buffer(), Delete\-Raw\-Buffers(), and Release\-Raw\-Buffer().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fgkSafetyPattern@{fgkSafetyPattern}} +\index{fgkSafetyPattern@{fgkSafetyPattern}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char {\bf Ali\-HLTData\-Buffer::fgk\-Safety\-Pattern} = \{0x28, 0x63, 0x29, 0x4d, 0x52, 0x49, 0x43, 0x48, 0x54, 0x45, 0x52, 0x20, 0x32, 0x30, 0x30, 0x37\}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_v6} + + +the safety pattern + +Definition at line 87 of file Ali\-HLTData\-Buffer.cxx. + +Referenced by Create\-Raw\-Buffer(), and Release\-Raw\-Buffer().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fgkSafetyPatternSize@{fgkSafetyPatternSize}} +\index{fgkSafetyPatternSize@{fgkSafetyPatternSize}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const Int\_\-t {\bf Ali\-HLTData\-Buffer::fgk\-Safety\-Pattern\-Size} = 16\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_v5} + + +size of the safety pattern + +Definition at line 86 of file Ali\-HLTData\-Buffer.cxx. + +Referenced by Release\-Raw\-Buffer().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fgLogging@{fgLogging}} +\index{fgLogging@{fgLogging}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTLogging} {\bf Ali\-HLTData\-Buffer::fg\-Logging}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_v4} + + +global instance to HLT logging class for static methods + +Definition at line 85 of file Ali\-HLTData\-Buffer.cxx. + +Referenced by Create\-Raw\-Buffer(), Delete\-Raw\-Buffers(), and Release\-Raw\-Buffer().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fgMargin@{fgMargin}} +\index{fgMargin@{fgMargin}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTData\-Buffer::fg\-Margin} = 1024\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_v3} + + +determines the raw buffer size margin at buffer requests + +Definition at line 84 of file Ali\-HLTData\-Buffer.cxx.\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fgNofInstances@{fgNofInstances}} +\index{fgNofInstances@{fgNofInstances}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTData\-Buffer::fg\-Nof\-Instances} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTDataBuffer_v0} + + +Number of instances of Ali\-HLTData\-Buffer. The statice variable is incremented and decremented in the constructor/ destructor. All internal data structures are cleaned up when the last instance is exiting. + +Definition at line 81 of file Ali\-HLTData\-Buffer.cxx. + +Referenced by $\sim$Ali\-HLTData\-Buffer().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fpBuffer@{fpBuffer}} +\index{fpBuffer@{fpBuffer}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTRaw\-Buffer}$\ast$ {\bf Ali\-HLTData\-Buffer::fp\-Buffer}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_r4} + + + + +Definition at line 288 of file Ali\-HLTData\-Buffer.h. + +Referenced by Get\-Target\-Buffer(), Is\-Empty(), Reset\-Data\-Buffer(), Set\-Segments(), and Subscribe().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fReleasedConsumers@{fReleasedConsumers}} +\index{fReleasedConsumers@{fReleasedConsumers}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTConsumer\-Descriptor}$\ast$$>$ {\bf Ali\-HLTData\-Buffer::f\-Released\-Consumers}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_r3} + + + + +Definition at line 285 of file Ali\-HLTData\-Buffer.h. + +Referenced by Find\-Consumer(), Get\-Nof\-Consumers(), Release(), and Reset\-Data\-Buffer().\index{AliHLTDataBuffer@{Ali\-HLTData\-Buffer}!fSegments@{fSegments}} +\index{fSegments@{fSegments}!AliHLTDataBuffer@{Ali\-HLTData\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Ali\-HLTData\-Segment}$>$ {\bf Ali\-HLTData\-Buffer::f\-Segments}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_r0} + + + + +Definition at line 278 of file Ali\-HLTData\-Buffer.h. + +Referenced by Find\-Matching\-Data\-Segments(), Get\-Nof\-Segments(), Reset\-Data\-Buffer(), and Set\-Segments(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Buffer.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Buffer.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTDataBuffer_1_1AliHLTDataSegment.tex b/HLT/PHOS/latex/classAliHLTDataBuffer_1_1AliHLTDataSegment.tex new file mode 100644 index 00000000000..131f807cd30 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTDataBuffer_1_1AliHLTDataSegment.tex @@ -0,0 +1,142 @@ +\section{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment Class Reference} +\label{classAliHLTDataBuffer_1_1AliHLTDataSegment}\index{AliHLTDataBuffer::AliHLTDataSegment@{AliHLTDataBuffer::AliHLTDataSegment}} +{\tt \#include $<$Ali\-HLTData\-Buffer.h$>$} + + + +\subsection{Detailed Description} +Descriptor of a data segment within the buffer. + + + +Definition at line 193 of file Ali\-HLTData\-Buffer.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTData\-Segment} () +\item +{\bf Ali\-HLTData\-Segment} ({\bf Ali\-HLTUInt32\_\-t} offset, {\bf Ali\-HLTUInt32\_\-t} size) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent\-Data\-Type} {\bf f\-Data\-Type} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Segment\-Offset} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Segment\-Size} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Specification} +\end{CompactItemize} +\subsection*{Friends} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTData\-Buffer} +\item +class {\bf Ali\-HLTConsumer\-Descriptor} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}!AliHLTDataSegment@{AliHLTDataSegment}} +\index{AliHLTDataSegment@{AliHLTDataSegment}!AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::Ali\-HLTData\-Segment ()\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTDataBuffer_1_1AliHLTDataSegment_a0} + + + + +Definition at line 197 of file Ali\-HLTData\-Buffer.h. + +\footnotesize\begin{verbatim}198 : +199 fDataType(), +200 fSegmentOffset(0), +201 fSegmentSize(0), +202 fSpecification(0) +203 { +204 memset(&fDataType, 0, sizeof(AliHLTComponentDataType)); +205 } + AliHLTDataSegment(AliHLTUInt32_t offset, AliHLTUInt32_t size) +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}!AliHLTDataSegment@{AliHLTDataSegment}} +\index{AliHLTDataSegment@{AliHLTDataSegment}!AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::Ali\-HLTData\-Segment ({\bf Ali\-HLTUInt32\_\-t} {\em offset}, {\bf Ali\-HLTUInt32\_\-t} {\em size})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTDataBuffer_1_1AliHLTDataSegment_a1} + + + + +Definition at line 206 of file Ali\-HLTData\-Buffer.h. + +\footnotesize\begin{verbatim}207 : +208 fDataType(), +209 fSegmentOffset(offset), +210 fSegmentSize(size), +211 fSpecification(0) +212 { +213 memset(&fDataType, 0, sizeof(AliHLTComponentDataType)); +214 } + private: +\end{verbatim}\normalsize + + + + +\subsection{Friends And Related Function Documentation} +\index{AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}!AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}} +\index{AliHLTConsumerDescriptor@{AliHLTConsumerDescriptor}!AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}friend class {\bf Ali\-HLTConsumer\-Descriptor}\hspace{0.3cm}{\tt [friend]}}\label{classAliHLTDataBuffer_1_1AliHLTDataSegment_n1} + + + + +Definition at line 195 of file Ali\-HLTData\-Buffer.h.\index{AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}!AliHLTDataBuffer@{AliHLTDataBuffer}} +\index{AliHLTDataBuffer@{AliHLTDataBuffer}!AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}friend class {\bf Ali\-HLTData\-Buffer}\hspace{0.3cm}{\tt [friend]}}\label{classAliHLTDataBuffer_1_1AliHLTDataSegment_n0} + + + + +Definition at line 194 of file Ali\-HLTData\-Buffer.h. + +\subsection{Member Data Documentation} +\index{AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}!fDataType@{fDataType}} +\index{fDataType@{fDataType}!AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::f\-Data\-Type}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_1_1AliHLTDataSegment_r0} + + +the data type of this segment + +Definition at line 217 of file Ali\-HLTData\-Buffer.h. + +Referenced by Ali\-HLTData\-Buffer::Set\-Segments().\index{AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}!fSegmentOffset@{fSegmentOffset}} +\index{fSegmentOffset@{fSegmentOffset}!AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::f\-Segment\-Offset}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_1_1AliHLTDataSegment_r1} + + +offset in byte within the data buffer + +Definition at line 219 of file Ali\-HLTData\-Buffer.h. + +Referenced by Ali\-HLTData\-Buffer::Set\-Segments().\index{AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}!fSegmentSize@{fSegmentSize}} +\index{fSegmentSize@{fSegmentSize}!AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::f\-Segment\-Size}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_1_1AliHLTDataSegment_r2} + + +size of the actual content + +Definition at line 221 of file Ali\-HLTData\-Buffer.h. + +Referenced by Ali\-HLTData\-Buffer::Set\-Segments().\index{AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}!fSpecification@{fSpecification}} +\index{fSpecification@{fSpecification}!AliHLTDataBuffer::AliHLTDataSegment@{Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTData\-Buffer::Ali\-HLTData\-Segment::f\-Specification}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_1_1AliHLTDataSegment_r3} + + +data specification + +Definition at line 223 of file Ali\-HLTData\-Buffer.h. + +Referenced by Ali\-HLTData\-Buffer::Set\-Segments(). + +The documentation for this class was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Buffer.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTDataBuffer_1_1AliHLTRawBuffer.tex b/HLT/PHOS/latex/classAliHLTDataBuffer_1_1AliHLTRawBuffer.tex new file mode 100644 index 00000000000..8174ac3b3ce --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTDataBuffer_1_1AliHLTRawBuffer.tex @@ -0,0 +1,139 @@ +\section{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer Class Reference} +\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer}\index{AliHLTDataBuffer::AliHLTRawBuffer@{AliHLTDataBuffer::AliHLTRawBuffer}} +{\tt \#include $<$Ali\-HLTData\-Buffer.h$>$} + + + +\subsection{Detailed Description} +Descriptor of the raw data buffer which can host several segments. + + + +Definition at line 230 of file Ali\-HLTData\-Buffer.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTRaw\-Buffer} () +\item +{\bf Ali\-HLTRaw\-Buffer} (const {\bf Ali\-HLTRaw\-Buffer} \&) +\item +{\bf Ali\-HLTRaw\-Buffer} \& {\bf operator=} (const {\bf Ali\-HLTRaw\-Buffer} \&) +\item +virtual {\bf $\sim$Ali\-HLTRaw\-Buffer} () +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Size} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Total\-Size} +\item +void $\ast$ {\bf f\-Ptr} +\end{CompactItemize} +\subsection*{Friends} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTData\-Buffer} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}!AliHLTRawBuffer@{AliHLTRawBuffer}} +\index{AliHLTRawBuffer@{AliHLTRawBuffer}!AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::Ali\-HLTRaw\-Buffer ()\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer_a0} + + +standard constructor + +Definition at line 234 of file Ali\-HLTData\-Buffer.h. + +\footnotesize\begin{verbatim}234 : fSize(0), fTotalSize(0), fPtr(NULL) {} +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}!AliHLTRawBuffer@{AliHLTRawBuffer}} +\index{AliHLTRawBuffer@{AliHLTRawBuffer}!AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::Ali\-HLTRaw\-Buffer (const {\bf Ali\-HLTRaw\-Buffer} \&)\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer_a1} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 236 of file Ali\-HLTData\-Buffer.h. + +\footnotesize\begin{verbatim}236 : fSize(0), fTotalSize(0), fPtr(NULL) {} +\end{verbatim}\normalsize + + +\index{AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}!~AliHLTRawBuffer@{$\sim$AliHLTRawBuffer}} +\index{~AliHLTRawBuffer@{$\sim$AliHLTRawBuffer}!AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::$\sim${\bf Ali\-HLTRaw\-Buffer} ()\hspace{0.3cm}{\tt [inline, virtual]}}\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer_a3} + + +standard destructor + +Definition at line 240 of file Ali\-HLTData\-Buffer.h. + +\footnotesize\begin{verbatim}240 {} +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTRaw\-Buffer}\& Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::operator= (const {\bf Ali\-HLTRaw\-Buffer} \&)\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer_a2} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 238 of file Ali\-HLTData\-Buffer.h. + +\footnotesize\begin{verbatim}238 {return *this;} +\end{verbatim}\normalsize + + + + +\subsection{Friends And Related Function Documentation} +\index{AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}!AliHLTDataBuffer@{AliHLTDataBuffer}} +\index{AliHLTDataBuffer@{AliHLTDataBuffer}!AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}friend class {\bf Ali\-HLTData\-Buffer}\hspace{0.3cm}{\tt [friend]}}\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer_n0} + + + + +Definition at line 231 of file Ali\-HLTData\-Buffer.h. + +\subsection{Member Data Documentation} +\index{AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}!fPtr@{fPtr}} +\index{fPtr@{fPtr}!AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ {\bf Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Ptr}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer_r2} + + +the buffer + +Definition at line 247 of file Ali\-HLTData\-Buffer.h. + +Referenced by Ali\-HLTData\-Buffer::Create\-Raw\-Buffer(), Ali\-HLTData\-Buffer::Get\-Target\-Buffer(), Ali\-HLTData\-Buffer::Set\-Segments(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}!fSize@{fSize}} +\index{fSize@{fSize}!AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Size}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer_r0} + + +size of the currently occupied partition of the buffer + +Definition at line 243 of file Ali\-HLTData\-Buffer.h. + +Referenced by Ali\-HLTData\-Buffer::Create\-Raw\-Buffer(), and Ali\-HLTData\-Buffer::Set\-Segments().\index{AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}!fTotalSize@{fTotalSize}} +\index{fTotalSize@{fTotalSize}!AliHLTDataBuffer::AliHLTRawBuffer@{Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTData\-Buffer::Ali\-HLTRaw\-Buffer::f\-Total\-Size}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTDataBuffer_1_1AliHLTRawBuffer_r1} + + +total size of the buffer, including safety margin + +Definition at line 245 of file Ali\-HLTData\-Buffer.h. + +Referenced by Ali\-HLTData\-Buffer::Create\-Raw\-Buffer(). + +The documentation for this class was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Buffer.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTDataSink.eps b/HLT/PHOS/latex/classAliHLTDataSink.eps new file mode 100644 index 00000000000..6d742138121 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTDataSink.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 547.945 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.9125 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTDataSink) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +(AliHLTOfflineDataSink) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTDataSink) 0 1 box + (AliHLTComponent) 0 2 box + (AliHLTLogging) 0 3 box + (AliHLTOfflineDataSink) 0 0 box + +% ----- relations ----- + +solid +0 0 1 out +solid +1 0 2 in +solid +0 0 2 out +solid +1 0 3 in +solid +1 0 0.25 out +solid +0 0 0.75 in diff --git a/HLT/PHOS/latex/classAliHLTDataSink.tex b/HLT/PHOS/latex/classAliHLTDataSink.tex new file mode 100644 index 00000000000..99c668fd830 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTDataSink.tex @@ -0,0 +1,210 @@ +\section{Ali\-HLTData\-Sink Class Reference} +\label{classAliHLTDataSink}\index{AliHLTDataSink@{AliHLTDataSink}} +{\tt \#include $<$Ali\-HLTData\-Sink.h$>$} + +Inheritance diagram for Ali\-HLTData\-Sink::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4cm]{classAliHLTDataSink} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Base class of HLT data sink components. The class provides a common interface for the implementation of HLT data sink components. The child class must implement the functions:\begin{itemize} +\item {\bf Do\-Init}{\rm (p.\,\pageref{classAliHLTComponent_b5})} (optional)\item {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTComponent_b6})} (optional)\item {\bf Dump\-Event}{\rm (p.\,\pageref{classAliHLTDataSink_d0})}\item {\bf Get\-Component\-ID}{\rm (p.\,\pageref{classAliHLTComponent_a9})}\item {\bf Get\-Input\-Data\-Types}{\rm (p.\,\pageref{classAliHLTComponent_a10})}\item {\bf Spawn}{\rm (p.\,\pageref{classAliHLTComponent_a13})} \end{itemize} + + + + +Definition at line 32 of file Ali\-HLTData\-Sink.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTData\-Sink} () +\item +virtual {\bf $\sim$Ali\-HLTData\-Sink} () +\item +int {\bf Do\-Processing} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\&edd) +\item +{\bf TComponent\-Type} {\bf Get\-Component\-Type} () +\item +{\bf Ali\-HLTComponent\-Data\-Type} {\bf Get\-Output\-Data\-Type} () +\item +void {\bf Get\-Output\-Data\-Size} (unsigned long \&const\-Base, double \&input\-Multiplier) +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +virtual int {\bf Dump\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data) +\item +virtual int {\bf Dump\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data) +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTDataSink@{Ali\-HLTData\-Sink}!AliHLTDataSink@{AliHLTDataSink}} +\index{AliHLTDataSink@{AliHLTDataSink}!AliHLTDataSink@{Ali\-HLTData\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Sink::Ali\-HLTData\-Sink ()}\label{classAliHLTDataSink_a0} + + +standard constructor \index{AliHLTDataSink@{Ali\-HLTData\-Sink}!~AliHLTDataSink@{$\sim$AliHLTDataSink}} +\index{~AliHLTDataSink@{$\sim$AliHLTDataSink}!AliHLTDataSink@{Ali\-HLTData\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Sink::$\sim${\bf Ali\-HLTData\-Sink} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTDataSink_a1} + + +standard destructor + +Definition at line 41 of file Ali\-HLTData\-Sink.cxx. + +\footnotesize\begin{verbatim}42 { +43 // see header file for class documentation +44 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTDataSink@{Ali\-HLTData\-Sink}!DoProcessing@{DoProcessing}} +\index{DoProcessing@{DoProcessing}!AliHLTDataSink@{Ali\-HLTData\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Sink::Do\-Processing (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks}, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\& {\em edd})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTDataSink_a2} + + +Event processing function. The method is called by the framework to process one event. After preparation of data structures. The call is redirected to Dump\-Event. \begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a7})}. + +Definition at line 63 of file Ali\-HLTData\-Sink.cxx. + +References Dump\-Event(). + +\footnotesize\begin{verbatim}70 { +71 // see header file for class documentation +72 int iResult=0; +73 if (outputPtr==NULL +74 && size==0 +75 && edd==NULL) { +76 // this is currently just to get rid of the warning "unused parameter" +77 } +78 outputBlocks.clear(); +79 iResult=DumpEvent(evtData, blocks, trigData); +80 return iResult; +81 } +\end{verbatim}\normalsize + + +\index{AliHLTDataSink@{Ali\-HLTData\-Sink}!DumpEvent@{DumpEvent}} +\index{DumpEvent@{DumpEvent}!AliHLTDataSink@{Ali\-HLTData\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Sink::Dump\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data})\hspace{0.3cm}{\tt [private, virtual]}}\label{classAliHLTDataSink_d1} + + +The high-level data processing method. This is the default processing method; the method is called if no low level {\bf Dump\-Event}{\rm (p.\,\pageref{classAliHLTDataSink_d0})} method is overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em trig\-Data}]trigger data structure \end{description} +\end{Desc} + + +Definition at line 92 of file Ali\-HLTData\-Sink.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}93 { +94 HLTFatal("no processing method implemented"); +95 return -ENOSYS; +96 } +\end{verbatim}\normalsize + + +\index{AliHLTDataSink@{Ali\-HLTData\-Sink}!DumpEvent@{DumpEvent}} +\index{DumpEvent@{DumpEvent}!AliHLTDataSink@{Ali\-HLTData\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Sink::Dump\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data})\hspace{0.3cm}{\tt [private, virtual]}}\label{classAliHLTDataSink_d0} + + +The low-level data processing method for the component. This is the custom processing method and can be overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em blocks}]input data block descriptors \item[{\em trig\-Data}]trigger data structure \end{description} +\end{Desc} + + +Definition at line 83 of file Ali\-HLTData\-Sink.cxx. + +Referenced by Do\-Processing(). + +\footnotesize\begin{verbatim}86 { +87 // we just forward to the high level method, all other parameters already +88 // have been stored internally +89 return DumpEvent(evtData, trigData); +90 } +\end{verbatim}\normalsize + + +\index{AliHLTDataSink@{Ali\-HLTData\-Sink}!GetComponentType@{GetComponentType}} +\index{GetComponentType@{GetComponentType}!AliHLTDataSink@{Ali\-HLTData\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf TComponent\-Type} Ali\-HLTData\-Sink::Get\-Component\-Type ()\hspace{0.3cm}{\tt [inline, virtual]}}\label{classAliHLTDataSink_a3} + + +Return {\bf Ali\-HLTComponent::k\-Sink}{\rm (p.\,\pageref{classAliHLTComponent_w9w3})} type as component type. \begin{Desc} +\item[Returns:]component type id \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a8})}. + +Definition at line 59 of file Ali\-HLTData\-Sink.h. + +\footnotesize\begin{verbatim}59 { return AliHLTComponent::kSink;} +\end{verbatim}\normalsize + + +\index{AliHLTDataSink@{Ali\-HLTData\-Sink}!GetOutputDataSize@{GetOutputDataSize}} +\index{GetOutputDataSize@{GetOutputDataSize}!AliHLTDataSink@{Ali\-HLTData\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTData\-Sink::Get\-Output\-Data\-Size (unsigned long \& {\em const\-Base}, double \& {\em input\-Multiplier})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTDataSink_a5} + + +Default implementation for all data sinks. There is no output data. + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a12})}. + +Definition at line 56 of file Ali\-HLTData\-Sink.cxx. + +\footnotesize\begin{verbatim}57 { +58 // see header file for class documentation +59 constBase=0; +60 inputMultiplier=0; +61 } +\end{verbatim}\normalsize + + +\index{AliHLTDataSink@{Ali\-HLTData\-Sink}!GetOutputDataType@{GetOutputDataType}} +\index{GetOutputDataType@{GetOutputDataType}!AliHLTDataSink@{Ali\-HLTData\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} Ali\-HLTData\-Sink::Get\-Output\-Data\-Type ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTDataSink_a4} + + +Default implementation for all data sinks. There are no output data types. + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a11})}. + +Definition at line 46 of file Ali\-HLTData\-Sink.cxx. + +References k\-Ali\-HLTVoid\-Data\-Origin. + +\footnotesize\begin{verbatim}47 { +48 // see header file for class documentation +49 AliHLTComponentDataType dt = +50 {sizeof(AliHLTComponentDataType), +51 kAliHLTVoidDataTypeID, +52 kAliHLTVoidDataOrigin}; +53 return dt; +54 } +\end{verbatim}\normalsize + + + + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Sink.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Sink.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTDataSource.eps b/HLT/PHOS/latex/classAliHLTDataSource.eps new file mode 100644 index 00000000000..d80df1106dc --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTDataSource.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 490.798 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.01875 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTDataSource) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +(AliHLTOfflineDataSource) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTDataSource) 0 1 box + (AliHLTComponent) 0 2 box + (AliHLTLogging) 0 3 box + (AliHLTOfflineDataSource) 0 0 box + +% ----- relations ----- + +solid +0 0 1 out +solid +1 0 2 in +solid +0 0 2 out +solid +1 0 3 in +solid +1 0 0.25 out +solid +0 0 0.75 in diff --git a/HLT/PHOS/latex/classAliHLTDataSource.tex b/HLT/PHOS/latex/classAliHLTDataSource.tex new file mode 100644 index 00000000000..b25553bed4e --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTDataSource.tex @@ -0,0 +1,189 @@ +\section{Ali\-HLTData\-Source Class Reference} +\label{classAliHLTDataSource}\index{AliHLTDataSource@{AliHLTDataSource}} +{\tt \#include $<$Ali\-HLTData\-Source.h$>$} + +Inheritance diagram for Ali\-HLTData\-Source::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4cm]{classAliHLTDataSource} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Base class of HLT data source components. The class provides a common interface for the implementation of HLT data source components. The child class must implement the functions:\begin{itemize} +\item {\bf Do\-Init}{\rm (p.\,\pageref{classAliHLTComponent_b5})} (optional)\item {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTComponent_b6})} (optional)\item {\bf Get\-Event}{\rm (p.\,\pageref{classAliHLTDataSource_d0})}\item {\bf Get\-Component\-ID}{\rm (p.\,\pageref{classAliHLTComponent_a9})}\item {\bf Get\-Output\-Data\-Type}{\rm (p.\,\pageref{classAliHLTComponent_a11})}\item {\bf Get\-Output\-Data\-Size}{\rm (p.\,\pageref{classAliHLTComponent_a12})}\item {\bf Spawn}{\rm (p.\,\pageref{classAliHLTComponent_a13})} \end{itemize} + + + + +Definition at line 33 of file Ali\-HLTData\-Source.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTData\-Source} () +\item +virtual {\bf $\sim$Ali\-HLTData\-Source} () +\item +int {\bf Do\-Processing} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\&edd) +\item +{\bf TComponent\-Type} {\bf Get\-Component\-Type} () +\item +void {\bf Get\-Input\-Data\-Types} (vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&list) +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +virtual int {\bf Get\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks) +\item +virtual int {\bf Get\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data) +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTDataSource@{Ali\-HLTData\-Source}!AliHLTDataSource@{AliHLTDataSource}} +\index{AliHLTDataSource@{AliHLTDataSource}!AliHLTDataSource@{Ali\-HLTData\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Source::Ali\-HLTData\-Source ()}\label{classAliHLTDataSource_a0} + + +standard constructor \index{AliHLTDataSource@{Ali\-HLTData\-Source}!~AliHLTDataSource@{$\sim$AliHLTDataSource}} +\index{~AliHLTDataSource@{$\sim$AliHLTDataSource}!AliHLTDataSource@{Ali\-HLTData\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTData\-Source::$\sim${\bf Ali\-HLTData\-Source} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTDataSource_a1} + + +standard destructor + +Definition at line 41 of file Ali\-HLTData\-Source.cxx. + +\footnotesize\begin{verbatim}42 { +43 // see header file for class documentation +44 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTDataSource@{Ali\-HLTData\-Source}!DoProcessing@{DoProcessing}} +\index{DoProcessing@{DoProcessing}!AliHLTDataSource@{Ali\-HLTData\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Source::Do\-Processing (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks}, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\& {\em edd})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTDataSource_a2} + + +Event processing function. The method is called by the framework to process one event. After preparation of data structures. The call is redirected to Get\-Event. \begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a7})}. + +Definition at line 53 of file Ali\-HLTData\-Source.cxx. + +References Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, Ali\-HLTComponent::Get\-Component\-ID(), Get\-Event(), HLTDebug, and HLTWarning. + +\footnotesize\begin{verbatim}60 { +61 // see header file for class documentation +62 int iResult=0; +63 if (blocks) { +64 // this is currently just to get rid of the warning "unused parameter" +65 } +66 if (evtData.fBlockCnt > 0) { +67 HLTWarning("Data source component skips input data blocks"); +68 } +69 iResult=GetEvent(evtData, trigData, outputPtr, size, outputBlocks); +70 HLTDebug("component %s (%p) GetEvent finished (%d)", GetComponentID(), this, iResult); +71 edd = NULL; +72 return iResult; +73 } +\end{verbatim}\normalsize + + +\index{AliHLTDataSource@{Ali\-HLTData\-Source}!GetComponentType@{GetComponentType}} +\index{GetComponentType@{GetComponentType}!AliHLTDataSource@{Ali\-HLTData\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf TComponent\-Type} Ali\-HLTData\-Source::Get\-Component\-Type ()\hspace{0.3cm}{\tt [inline, virtual]}}\label{classAliHLTDataSource_a3} + + +Return {\bf Ali\-HLTComponent::k\-Source}{\rm (p.\,\pageref{classAliHLTComponent_w9w1})} type as component type. \begin{Desc} +\item[Returns:]component type id \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a8})}. + +Definition at line 60 of file Ali\-HLTData\-Source.h. + +\footnotesize\begin{verbatim}60 { return AliHLTComponent::kSource;} +\end{verbatim}\normalsize + + +\index{AliHLTDataSource@{Ali\-HLTData\-Source}!GetEvent@{GetEvent}} +\index{GetEvent@{GetEvent}!AliHLTDataSource@{Ali\-HLTData\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Source::Get\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data})\hspace{0.3cm}{\tt [private, virtual]}}\label{classAliHLTDataSource_d1} + + +The high-level data processing method. This is the default processing method; the method is called if no low level {\bf Get\-Event}{\rm (p.\,\pageref{classAliHLTDataSource_d0})} method is overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em trig\-Data}]trigger data structure \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 86 of file Ali\-HLTData\-Source.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}87 { +88 HLTFatal("no processing method implemented"); +89 return -ENOSYS; +90 } +\end{verbatim}\normalsize + + +\index{AliHLTDataSource@{Ali\-HLTData\-Source}!GetEvent@{GetEvent}} +\index{GetEvent@{GetEvent}!AliHLTDataSource@{Ali\-HLTData\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTData\-Source::Get\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks})\hspace{0.3cm}{\tt [private, virtual]}}\label{classAliHLTDataSource_d0} + + +The low-level data processing method for the component. This is the custom processing method and can be overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em trig\-Data}]trigger data structure \item[{\em output\-Ptr}]pointer to target buffer \item[{\em size}]{\em input\/}: size of target buffer {\em output\/}:size of produced data \item[{\em output\-Blocks}]list to receive output block descriptors \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 75 of file Ali\-HLTData\-Source.cxx. + +Referenced by Do\-Processing(). + +\footnotesize\begin{verbatim}80 { +81 // we just forward to the high level method, all other parameters already +82 // have been stored internally +83 return GetEvent(evtData, trigData); +84 } +\end{verbatim}\normalsize + + +\index{AliHLTDataSource@{Ali\-HLTData\-Source}!GetInputDataTypes@{GetInputDataTypes}} +\index{GetInputDataTypes@{GetInputDataTypes}!AliHLTDataSource@{Ali\-HLTData\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTData\-Source::Get\-Input\-Data\-Types (vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \& {\em list})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTDataSource_a4} + + +Default implementation for all data sources. There are no input data types. + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a10})}. + +Definition at line 46 of file Ali\-HLTData\-Source.cxx. + +\footnotesize\begin{verbatim}47 { +48 // see header file for class documentation +49 list.clear(); // there are no input data types +50 } +\end{verbatim}\normalsize + + + + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Source.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Source.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTKeyword.tex b/HLT/PHOS/latex/classAliHLTKeyword.tex new file mode 100644 index 00000000000..698d70fed24 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTKeyword.tex @@ -0,0 +1,151 @@ +\section{Ali\-HLTKeyword Class Reference} +\label{classAliHLTKeyword}\index{AliHLTKeyword@{AliHLTKeyword}} +{\tt \#include $<$Ali\-HLTLogging.h$>$} + +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTKeyword} () +\item +{\bf Ali\-HLTKeyword} ({\bf Ali\-HLTLogging} $\ast$parent, const char $\ast$keyword) +\item +{\bf Ali\-HLTKeyword} (const {\bf Ali\-HLTKeyword} \&kw) +\item +{\bf Ali\-HLTKeyword} \& {\bf operator=} (const {\bf Ali\-HLTKeyword} \&kw) +\item +{\bf $\sim$Ali\-HLTKeyword} () +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTLogging} $\ast$ {\bf fp\-Parent} +\item +const char $\ast$ {\bf fp\-Original} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTKeyword@{Ali\-HLTKeyword}!AliHLTKeyword@{AliHLTKeyword}} +\index{AliHLTKeyword@{AliHLTKeyword}!AliHLTKeyword@{Ali\-HLTKeyword}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTKeyword::Ali\-HLTKeyword ()\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTKeyword_a0} + + + + +Definition at line 228 of file Ali\-HLTLogging.h. + +\footnotesize\begin{verbatim}229 : +230 fpParent(NULL), +231 fpOriginal(NULL) +232 { +233 } + +\end{verbatim}\normalsize + + +\index{AliHLTKeyword@{Ali\-HLTKeyword}!AliHLTKeyword@{AliHLTKeyword}} +\index{AliHLTKeyword@{AliHLTKeyword}!AliHLTKeyword@{Ali\-HLTKeyword}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTKeyword::Ali\-HLTKeyword ({\bf Ali\-HLTLogging} $\ast$ {\em parent}, const char $\ast$ {\em keyword})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTKeyword_a1} + + + + +Definition at line 235 of file Ali\-HLTLogging.h. + +\footnotesize\begin{verbatim}236 : +237 fpParent(parent), +238 fpOriginal(NULL) +239 { +240 if (parent) { +241 fpOriginal=fpParent->SetKeyword(keyword); +242 } +243 } + +\end{verbatim}\normalsize + + +\index{AliHLTKeyword@{Ali\-HLTKeyword}!AliHLTKeyword@{AliHLTKeyword}} +\index{AliHLTKeyword@{AliHLTKeyword}!AliHLTKeyword@{Ali\-HLTKeyword}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTKeyword::Ali\-HLTKeyword (const {\bf Ali\-HLTKeyword} \& {\em kw})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTKeyword_a2} + + + + +Definition at line 245 of file Ali\-HLTLogging.h. + +\footnotesize\begin{verbatim}246 : +247 fpParent(kw.fpParent), +248 fpOriginal(kw.fpOriginal) +249 { +250 } + +\end{verbatim}\normalsize + + +\index{AliHLTKeyword@{Ali\-HLTKeyword}!~AliHLTKeyword@{$\sim$AliHLTKeyword}} +\index{~AliHLTKeyword@{$\sim$AliHLTKeyword}!AliHLTKeyword@{Ali\-HLTKeyword}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTKeyword::$\sim${\bf Ali\-HLTKeyword} ()\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTKeyword_a4} + + + + +Definition at line 259 of file Ali\-HLTLogging.h. + +\footnotesize\begin{verbatim}260 { +261 if (fpParent) { +262 fpParent->SetKeyword(fpOriginal); +263 } +264 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTKeyword@{Ali\-HLTKeyword}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTKeyword@{Ali\-HLTKeyword}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTKeyword}\& Ali\-HLTKeyword::operator= (const {\bf Ali\-HLTKeyword} \& {\em kw})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTKeyword_a3} + + + + +Definition at line 252 of file Ali\-HLTLogging.h. + +References fp\-Original, and fp\-Parent. + +\footnotesize\begin{verbatim}253 { +254 fpParent=kw.fpParent; +255 fpOriginal=kw.fpOriginal; +256 return *this; +257 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTKeyword@{Ali\-HLTKeyword}!fpOriginal@{fpOriginal}} +\index{fpOriginal@{fpOriginal}!AliHLTKeyword@{Ali\-HLTKeyword}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ {\bf Ali\-HLTKeyword::fp\-Original}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTKeyword_r1} + + +transient + + + +Definition at line 268 of file Ali\-HLTLogging.h. + +Referenced by operator=().\index{AliHLTKeyword@{Ali\-HLTKeyword}!fpParent@{fpParent}} +\index{fpParent@{fpParent}!AliHLTKeyword@{Ali\-HLTKeyword}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTLogging}$\ast$ {\bf Ali\-HLTKeyword::fp\-Parent}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTKeyword_r0} + + + + +Definition at line 267 of file Ali\-HLTLogging.h. + +Referenced by operator=(). + +The documentation for this class was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTLogging.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTLogging.eps b/HLT/PHOS/latex/classAliHLTLogging.eps new file mode 100644 index 00000000000..f0e066d5b44 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTLogging.eps @@ -0,0 +1,236 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 614.525 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.813636 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 11 def +/cols 2 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTLogging) cw +(AliHLTComponent) cw +(AliHLTComponentHandler) cw +(AliHLTConfiguration) cw +(AliHLTConfigurationHandler) cw +(AliHLTConsumerDescriptor) cw +(AliHLTDataBuffer) cw +(AliHLTMessage) cw +(AliHLTModuleAgent) cw +(AliHLTSystem) cw +(AliHLTTask) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTLogging) 0 10 box + (AliHLTComponent) 1 9 box +1 9 mark + (AliHLTComponentHandler) 1 8 box + (AliHLTConfiguration) 1 7 box + (AliHLTConfigurationHandler) 1 6 box + (AliHLTConsumerDescriptor) 1 5 box + (AliHLTDataBuffer) 1 4 box + (AliHLTMessage) 1 3 box + (AliHLTModuleAgent) 1 2 box + (AliHLTSystem) 1 1 box + (AliHLTTask) 1 0 box + +% ----- relations ----- + +solid +1 0 9.25 out +solid +0 0 9.5 hedge +solid +0 0 8.5 hedge +solid +0 0 7.5 hedge +solid +0 0 6.5 hedge +solid +0 0 5.5 hedge +solid +0 0 4.5 hedge +solid +0 0 3.5 hedge +solid +0 0 2.5 hedge +solid +0 0 1.5 hedge +solid +0 0 0.5 hedge +solid +0 10 0.5 vedge diff --git a/HLT/PHOS/latex/classAliHLTLogging.tex b/HLT/PHOS/latex/classAliHLTLogging.tex new file mode 100644 index 00000000000..24c178d4e6c --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTLogging.tex @@ -0,0 +1,764 @@ +\section{Ali\-HLTLogging Class Reference} +\label{classAliHLTLogging}\index{AliHLTLogging@{AliHLTLogging}} +{\tt \#include $<$Ali\-HLTLogging.h$>$} + +Inheritance diagram for Ali\-HLTLogging::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=11cm]{classAliHLTLogging} +\end{center} +\end{figure} +\subsection*{Public Types} +\begin{CompactItemize} +\item +typedef int($\ast$ {\bf Ali\-HLTDynamic\-Message} )({\bf Ali\-HLTComponent\-Log\-Severity} severity, const char $\ast$origin\-Class, const char $\ast$origin\-Func, const char $\ast$file, int line, const char $\ast$message) +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +typedef int($\ast$ {\bf Init\-Ali\-Dynamic\-Message\-Callback} )() +\end{CompactItemize} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTLogging} () +\item +{\bf Ali\-HLTLogging} (const {\bf Ali\-HLTLogging} \&) +\item +{\bf Ali\-HLTLogging} \& {\bf operator=} (const {\bf Ali\-HLTLogging} \&) +\item +virtual {\bf $\sim$Ali\-HLTLogging} () +\item +void {\bf Set\-Default\-Keyword} (const char $\ast$keyword) +\item +const char $\ast$ {\bf Set\-Keyword} (const char $\ast$keyword) +\item +const char $\ast$ {\bf Get\-Keyword} () const +\item +int {\bf Logging} ({\bf Ali\-HLTComponent\-Log\-Severity} severity, const char $\ast$origin, const char $\ast$keyword, const char $\ast$message,...) +\item +int {\bf Logging\-Varargs} ({\bf Ali\-HLTComponent\-Log\-Severity} severity, const char $\ast$origin\-Class, const char $\ast$origin\-Func, const char $\ast$file, int line,...) const +\item +int {\bf Check\-Filter} ({\bf Ali\-HLTComponent\-Log\-Severity} severity) const +\item +void {\bf Set\-Local\-Logging\-Level} ({\bf Ali\-HLTComponent\-Log\-Severity} level) +\item +{\bf Ali\-HLTComponent\-Log\-Severity} {\bf Get\-Local\-Logging\-Level} () +\item +virtual void $\ast$ {\bf Get\-Parameter} () const +\item +void {\bf Switch\-Ali\-Log} (int sw) +\end{CompactItemize} +\subsection*{Static Public Member Functions} +\begin{CompactItemize} +\item +int {\bf Init} ({\bf Ali\-HLTfct\-Logging} p\-Fun) +\item +int {\bf Init\-Ali\-Log\-Trap} ({\bf Ali\-HLTComponent\-Handler} $\ast$p\-Handler) +\item +void {\bf Set\-Global\-Logging\-Level} ({\bf Ali\-HLTComponent\-Log\-Severity} level) +\item +{\bf Ali\-HLTComponent\-Log\-Severity} {\bf Get\-Global\-Logging\-Level} () +\item +int {\bf Message} (void $\ast$param, {\bf Ali\-HLTComponent\-Log\-Severity} severity, const char $\ast$origin, const char $\ast$keyword, const char $\ast$message) +\item +const char $\ast$ {\bf Build\-Log\-String} (const char $\ast$format, va\_\-list ap) +\end{CompactItemize} +\subsection*{Static Public Attributes} +\begin{CompactItemize} +\item +ostringstream {\bf fg\-Logstr} +\end{CompactItemize} +\subsection*{Static Protected Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTDynamic\-Message} {\bf fg\-Ali\-Logging\-Func} = NULL +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent\-Log\-Severity} {\bf f\-Local\-Log\-Filter} +\item +const char $\ast$ {\bf fp\-Default\-Keyword} +\item +const char $\ast$ {\bf fp\-Current\-Keyword} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent\-Log\-Severity} {\bf fg\-Global\-Log\-Filter} = k\-HLTLog\-All +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +{\bf Ali\-HLTfct\-Logging} {\bf fg\-Logging\-Func} = NULL +\item +int {\bf fg\-Use\-Ali\-Log} = 1 +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +TArray\-C {\bf fg\-Ali\-HLTLogging\-Target} +\item +const int {\bf fgk\-ALIHLTLOGGINGMAXBUFFERSIZE} = 10000 +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} + + +\subsection{Member Typedef Documentation} +\index{AliHLTLogging@{Ali\-HLTLogging}!AliHLTDynamicMessage@{AliHLTDynamicMessage}} +\index{AliHLTDynamicMessage@{AliHLTDynamicMessage}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ {\bf Ali\-HLTLogging::Ali\-HLTDynamic\-Message})({\bf Ali\-HLTComponent\-Log\-Severity} severity, const char $\ast$origin\-Class, const char $\ast$origin\-Func, const char $\ast$file, int line, const char $\ast$message)}\label{classAliHLTLogging_w0} + + +transient + +The message function for dynamic use. In order to avoid dependencies on Ali\-Root libraries, lib\-HLTbase loads the library dynamically and looks for the symbol. + +Definition at line 178 of file Ali\-HLTLogging.h.\index{AliHLTLogging@{Ali\-HLTLogging}!InitAliDynamicMessageCallback@{InitAliDynamicMessageCallback}} +\index{InitAliDynamicMessageCallback@{InitAliDynamicMessageCallback}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ {\bf Ali\-HLTLogging::Init\-Ali\-Dynamic\-Message\-Callback})()}\label{classAliHLTLogging_w1} + + +The init function of the message callback for dynamic use. In order to avoid dependencies on Ali\-Root libraries, lib\-HLTbase loads the library dynamically and looks for the symbol. + +Definition at line 189 of file Ali\-HLTLogging.h. + +Referenced by Init\-Ali\-Log\-Trap(). + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTLogging@{Ali\-HLTLogging}!AliHLTLogging@{AliHLTLogging}} +\index{AliHLTLogging@{AliHLTLogging}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTLogging::Ali\-HLTLogging ()}\label{classAliHLTLogging_a0} + + + + +Definition at line 41 of file Ali\-HLTLogging.cxx. + +References k\-HLTLog\-All. + +\footnotesize\begin{verbatim}42 : +43 //fLocalLogFilter(kHLTLogDefault), +44 fLocalLogFilter(kHLTLogAll), +45 fpDefaultKeyword(NULL), +46 fpCurrentKeyword(NULL) +47 { +48 // see header file for class documentation +49 // or +50 // refer to README to build package +51 // or +52 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt +53 } + +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!AliHLTLogging@{AliHLTLogging}} +\index{AliHLTLogging@{AliHLTLogging}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTLogging::Ali\-HLTLogging (const {\bf Ali\-HLTLogging} \&)}\label{classAliHLTLogging_a1} + + + + +Definition at line 55 of file Ali\-HLTLogging.cxx. + +References HLTFatal, and k\-HLTLog\-All. + +\footnotesize\begin{verbatim}56 : +57 fLocalLogFilter(kHLTLogAll), +58 fpDefaultKeyword(NULL), +59 fpCurrentKeyword(NULL) +60 { +61 // see header file for class documentation +62 HLTFatal("copy constructor untested"); +63 } + +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!~AliHLTLogging@{$\sim$AliHLTLogging}} +\index{~AliHLTLogging@{$\sim$AliHLTLogging}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTLogging::$\sim${\bf Ali\-HLTLogging} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTLogging_a3} + + + + +Definition at line 78 of file Ali\-HLTLogging.cxx. + +\footnotesize\begin{verbatim}79 { +80 // see header file for class documentation +81 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTLogging@{Ali\-HLTLogging}!BuildLogString@{BuildLogString}} +\index{BuildLogString@{BuildLogString}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTLogging::Build\-Log\-String (const char $\ast$ {\em format}, va\_\-list {\em ap})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTLogging_e5} + + +Build the log string from format specifier and variadac arguments \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em format}]format string of printf style \item[{\em ap}]opened and initialized argument list \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]const char string with the formatted message \end{Desc} + + +Definition at line 200 of file Ali\-HLTLogging.cxx. + +References fg\-Ali\-HLTLogging\-Target. + +Referenced by Logging(), and Logging\-Varargs(). + +\footnotesize\begin{verbatim}201 { +202 // see header file for class documentation +203 +204 int iResult=0; +205 #ifdef R__VA_COPY +206 va_list bap; +207 R__VA_COPY(bap, ap); +208 #endif //R__VA_COPY +209 +210 // take the first argument from the list as format string if no +211 // format was given +212 const char* fmt = format; +213 if (fmt==NULL) fmt=va_arg(ap, const char*); +214 +215 fgAliHLTLoggingTarget[0]=0; +216 while (fmt!=NULL) { +217 iResult=vsnprintf(fgAliHLTLoggingTarget.GetArray(), fgAliHLTLoggingTarget.GetSize(), fmt, ap); +218 if (iResult==-1) +219 // for compatibility with older version of vsnprintf +220 iResult=fgAliHLTLoggingTarget.GetSize()*2; +221 else if (iResult=fgkALIHLTLOGGINGMAXBUFFERSIZE) +226 { +227 fgAliHLTLoggingTarget[fgAliHLTLoggingTarget.GetSize()-1]=0; +228 break; +229 } +230 +231 // check limitation and grow the buffer +232 if (iResult>fgkALIHLTLOGGINGMAXBUFFERSIZE) iResult=fgkALIHLTLOGGINGMAXBUFFERSIZE; +233 fgAliHLTLoggingTarget.Set(iResult+1); +234 +235 // copy the original list and skip the first argument if this was the format string +236 #ifdef R__VA_COPY +237 va_end(ap); +238 R__VA_COPY(ap, bap); +239 #else +240 fgAliHLTLoggingTarget[fgAliHLTLoggingTarget.GetSize()-1]=0; +241 break; +242 #endif //R__VA_COPY +243 if (format==NULL) va_arg(ap, const char*); +244 } +245 #ifdef R__VA_COPY +246 va_end(bap); +247 #endif //R__VA_COPY +248 +249 return fgAliHLTLoggingTarget.GetArray(); +250 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!CheckFilter@{CheckFilter}} +\index{CheckFilter@{CheckFilter}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTLogging::Check\-Filter ({\bf Ali\-HLTComponent\-Log\-Severity} {\em severity}) const}\label{classAliHLTLogging_a9} + + +Apply filter \begin{Desc} +\item[Returns:]1 if message should pass \end{Desc} + + +Definition at line 311 of file Ali\-HLTLogging.cxx. + +References k\-HLTLog\-None. + +Referenced by Ali\-HLTSystem::Configure(), Logging(), and Logging\-Varargs(). + +\footnotesize\begin{verbatim}312 { +313 // see header file for class documentation +314 +315 int iResult=severity==kHLTLogNone || (severity&fgGlobalLogFilter)>0 && (severity&fLocalLogFilter)>0; +316 return iResult; +317 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!GetGlobalLoggingLevel@{GetGlobalLoggingLevel}} +\index{GetGlobalLoggingLevel@{GetGlobalLoggingLevel}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Log\-Severity} Ali\-HLTLogging::Get\-Global\-Logging\-Level ()\hspace{0.3cm}{\tt [static]}}\label{classAliHLTLogging_e3} + + +Get global logging level logging filter for all objects + +Definition at line 326 of file Ali\-HLTLogging.cxx. + +References Ali\-HLTComponent\-Log\-Severity. + +\footnotesize\begin{verbatim}327 { +328 // see header file for class documentation +329 +330 return fgGlobalLogFilter; +331 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!GetKeyword@{GetKeyword}} +\index{GetKeyword@{GetKeyword}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ Ali\-HLTLogging::Get\-Keyword () const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTLogging_a6} + + +Get the current keyword + +Definition at line 75 of file Ali\-HLTLogging.h. + +Referenced by Logging\-Varargs(). + +\footnotesize\begin{verbatim}76 { +77 if (fpCurrentKeyword) return fpCurrentKeyword; +78 else if (fpDefaultKeyword) return fpDefaultKeyword; +79 return HLT_DEFAULT_LOG_KEYWORD; +80 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!GetLocalLoggingLevel@{GetLocalLoggingLevel}} +\index{GetLocalLoggingLevel@{GetLocalLoggingLevel}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Log\-Severity} Ali\-HLTLogging::Get\-Local\-Logging\-Level ()}\label{classAliHLTLogging_a11} + + +Get local logging level logging filter for individual object + +Definition at line 341 of file Ali\-HLTLogging.cxx. + +References Ali\-HLTComponent\-Log\-Severity. + +Referenced by Init\-Ali\-Log\-Trap(). + +\footnotesize\begin{verbatim}342 { +343 // see header file for class documentation +344 +345 return fLocalLogFilter; +346 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!GetParameter@{GetParameter}} +\index{GetParameter@{GetParameter}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual void$\ast$ Ali\-HLTLogging::Get\-Parameter () const\hspace{0.3cm}{\tt [inline, virtual]}}\label{classAliHLTLogging_a12} + + +Get parameter given by the external caller. This functionality is not yet implemented. It is intended to pass the parameter pointer given to the component at initialization back to the caller. + +Definition at line 162 of file Ali\-HLTLogging.h. + +\footnotesize\begin{verbatim}162 {return NULL;} +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!Init@{Init}} +\index{Init@{Init}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTLogging::Init ({\bf Ali\-HLTfct\-Logging} {\em p\-Fun})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTLogging_e0} + + +Init the Ali\-Logging class for use from external package. This initializes the logging callback. \par + Only deployed by external users of the C wrapper interface, not used when running in Ali\-Root + +Definition at line 88 of file Ali\-HLTLogging.cxx. + +References fg\-Logging\-Func. + +Referenced by Ali\-HLTComponent\-Handler::Ali\-HLTComponent\-Handler(), and Ali\-HLTComponent\-Handler::Set\-Environment(). + +\footnotesize\begin{verbatim}89 { +90 // see header file for class documentation +91 if (fgLoggingFunc!=NULL && fgLoggingFunc!=pFun) { +92 (*fgLoggingFunc)(NULL/*fParam*/, kHLTLogWarning, "AliHLTLogging::Init", "no key", "overriding previously initialized logging function"); +93 } +94 fgLoggingFunc=pFun; +95 +96 return 0; +97 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!InitAliLogTrap@{InitAliLogTrap}} +\index{InitAliLogTrap@{InitAliLogTrap}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTLogging::Init\-Ali\-Log\-Trap ({\bf Ali\-HLTComponent\-Handler} $\ast$ {\em p\-Handler})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTLogging_e1} + + +Init the message trap in Ali\-Log. This initializes the Ali\-Log trap, the Ali\-Log class is the logging mechanism of Ali\-Root. The trap can fetch log messages written to Ali\-Log, components and detector algorithms can use the Ali\-Log mechanism to be as close as possible to Offline habits. \par + Only used with external users of the C wrapper interface, not used when running in Ali\-Root + +Definition at line 99 of file Ali\-HLTLogging.cxx. + +References Ali\-HLTComponent\-Log\-Severity, Ali\-HLTComponent\-Handler::Find\-Symbol(), Get\-Local\-Logging\-Level(), Init\-Ali\-Dynamic\-Message\-Callback, k\-HLTLog\-Error, Ali\-HLTComponent\-Handler::Load\-Library(), Message(), and Set\-Local\-Logging\-Level(). + +Referenced by Ali\-HLT\_\-C\_\-Component\_\-Init\-System(). + +\footnotesize\begin{verbatim}100 { +101 // see header file for class documentation +102 int iResult=0; +103 if (pHandler) { +104 AliHLTComponentLogSeverity loglevel=pHandler->GetLocalLoggingLevel(); +105 pHandler->SetLocalLoggingLevel(kHLTLogError); +106 pHandler->LoadLibrary("libAliHLTUtil.so"); +107 pHandler->SetLocalLoggingLevel(loglevel); +108 InitAliDynamicMessageCallback pFunc=(InitAliDynamicMessageCallback)pHandler->FindSymbol("libAliHLTUtil.so", "InitAliDynamicMessageCallback"); +109 if (pFunc) { +110 iResult=(*pFunc)(); +111 } else { +112 Message(NULL, kHLTLogError, "AliHLTLogging::InitAliLogTrap", "init logging", +113 "can not initialize AliLog callback"); +114 iResult=-ENOSYS; +115 } +116 } else { +117 iResult=-EINVAL; +118 } +119 +120 return iResult; +121 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!Logging@{Logging}} +\index{Logging@{Logging}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTLogging::Logging ({\bf Ali\-HLTComponent\-Log\-Severity} {\em severity}, const char $\ast$ {\em origin}, const char $\ast$ {\em keyword}, const char $\ast$ {\em message}, {\em ...})}\label{classAliHLTLogging_a7} + + +Genaral logging function + +Definition at line 252 of file Ali\-HLTLogging.cxx. + +References Build\-Log\-String(), Check\-Filter(), fg\-Ali\-Logging\-Func, fg\-Use\-Ali\-Log, and Message(). + +Referenced by Ali\-HLTData\-Buffer::Create\-Raw\-Buffer(), Ali\-HLTData\-Buffer::Delete\-Raw\-Buffers(), Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Deinit(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Deinit(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Deinit(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Deinit(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Deinit(), Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Init(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Init(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Init(), Ali\-HLTConfiguration::Global\-Deinit(), Ali\-HLTConfiguration::Global\-Init(), Ali\-HLTModule\-Agent::Print\-Status(), Ali\-HLTModule\-Agent::Register(), Ali\-HLTData\-Buffer::Release\-Raw\-Buffer(), and Ali\-HLTModule\-Agent::Unregister(). + +\footnotesize\begin{verbatim}255 { +256 // see header file for class documentation +257 int iResult=CheckFilter(severity); +258 if (iResult>0) { +259 va_list args; +260 va_start(args, format); +261 if (fgLoggingFunc) { +262 iResult = (*fgLoggingFunc)(NULL/*fParam*/, severity, origin, keyword, AliHLTLogging::BuildLogString(format, args )); +263 } else { +264 if (fgUseAliLog!=0 && fgAliLoggingFunc!=NULL) +265 iResult=(*fgAliLoggingFunc)(severity, NULL, origin, NULL, 0, AliHLTLogging::BuildLogString(format, args )); +266 else +267 iResult=Message(NULL/*fParam*/, severity, origin, keyword, AliHLTLogging::BuildLogString(format, args )); +268 } +269 va_end(args); +270 } +271 return iResult; +272 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!LoggingVarargs@{LoggingVarargs}} +\index{LoggingVarargs@{LoggingVarargs}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTLogging::Logging\-Varargs ({\bf Ali\-HLTComponent\-Log\-Severity} {\em severity}, const char $\ast$ {\em origin\-Class}, const char $\ast$ {\em origin\-Func}, const char $\ast$ {\em file}, int {\em line}, {\em ...}) const}\label{classAliHLTLogging_a8} + + + + +Definition at line 274 of file Ali\-HLTLogging.cxx. + +References Build\-Log\-String(), Check\-Filter(), fg\-Ali\-Logging\-Func, fg\-Use\-Ali\-Log, Get\-Keyword(), and Message(). + +Referenced by Ali\-HLTOffline\-Interface::Set\-Params\-To\-Components(). + +\footnotesize\begin{verbatim}277 { +278 // see header file for class documentation +279 +280 if (file==NULL && line==0) { +281 // this is currently just to get rid of the warning "unused parameter" +282 } +283 int iResult=CheckFilter(severity); +284 if (iResult>0) { +285 const char* separator=""; +286 TString origin; +287 if (originClass) { +288 origin+=originClass; +289 separator="::"; +290 } +291 if (originFunc) { +292 origin+=separator; +293 origin+=originFunc; +294 } +295 va_list args; +296 va_start(args, line); +297 +298 if (fgLoggingFunc) { +299 iResult=(*fgLoggingFunc)(NULL/*fParam*/, severity, origin.Data(), GetKeyword(), AliHLTLogging::BuildLogString(NULL, args )); +300 } else { +301 if (fgUseAliLog!=0 && fgAliLoggingFunc!=NULL) +302 iResult=(*fgAliLoggingFunc)(severity, originClass, originFunc, file, line, AliHLTLogging::BuildLogString(NULL, args )); +303 else +304 iResult=Message(NULL/*fParam*/, severity, origin.Data(), GetKeyword(), AliHLTLogging::BuildLogString(NULL, args )); +305 } +306 va_end(args); +307 } +308 return iResult; +309 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!Message@{Message}} +\index{Message@{Message}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTLogging::Message (void $\ast$ {\em param}, {\bf Ali\-HLTComponent\-Log\-Severity} {\em severity}, const char $\ast$ {\em origin}, const char $\ast$ {\em keyword}, const char $\ast$ {\em message})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTLogging_e4} + + +Print message to stdout + +Definition at line 123 of file Ali\-HLTLogging.cxx. + +References HLT\_\-DEFAULT\_\-LOG\_\-KEYWORD, k\-HLTLog\-Benchmark, k\-HLTLog\-Debug, k\-HLTLog\-Error, k\-HLTLog\-Fatal, k\-HLTLog\-Info, and k\-HLTLog\-Warning. + +Referenced by Init\-Ali\-Log\-Trap(), Logging(), Logging\-Varargs(), and Ali\-HLTComponent::Print\-Component\-Data\-Type\-Info(). + +\footnotesize\begin{verbatim}126 { +127 // see header file for class documentation +128 int iResult=0; +129 if (param==NULL) { +130 // this is currently just to get rid of the warning "unused parameter" +131 } +132 +133 const char* strSeverity=""; +134 switch (severity) { +135 case kHLTLogBenchmark: +136 strSeverity="benchmark"; +137 break; +138 case kHLTLogDebug: +139 strSeverity="debug"; +140 break; +141 case kHLTLogInfo: +142 strSeverity="info"; +143 break; +144 case kHLTLogWarning: +145 strSeverity="warning"; +146 break; +147 case kHLTLogError: +148 strSeverity="error"; +149 break; +150 case kHLTLogFatal: +151 strSeverity="fatal"; +152 break; +153 default: +154 break; +155 } +156 TString out="HLT Log "; +157 out+=strSeverity; +158 if (origin && origin[0]!=0) {out+=": <"; out+=origin; out+="> ";} +159 out+=" "; out+=message; +160 if (keyword!=NULL && strcmp(keyword, HLT_DEFAULT_LOG_KEYWORD)!=0) { +161 out+=" ("; out+=keyword; out +=")"; +162 } +163 cout << out.Data() << endl; +164 return iResult; +165 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTLogging} \& Ali\-HLTLogging::operator= (const {\bf Ali\-HLTLogging} \&)}\label{classAliHLTLogging_a2} + + + + +Definition at line 65 of file Ali\-HLTLogging.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}66 { +67 // see header file for class documentation +68 HLTFatal("assignment operator untested"); +69 return *this; +70 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!SetDefaultKeyword@{SetDefaultKeyword}} +\index{SetDefaultKeyword@{SetDefaultKeyword}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTLogging::Set\-Default\-Keyword (const char $\ast$ {\em keyword})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTLogging_a4} + + +set the default key word the keyword is intended to simplify the use of logging macros + +Definition at line 59 of file Ali\-HLTLogging.h. + +\footnotesize\begin{verbatim}59 { fpDefaultKeyword=keyword; } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!SetGlobalLoggingLevel@{SetGlobalLoggingLevel}} +\index{SetGlobalLoggingLevel@{SetGlobalLoggingLevel}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTLogging::Set\-Global\-Logging\-Level ({\bf Ali\-HLTComponent\-Log\-Severity} {\em level})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTLogging_e2} + + +Set global logging level logging filter for all objects + +Definition at line 319 of file Ali\-HLTLogging.cxx. + +References fg\-Global\-Log\-Filter. + +\footnotesize\begin{verbatim}320 { +321 // see header file for class documentation +322 +323 fgGlobalLogFilter=level; +324 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!SetKeyword@{SetKeyword}} +\index{SetKeyword@{SetKeyword}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ Ali\-HLTLogging::Set\-Keyword (const char $\ast$ {\em keyword})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTLogging_a5} + + +Set a temporary keyword returns the old key value + +Definition at line 65 of file Ali\-HLTLogging.h. + +\footnotesize\begin{verbatim}66 { +67 const char* currentKeyword=fpCurrentKeyword; +68 fpCurrentKeyword=keyword; +69 return currentKeyword; +70 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!SetLocalLoggingLevel@{SetLocalLoggingLevel}} +\index{SetLocalLoggingLevel@{SetLocalLoggingLevel}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTLogging::Set\-Local\-Logging\-Level ({\bf Ali\-HLTComponent\-Log\-Severity} {\em level})}\label{classAliHLTLogging_a10} + + +Set local logging level logging filter for individual object + +Definition at line 333 of file Ali\-HLTLogging.cxx. + +References f\-Local\-Log\-Filter. + +Referenced by Ali\-HLTComponent::Ali\-HLTComponent(), Ali\-HLTComponent::Init(), and Init\-Ali\-Log\-Trap(). + +\footnotesize\begin{verbatim}334 { +335 // see header file for class documentation +336 +337 fLocalLogFilter=level; +338 } +\end{verbatim}\normalsize + + +\index{AliHLTLogging@{Ali\-HLTLogging}!SwitchAliLog@{SwitchAliLog}} +\index{SwitchAliLog@{SwitchAliLog}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTLogging::Switch\-Ali\-Log (int {\em sw})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTLogging_a13} + + +Switch logging through Ali\-Log on or off \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em sw}]1 = logging through Ali\-Log \end{description} +\end{Desc} + + +Definition at line 168 of file Ali\-HLTLogging.h. + +\footnotesize\begin{verbatim}168 {fgUseAliLog=(sw!=0);} +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTLogging@{Ali\-HLTLogging}!fgAliHLTLoggingTarget@{fgAliHLTLoggingTarget}} +\index{fgAliHLTLoggingTarget@{fgAliHLTLoggingTarget}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TArray\-C {\bf Ali\-HLTLogging::fg\-Ali\-HLTLogging\-Target}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTLogging_v3} + + +The global logging buffer. The buffer is created with an initial size and grown dynamically on demand. + +Referenced by Build\-Log\-String().\index{AliHLTLogging@{Ali\-HLTLogging}!fgAliLoggingFunc@{fgAliLoggingFunc}} +\index{fgAliLoggingFunc@{fgAliLoggingFunc}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTLogging::Ali\-HLTDynamic\-Message} {\bf Ali\-HLTLogging::fg\-Ali\-Logging\-Func} = NULL\hspace{0.3cm}{\tt [static, protected]}}\label{classAliHLTLogging_t0} + + +the Ali\-Root logging function + +Definition at line 75 of file Ali\-HLTLogging.cxx. + +Referenced by Logging(), and Logging\-Varargs().\index{AliHLTLogging@{Ali\-HLTLogging}!fgGlobalLogFilter@{fgGlobalLogFilter}} +\index{fgGlobalLogFilter@{fgGlobalLogFilter}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Log\-Severity} {\bf Ali\-HLTLogging::fg\-Global\-Log\-Filter} = k\-HLTLog\-All\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTLogging_v0} + + +transient + +the global logging filter + +Definition at line 73 of file Ali\-HLTLogging.cxx. + +Referenced by Set\-Global\-Logging\-Level().\index{AliHLTLogging@{Ali\-HLTLogging}!fgkALIHLTLOGGINGMAXBUFFERSIZE@{fgkALIHLTLOGGINGMAXBUFFERSIZE}} +\index{fgkALIHLTLOGGINGMAXBUFFERSIZE@{fgkALIHLTLOGGINGMAXBUFFERSIZE}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const int {\bf Ali\-HLTLogging::fgk\-ALIHLTLOGGINGMAXBUFFERSIZE} = 10000\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTLogging_v4} + + +transient + +the maximum size of the buffer + +Definition at line 86 of file Ali\-HLTLogging.cxx.\index{AliHLTLogging@{Ali\-HLTLogging}!fgLoggingFunc@{fgLoggingFunc}} +\index{fgLoggingFunc@{fgLoggingFunc}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTfct\-Logging} {\bf Ali\-HLTLogging::fg\-Logging\-Func} = NULL\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTLogging_v1} + + +logging callback from the framework + +Definition at line 74 of file Ali\-HLTLogging.cxx. + +Referenced by Init().\index{AliHLTLogging@{Ali\-HLTLogging}!fgLogstr@{fgLogstr}} +\index{fgLogstr@{fgLogstr}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}ostringstream {\bf Ali\-HLTLogging::fg\-Logstr}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTLogging_s0} + + +target stream for Ali\-Root logging methods + +Definition at line 72 of file Ali\-HLTLogging.cxx.\index{AliHLTLogging@{Ali\-HLTLogging}!fgUseAliLog@{fgUseAliLog}} +\index{fgUseAliLog@{fgUseAliLog}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTLogging::fg\-Use\-Ali\-Log} = 1\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTLogging_v2} + + +transient + +switch for logging through Ali\-Log, default on + +Definition at line 76 of file Ali\-HLTLogging.cxx. + +Referenced by Logging(), and Logging\-Varargs().\index{AliHLTLogging@{Ali\-HLTLogging}!fLocalLogFilter@{fLocalLogFilter}} +\index{fLocalLogFilter@{fLocalLogFilter}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Log\-Severity} {\bf Ali\-HLTLogging::f\-Local\-Log\-Filter}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTLogging_r0} + + +the local logging filter for one class + +Definition at line 199 of file Ali\-HLTLogging.h. + +Referenced by Set\-Local\-Logging\-Level().\index{AliHLTLogging@{Ali\-HLTLogging}!fpCurrentKeyword@{fpCurrentKeyword}} +\index{fpCurrentKeyword@{fpCurrentKeyword}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ {\bf Ali\-HLTLogging::fp\-Current\-Keyword}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTLogging_r2} + + +transient + +current keyword + +Definition at line 205 of file Ali\-HLTLogging.h.\index{AliHLTLogging@{Ali\-HLTLogging}!fpDefaultKeyword@{fpDefaultKeyword}} +\index{fpDefaultKeyword@{fpDefaultKeyword}!AliHLTLogging@{Ali\-HLTLogging}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ {\bf Ali\-HLTLogging::fp\-Default\-Keyword}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTLogging_r1} + + +default keyword + +Definition at line 203 of file Ali\-HLTLogging.h. + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTLogging.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTLogging.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTMessage.eps b/HLT/PHOS/latex/classAliHLTMessage.eps new file mode 100644 index 00000000000..909673688c7 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTMessage.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 366.972 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.3625 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTMessage) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTMessage) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTMessage.tex b/HLT/PHOS/latex/classAliHLTMessage.tex new file mode 100644 index 00000000000..92fd5d35750 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTMessage.tex @@ -0,0 +1,611 @@ +\section{Ali\-HLTMessage Class Reference} +\label{classAliHLTMessage}\index{AliHLTMessage@{AliHLTMessage}} +{\tt \#include $<$Ali\-HLTMessage.h$>$} + +Inheritance diagram for Ali\-HLTMessage::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTMessage} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Serialization of Root objects for transport in the Alice HLT analysis chain. This is the original Root TMessage implementation with a few minor modifications.\begin{itemize} +\item the {\tt {\bf Ali\-HLTMessage(void $\ast$buf, Int\_\-t bufsize)}{\rm (p.\,\pageref{classAliHLTMessage_a1})}} constructor has been made public in order to be used externally.\end{itemize} + + +The class can be used to extract an object from an input data block, or a data block received via the HOMER interface or from the file writer. \small\begin{alltt} + AliHLTMessage msg(buffer, size); + TObject pObj=msg.ReadObject(msg.GetClass()); + \end{alltt}\normalsize + + + + +Definition at line 66 of file Ali\-HLTMessage.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTMessage} (UInt\_\-t what=k\-MESS\_\-ANY) +\item +{\bf Ali\-HLTMessage} (void $\ast$buf, Int\_\-t bufsize) +\item +virtual {\bf $\sim$Ali\-HLTMessage} () +\item +void {\bf Set\-Length} () const +\item +void {\bf Forward} () +\item +TClass $\ast$ {\bf Get\-Class} () const +\item +void {\bf Reset} () +\item +void {\bf Reset} (UInt\_\-t what) +\item +UInt\_\-t {\bf What} () const +\item +void {\bf Set\-What} (UInt\_\-t what) +\item +void {\bf Set\-Compression\-Level} (Int\_\-t level=1) +\item +Int\_\-t {\bf Get\-Compression\-Level} () const +\item +Int\_\-t {\bf Compress} () +\item +Int\_\-t {\bf Uncompress} () +\item +char $\ast$ {\bf Comp\-Buffer} () const +\item +Int\_\-t {\bf Comp\-Length} () const +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTMessage} (const {\bf Ali\-HLTMessage} \&) +\item +void {\bf operator=} (const {\bf Ali\-HLTMessage} \&) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +UInt\_\-t {\bf f\-What} +\item +TClass $\ast$ {\bf f\-Class} +\item +Int\_\-t {\bf f\-Compress} +\item +char $\ast$ {\bf f\-Buf\-Comp} +\item +char $\ast$ {\bf f\-Buf\-Comp\-Cur} +\item +char $\ast$ {\bf f\-Comp\-Pos} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTMessage@{Ali\-HLTMessage}!AliHLTMessage@{AliHLTMessage}} +\index{AliHLTMessage@{AliHLTMessage}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTMessage::Ali\-HLTMessage (UInt\_\-t {\em what} = {\tt kMESS\_\-ANY})}\label{classAliHLTMessage_a0} + + +\index{AliHLTMessage@{Ali\-HLTMessage}!AliHLTMessage@{AliHLTMessage}} +\index{AliHLTMessage@{AliHLTMessage}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTMessage::Ali\-HLTMessage (void $\ast$ {\em buf}, Int\_\-t {\em bufsize})}\label{classAliHLTMessage_a1} + + + + +Definition at line 77 of file Ali\-HLTMessage.cxx. + +References f\-Buf\-Comp, f\-Buf\-Comp\-Cur, f\-Class, f\-Comp\-Pos, f\-Compress, f\-What, and Uncompress(). + +\footnotesize\begin{verbatim}78 : +79 # if defined(ROOT_TBufferFile) || defined(HAVE_TBUFFERFILE_H) +80 TBufferFile(kRead, bufsize, buf, 0), +81 # else +82 TBuffer(kRead, bufsize, buf, 0), +83 # endif +84 AliHLTLogging() +85 { +86 // Create a AliHLTMessage object for reading objects. The objects will be +87 // read from buf. Use the What() method to get the message type. +88 +89 // skip space at the beginning of the message reserved for the message length +90 fBufCur += sizeof(UInt_t); +91 +92 *this >> fWhat; +93 +94 fCompress = 0; +95 fBufComp = 0; +96 fBufCompCur = 0; +97 fCompPos = 0; +98 +99 if (fWhat & kMESS_ZIP) { +100 // if buffer has kMESS_ZIP set, move it to fBufComp and uncompress +101 fBufComp = fBuffer; +102 fBufCompCur = fBuffer + bufsize; +103 fBuffer = 0; +104 Uncompress(); +105 } +106 +107 if (fWhat == kMESS_OBJECT) { +108 InitMap(); +109 fClass = ReadClass(); // get first the class stored in message +110 SetBufferOffset(sizeof(UInt_t) + sizeof(fWhat)); +111 ResetMap(); +112 } else { +113 fClass = 0; +114 } +115 } + +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!~AliHLTMessage@{$\sim$AliHLTMessage}} +\index{~AliHLTMessage@{$\sim$AliHLTMessage}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTMessage::$\sim${\bf Ali\-HLTMessage} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTMessage_a2} + + + + +Definition at line 118 of file Ali\-HLTMessage.cxx. + +\footnotesize\begin{verbatim}119 { +120 // Clean up compression buffer. +121 delete [] fBufComp; +122 } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!AliHLTMessage@{AliHLTMessage}} +\index{AliHLTMessage@{AliHLTMessage}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTMessage::Ali\-HLTMessage (const {\bf Ali\-HLTMessage} \&)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTMessage_d0} + + + + +\subsection{Member Function Documentation} +\index{AliHLTMessage@{Ali\-HLTMessage}!CompBuffer@{CompBuffer}} +\index{CompBuffer@{CompBuffer}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ Ali\-HLTMessage::Comp\-Buffer () const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTMessage_a14} + + + + +Definition at line 93 of file Ali\-HLTMessage.h. + +\footnotesize\begin{verbatim}93 { return fBufComp; } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!CompLength@{CompLength}} +\index{CompLength@{CompLength}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t Ali\-HLTMessage::Comp\-Length () const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTMessage_a15} + + + + +Definition at line 94 of file Ali\-HLTMessage.h. + +References f\-Buf\-Comp\-Cur. + +Referenced by Compress(). + +\footnotesize\begin{verbatim}94 { return (Int_t)(fBufCompCur - fBufComp); } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!Compress@{Compress}} +\index{Compress@{Compress}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t Ali\-HLTMessage::Compress ()}\label{classAliHLTMessage_a12} + + + + +Definition at line 214 of file Ali\-HLTMessage.cxx. + +References Comp\-Length(), f\-Buf\-Comp, f\-Buf\-Comp\-Cur, f\-Comp\-Pos, f\-Compress, f\-What, and R\_\-\_\-zip(). + +\footnotesize\begin{verbatim}215 { +216 // Compress the message. The message will only be compressed if the +217 // compression level > 0 and the if the message is > 256 bytes. +218 // Returns -1 in case of error (when compression fails or +219 // when the message increases in size in some pathological cases), +220 // otherwise returns 0. +221 +222 if (fCompress == 0) { +223 // no compression specified +224 if (fBufComp) { +225 delete [] fBufComp; +226 fBufComp = 0; +227 fBufCompCur = 0; +228 fCompPos = 0; +229 } +230 return 0; +231 } +232 +233 if (fBufComp && fCompPos == fBufCur) { +234 // the message was already compressed +235 return 0; +236 } +237 +238 // remove any existing compressed buffer before compressing modified message +239 if (fBufComp) { +240 delete [] fBufComp; +241 fBufComp = 0; +242 fBufCompCur = 0; +243 fCompPos = 0; +244 } +245 +246 if (Length() <= (Int_t)(256 + 2*sizeof(UInt_t))) { +247 // this message is too small to be compressed +248 return 0; +249 } +250 +251 Int_t hdrlen = 2*sizeof(UInt_t); +252 Int_t messlen = Length() - hdrlen; +253 Int_t nbuffers = messlen / kMAXBUF; +254 Int_t chdrlen = 3*sizeof(UInt_t); // compressed buffer header length +255 Int_t buflen = TMath::Max(512, chdrlen + messlen + 9*nbuffers); +256 fBufComp = new char[buflen]; +257 char *messbuf = Buffer() + hdrlen; +258 char *bufcur = fBufComp + chdrlen; +259 Int_t noutot = 0; +260 Int_t nzip = 0; +261 Int_t nout, bufmax; +262 for (Int_t i = 0; i <= nbuffers; i++) { +263 if (i == nbuffers) +264 bufmax = messlen - nzip; +265 else +266 bufmax = kMAXBUF; +267 R__zip(fCompress, &bufmax, messbuf, &bufmax, bufcur, &nout); +268 if (nout == 0 || nout >= messlen) { +269 //this happens when the buffer cannot be compressed +270 delete [] fBufComp; +271 fBufComp = 0; +272 fBufCompCur = 0; +273 fCompPos = 0; +274 return -1; +275 } +276 bufcur += nout; +277 noutot += nout; +278 messbuf += kMAXBUF; +279 nzip += kMAXBUF; +280 } +281 fBufCompCur = bufcur; +282 fCompPos = fBufCur; +283 +284 bufcur = fBufComp; +285 tobuf(bufcur, (UInt_t)(CompLength() - sizeof(UInt_t))); +286 Int_t what = fWhat | kMESS_ZIP; +287 tobuf(bufcur, what); +288 tobuf(bufcur, Length()); // original uncompressed buffer length +289 +290 return 0; +291 } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!Forward@{Forward}} +\index{Forward@{Forward}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTMessage::Forward ()}\label{classAliHLTMessage_a4} + + + + +Definition at line 125 of file Ali\-HLTMessage.cxx. + +References f\-Comp\-Pos. + +\footnotesize\begin{verbatim}126 { +127 // Change a buffer that was received into one that can be send, i.e. +128 // forward a just received message. +129 +130 if (IsReading()) { +131 SetWriteMode(); +132 SetBufferOffset(fBufSize); +133 +134 if (fBufComp) { +135 fCompPos = fBufCur; +136 } +137 } +138 } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!GetClass@{GetClass}} +\index{GetClass@{GetClass}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TClass$\ast$ Ali\-HLTMessage::Get\-Class () const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTMessage_a5} + + + + +Definition at line 83 of file Ali\-HLTMessage.h. + +Referenced by Ali\-HLTComponent::Create\-Input\-Object(). + +\footnotesize\begin{verbatim}83 { return fClass; } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!GetCompressionLevel@{GetCompressionLevel}} +\index{GetCompressionLevel@{GetCompressionLevel}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t Ali\-HLTMessage::Get\-Compression\-Level () const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTMessage_a11} + + + + +Definition at line 90 of file Ali\-HLTMessage.h. + +\footnotesize\begin{verbatim}90 { return fCompress; } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTMessage::operator= (const {\bf Ali\-HLTMessage} \&)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTMessage_d1} + + +\index{AliHLTMessage@{Ali\-HLTMessage}!Reset@{Reset}} +\index{Reset@{Reset}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTMessage::Reset (UInt\_\-t {\em what})\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTMessage_a7} + + + + +Definition at line 85 of file Ali\-HLTMessage.h. + +References Reset(), and Set\-What(). + +\footnotesize\begin{verbatim}85 { SetWhat(what); Reset(); } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!Reset@{Reset}} +\index{Reset@{Reset}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTMessage::Reset ()}\label{classAliHLTMessage_a6} + + + + +Definition at line 141 of file Ali\-HLTMessage.cxx. + +References f\-Buf\-Comp, f\-Buf\-Comp\-Cur, f\-Comp\-Pos, and f\-What. + +Referenced by Reset(). + +\footnotesize\begin{verbatim}142 { +143 // Reset the message buffer so we can use (i.e. fill) it again. +144 +145 SetBufferOffset(sizeof(UInt_t) + sizeof(fWhat)); +146 ResetMap(); +147 +148 if (fBufComp) { +149 delete [] fBufComp; +150 fBufComp = 0; +151 fBufCompCur = 0; +152 fCompPos = 0; +153 } +154 } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!SetCompressionLevel@{SetCompressionLevel}} +\index{SetCompressionLevel@{SetCompressionLevel}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTMessage::Set\-Compression\-Level (Int\_\-t {\em level} = {\tt 1})}\label{classAliHLTMessage_a10} + + + + +Definition at line 194 of file Ali\-HLTMessage.cxx. + +References f\-Buf\-Comp, f\-Buf\-Comp\-Cur, f\-Comp\-Pos, and f\-Compress. + +\footnotesize\begin{verbatim}195 { +196 // Set the message compression level. Can be between 0 and 9 with 0 +197 // being no compression and 9 maximum compression. In general the default +198 // level of 1 is the best compromise between achieved compression and +199 // cpu time. Compression will only happen when the message is > 256 bytes. +200 +201 if (level < 0) level = 0; +202 if (level > 9) level = 9; +203 +204 if (level != fCompress && fBufComp) { +205 delete [] fBufComp; +206 fBufComp = 0; +207 fBufCompCur = 0; +208 fCompPos = 0; +209 } +210 fCompress = level; +211 } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!SetLength@{SetLength}} +\index{SetLength@{SetLength}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTMessage::Set\-Length () const}\label{classAliHLTMessage_a3} + + + + +Definition at line 157 of file Ali\-HLTMessage.cxx. + +Referenced by Ali\-HLTComponent::Push\-Back(). + +\footnotesize\begin{verbatim}158 { +159 // Set the message length at the beginning of the message buffer. +160 +161 if (IsWriting()) { +162 char *buf = Buffer(); +163 *((UInt_t*)buf) = (UInt_t)(Length() - sizeof(UInt_t)); +164 +165 if (fBufComp) { +166 buf = fBufComp; +167 *((UInt_t*)buf) = (UInt_t)(Length() - sizeof(UInt_t)); +168 } +169 } +170 } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!SetWhat@{SetWhat}} +\index{SetWhat@{SetWhat}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTMessage::Set\-What (UInt\_\-t {\em what})}\label{classAliHLTMessage_a9} + + + + +Definition at line 173 of file Ali\-HLTMessage.cxx. + +References f\-What. + +Referenced by Reset(). + +\footnotesize\begin{verbatim}174 { +175 // Using this method one can change the message type a-posteriory. +176 // In case you OR "what" with kMESS_ACK, the message will wait for +177 // an acknowledgement from the remote side. This makes the sending +178 // process synchronous. +179 +180 fWhat = what; +181 +182 char *buf = Buffer(); +183 buf += sizeof(UInt_t); // skip reserved length space +184 tobuf(buf, what); +185 +186 if (fBufComp) { +187 buf = fBufComp; +188 buf += sizeof(UInt_t); // skip reserved length space +189 tobuf(buf, what | kMESS_ZIP); +190 } +191 } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!Uncompress@{Uncompress}} +\index{Uncompress@{Uncompress}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t Ali\-HLTMessage::Uncompress ()}\label{classAliHLTMessage_a13} + + + + +Definition at line 294 of file Ali\-HLTMessage.cxx. + +References f\-Buf\-Comp, f\-Compress, f\-What, and R\_\-\_\-unzip(). + +Referenced by Ali\-HLTMessage(). + +\footnotesize\begin{verbatim}295 { +296 // Uncompress the message. The message will only be uncompressed when +297 // kMESS_ZIP is set. Returns -1 in case of error, 0 otherwise. +298 +299 if (!fBufComp || !(fWhat & kMESS_ZIP)) +300 return -1; +301 +302 Int_t buflen; +303 Int_t hdrlen = 2*sizeof(UInt_t); +304 UChar_t *bufcur = (UChar_t*)fBufComp + hdrlen; +305 frombuf((char *&)bufcur, &buflen); +306 fBuffer = new char[buflen]; +307 fBufSize = buflen; +308 fBufCur = fBuffer + sizeof(UInt_t) + sizeof(fWhat); +309 fBufMax = fBuffer + fBufSize; +310 char *messbuf = fBuffer + hdrlen; +311 +312 Int_t nin, nout, nbuf; +313 Int_t noutot = 0; +314 while (1) { +315 nin = 9 + ((Int_t)bufcur[3] | ((Int_t)bufcur[4] << 8) | ((Int_t)bufcur[5] << 16)); +316 nbuf = (Int_t)bufcur[6] | ((Int_t)bufcur[7] << 8) | ((Int_t)bufcur[8] << 16); +317 R__unzip(&nin, bufcur, &nbuf, messbuf, &nout); +318 if (!nout) break; +319 noutot += nout; +320 if (noutot >= buflen - hdrlen) break; +321 bufcur += nin; +322 messbuf += nout; +323 } +324 +325 fWhat &= ~kMESS_ZIP; +326 fCompress = 1; +327 +328 return 0; +329 } +\end{verbatim}\normalsize + + +\index{AliHLTMessage@{Ali\-HLTMessage}!What@{What}} +\index{What@{What}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}UInt\_\-t Ali\-HLTMessage::What () const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTMessage_a8} + + + + +Definition at line 86 of file Ali\-HLTMessage.h. + +\footnotesize\begin{verbatim}86 { return fWhat; } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTMessage@{Ali\-HLTMessage}!fBufComp@{fBufComp}} +\index{fBufComp@{fBufComp}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ {\bf Ali\-HLTMessage::f\-Buf\-Comp}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTMessage_r3} + + + + +Definition at line 100 of file Ali\-HLTMessage.h. + +Referenced by Ali\-HLTMessage(), Compress(), Reset(), Set\-Compression\-Level(), and Uncompress().\index{AliHLTMessage@{Ali\-HLTMessage}!fBufCompCur@{fBufCompCur}} +\index{fBufCompCur@{fBufCompCur}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ {\bf Ali\-HLTMessage::f\-Buf\-Comp\-Cur}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTMessage_r4} + + + + +Definition at line 101 of file Ali\-HLTMessage.h. + +Referenced by Ali\-HLTMessage(), Comp\-Length(), Compress(), Reset(), and Set\-Compression\-Level().\index{AliHLTMessage@{Ali\-HLTMessage}!fClass@{fClass}} +\index{fClass@{fClass}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TClass$\ast$ {\bf Ali\-HLTMessage::f\-Class}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTMessage_r1} + + + + +Definition at line 98 of file Ali\-HLTMessage.h. + +Referenced by Ali\-HLTMessage().\index{AliHLTMessage@{Ali\-HLTMessage}!fCompPos@{fCompPos}} +\index{fCompPos@{fCompPos}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ {\bf Ali\-HLTMessage::f\-Comp\-Pos}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTMessage_r5} + + + + +Definition at line 102 of file Ali\-HLTMessage.h. + +Referenced by Ali\-HLTMessage(), Compress(), Forward(), Reset(), and Set\-Compression\-Level().\index{AliHLTMessage@{Ali\-HLTMessage}!fCompress@{fCompress}} +\index{fCompress@{fCompress}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t {\bf Ali\-HLTMessage::f\-Compress}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTMessage_r2} + + + + +Definition at line 99 of file Ali\-HLTMessage.h. + +Referenced by Ali\-HLTMessage(), Compress(), Set\-Compression\-Level(), and Uncompress().\index{AliHLTMessage@{Ali\-HLTMessage}!fWhat@{fWhat}} +\index{fWhat@{fWhat}!AliHLTMessage@{Ali\-HLTMessage}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}UInt\_\-t {\bf Ali\-HLTMessage::f\-What}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTMessage_r0} + + + + +Definition at line 97 of file Ali\-HLTMessage.h. + +Referenced by Ali\-HLTMessage(), Compress(), Reset(), Set\-What(), and Uncompress(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTMessage.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTMessage.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTModuleAgent.eps b/HLT/PHOS/latex/classAliHLTModuleAgent.eps new file mode 100644 index 00000000000..1f80f660e39 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTModuleAgent.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 300.752 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.6625 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTModuleAgent) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTModuleAgent) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTModuleAgent.tex b/HLT/PHOS/latex/classAliHLTModuleAgent.tex new file mode 100644 index 00000000000..0915ce55ff1 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTModuleAgent.tex @@ -0,0 +1,486 @@ +\section{Ali\-HLTModule\-Agent Class Reference} +\label{classAliHLTModuleAgent}\index{AliHLTModuleAgent@{AliHLTModuleAgent}} +{\tt \#include $<$Ali\-HLTModule\-Agent.h$>$} + +Inheritance diagram for Ali\-HLTModule\-Agent::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTModuleAgent} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Agent helper class for HLT sub modules, e.g. PHOS, TPC, Trigger. + +This class implements the agent base class for the HLT sub modules. The agent of a library gives information on the features of the library/ components, like the configurations to run and other component libraries it depends on. \begin{Desc} +\item[Note:]There must not be more than one agent per module/library.\end{Desc} +All HLT component libraries are loaded on demand through the HLT steering instance ({\bf Ali\-HLTSystem}{\rm (p.\,\pageref{classAliHLTSystem})}). A library can implement an agent derived from this base class, and has to define one global object of this agent in the code. The agent will be registered automatically, and the features can be queried when required. + +This is usually done during running the Ali\-Root reconstruction (see Ali\-Root documentation on {\tt Ali\-Reconstruction}). The HLT implemets the Ali\-HLTReconstructor which holds the HLT steering object. Several flags can be specified as options via the {\tt Set\-Option} method of {\tt Ali\-Reconstruction}, including the component libraries to be loaded.\subsection{Agent interface}\label{classAliHLTModuleAgent_alihltmoduleagent_interface} +The child can implement the following functions:\begin{itemize} +\item {\bf Create\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a4})} \par + create HLT configuration forming an HLT analysis chain.\end{itemize} + + +\begin{itemize} +\item {\bf Get\-Local\-Rec\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a5})} \par + configurations run during local event reconstruction. \begin{Desc} +\item[Note:]Local event reconstruction is the first step of the reconstruction chain. All events are processed at once. \par +\end{Desc} +\item {\bf Get\-Event\-Rec\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a6})} \par + configurations run during event reconstruction. \begin{Desc} +\item[Note:]This is the reconstruction on event by event basis. \par +\end{Desc} +\item {\bf Get\-Required\-Component\-Libraries}{\rm (p.\,\pageref{classAliHLTModuleAgent_a7})} \par + can indicate further libraries which are required for running the chains (e.g. if components of another library are used).\end{itemize} + + +\begin{itemize} +\item {\bf Register\-Components}{\rm (p.\,\pageref{classAliHLTModuleAgent_a8})} \par + register componens, this can be used to avoid the component registration via global objects \begin{Desc} +\item[See also:]{\bf Component handling}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-handling})} \par + \end{Desc} +\end{itemize} +\subsection{References}\label{classAliHLTModuleAgent_alihltmoduleagent_references} +\begin{Desc} +\item[See also:]Ali\-HLTReconstructor interface to the Ali\-Root reconstruction + +Ali\-HLTAgent\-Sample agent for the lib\-Ali\-HLTSample library \end{Desc} + + + + +Definition at line 74 of file Ali\-HLTModule\-Agent.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTModule\-Agent} () +\item +{\bf Ali\-HLTModule\-Agent} (const {\bf Ali\-HLTModule\-Agent} \&) +\item +{\bf Ali\-HLTModule\-Agent} \& {\bf operator=} (const {\bf Ali\-HLTModule\-Agent} \&) +\item +virtual {\bf $\sim$Ali\-HLTModule\-Agent} () +\item +virtual int {\bf Create\-Configurations} ({\bf Ali\-HLTConfiguration\-Handler} $\ast$handler, Ali\-Run\-Loader $\ast$runloader=NULL) const +\item +virtual const char $\ast$ {\bf Get\-Local\-Rec\-Configurations} (Ali\-Run\-Loader $\ast$runloader=NULL) const +\item +virtual const char $\ast$ {\bf Get\-Event\-Rec\-Configurations} (Ali\-Run\-Loader $\ast$runloader=NULL) const +\item +virtual const char $\ast$ {\bf Get\-Required\-Component\-Libraries} () const +\item +virtual int {\bf Register\-Components} (Ali\-Run\-Loader $\ast$runloader=NULL) const +\item +const char $\ast$ {\bf Get\-Top\-Configurations} (Ali\-Run\-Loader $\ast$runloader=NULL) const +\end{CompactItemize} +\subsection*{Static Public Member Functions} +\begin{CompactItemize} +\item +void {\bf Print\-Status} (const char $\ast$agent=NULL) +\item +{\bf Ali\-HLTModule\-Agent} $\ast$ {\bf Get\-First\-Agent} () +\item +{\bf Ali\-HLTModule\-Agent} $\ast$ {\bf Get\-Next\-Agent} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Class\-Def} ({\bf Ali\-HLTModule\-Agent}, 0) +\end{CompactItemize} +\subsection*{Static Private Member Functions} +\begin{CompactItemize} +\item +int {\bf Register} ({\bf Ali\-HLTModule\-Agent} $\ast$p\-Agent) +\item +int {\bf Unregister} ({\bf Ali\-HLTModule\-Agent} $\ast$p\-Agent) +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +TList {\bf fg\-Agent\-List} +\item +TObj\-Link $\ast$ {\bf fg\-Current\-Lnk} = NULL +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!AliHLTModuleAgent@{AliHLTModuleAgent}} +\index{AliHLTModuleAgent@{AliHLTModuleAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTModule\-Agent::Ali\-HLTModule\-Agent ()}\label{classAliHLTModuleAgent_a0} + + +standard constructor. The agent is automatically registered in the global agent manager \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!AliHLTModuleAgent@{AliHLTModuleAgent}} +\index{AliHLTModuleAgent@{AliHLTModuleAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTModule\-Agent::Ali\-HLTModule\-Agent (const {\bf Ali\-HLTModule\-Agent} \&)}\label{classAliHLTModuleAgent_a1} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 40 of file Ali\-HLTModule\-Agent.cxx. + +\footnotesize\begin{verbatim}41 : +42 TObject(), +43 AliHLTLogging() +44 { +45 // see header file for function documentation +46 } + +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!~AliHLTModuleAgent@{$\sim$AliHLTModuleAgent}} +\index{~AliHLTModuleAgent@{$\sim$AliHLTModuleAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTModule\-Agent::$\sim${\bf Ali\-HLTModule\-Agent} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTModuleAgent_a3} + + +destructor + +Definition at line 57 of file Ali\-HLTModule\-Agent.cxx. + +References Unregister(). + +\footnotesize\begin{verbatim}58 { +59 // see header file for function documentation +60 Unregister(this); +61 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTModule\-Agent::Class\-Def ({\bf Ali\-HLTModule\-Agent}, 0)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTModuleAgent_d0} + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!CreateConfigurations@{CreateConfigurations}} +\index{CreateConfigurations@{CreateConfigurations}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTModule\-Agent::Create\-Configurations ({\bf Ali\-HLTConfiguration\-Handler} $\ast$ {\em handler}, Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTModuleAgent_a4} + + +Register all configurations belonging to this module with the {\bf Ali\-HLTConfiguration\-Handler}{\rm (p.\,\pageref{classAliHLTConfigurationHandler})}. The agent can adapt the configurations to be registered to the current Ali\-Root setup by checking the runloader. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em handler}][in] the configuration handler \item[{\em runloader}][in] Ali\-Root runloader \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 92 of file Ali\-HLTModule\-Agent.cxx. + +Referenced by Ali\-HLTSystem::Load\-Configurations(). + +\footnotesize\begin{verbatim}94 { +95 // default method, nothing to be done, child classes can overload +96 if (handler==NULL && runloader==NULL) { +97 // get rid of 'unused parameter' warning +98 } +99 return 0; +100 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetEventRecConfigurations@{GetEventRecConfigurations}} +\index{GetEventRecConfigurations@{GetEventRecConfigurations}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTModule\-Agent::Get\-Event\-Rec\-Configurations (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTModuleAgent_a6} + + +Get the top configurations for event reconstruction. The same as for {\bf Get\-Local\-Rec\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a5})}, but for the reconstruction on event by event basis. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em runloader}][in] Ali\-Root runloader \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]string containing the top configurations separated by blanks \end{Desc} + + +Definition at line 111 of file Ali\-HLTModule\-Agent.cxx. + +\footnotesize\begin{verbatim}112 { +113 // default method, nothing to be done, child classes can overload +114 if (runloader==NULL) { +115 // get rid of 'unused parameter' warning +116 } +117 return NULL; +118 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetFirstAgent@{GetFirstAgent}} +\index{GetFirstAgent@{GetFirstAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTModule\-Agent} $\ast$ Ali\-HLTModule\-Agent::Get\-First\-Agent ()\hspace{0.3cm}{\tt [static]}}\label{classAliHLTModuleAgent_e1} + + +Get the first agent in the list \begin{Desc} +\item[Returns:]pointer to first agent in the list, NULL if empty \end{Desc} + + +Definition at line 135 of file Ali\-HLTModule\-Agent.cxx. + +References fg\-Agent\-List, and fg\-Current\-Lnk. + +Referenced by Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), and Ali\-HLTSystem::Load\-Configurations(). + +\footnotesize\begin{verbatim}136 { +137 // see header file for function documentation +138 fgCurrentLnk=fgAgentList.FirstLink(); +139 if (fgCurrentLnk==NULL) return NULL; +140 return (AliHLTModuleAgent*)fgCurrentLnk->GetObject(); +141 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetLocalRecConfigurations@{GetLocalRecConfigurations}} +\index{GetLocalRecConfigurations@{GetLocalRecConfigurations}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTModule\-Agent::Get\-Local\-Rec\-Configurations (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTModuleAgent_a5} + + +Get the top configurations for local event reconstruction. A top configuration describes a processing chain. It can simply be described by the last configuration(s) in the chain. The agent can adapt the configurations to be registered to the current Ali\-Root setup by checking the runloader. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em runloader}][in] Ali\-Root runloader \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]string containing the top configurations separated by blanks \end{Desc} + + +Definition at line 102 of file Ali\-HLTModule\-Agent.cxx. + +Referenced by Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), and Get\-Top\-Configurations(). + +\footnotesize\begin{verbatim}103 { +104 // default method, nothing to be done, child classes can overload +105 if (runloader==NULL) { +106 // get rid of 'unused parameter' warning +107 } +108 return NULL; +109 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetNextAgent@{GetNextAgent}} +\index{GetNextAgent@{GetNextAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTModule\-Agent} $\ast$ Ali\-HLTModule\-Agent::Get\-Next\-Agent ()\hspace{0.3cm}{\tt [static]}}\label{classAliHLTModuleAgent_e2} + + +Get the next agent in the list \begin{Desc} +\item[Returns:]pointer to next agent in the list, NULL if end of list \end{Desc} + + +Definition at line 143 of file Ali\-HLTModule\-Agent.cxx. + +References fg\-Current\-Lnk. + +Referenced by Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), and Ali\-HLTSystem::Load\-Configurations(). + +\footnotesize\begin{verbatim}144 { +145 // see header file for function documentation +146 if (fgCurrentLnk==NULL) return NULL; +147 fgCurrentLnk=fgCurrentLnk->Next(); +148 if (fgCurrentLnk==NULL) return NULL; +149 return (AliHLTModuleAgent*)fgCurrentLnk->GetObject(); +150 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetRequiredComponentLibraries@{GetRequiredComponentLibraries}} +\index{GetRequiredComponentLibraries@{GetRequiredComponentLibraries}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTModule\-Agent::Get\-Required\-Component\-Libraries () const\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTModuleAgent_a7} + + +Component libraries which the configurations of this agent depend on. \begin{Desc} +\item[Returns:]list of component libraries as a blank-separated string. \end{Desc} + + +Definition at line 120 of file Ali\-HLTModule\-Agent.cxx. + +Referenced by Ali\-HLTSystem::Load\-Configurations(). + +\footnotesize\begin{verbatim}121 { +122 // default method, nothing to be done, child classes can overload +123 return NULL; +124 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetTopConfigurations@{GetTopConfigurations}} +\index{GetTopConfigurations@{GetTopConfigurations}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ Ali\-HLTModule\-Agent::Get\-Top\-Configurations (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTModuleAgent_a9} + + +Old method kept for backward compatibility, redirected to {\bf Get\-Local\-Rec\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a5})}. + +Definition at line 159 of file Ali\-HLTModule\-Agent.h. + +References Get\-Local\-Rec\-Configurations(). + +\footnotesize\begin{verbatim}159 { +160 return GetLocalRecConfigurations(runloader); +161 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTModule\-Agent} \& Ali\-HLTModule\-Agent::operator= (const {\bf Ali\-HLTModule\-Agent} \&)}\label{classAliHLTModuleAgent_a2} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 48 of file Ali\-HLTModule\-Agent.cxx. + +\footnotesize\begin{verbatim}49 { +50 // see header file for function documentation +51 return *this; +52 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!PrintStatus@{PrintStatus}} +\index{PrintStatus@{PrintStatus}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTModule\-Agent::Print\-Status (const char $\ast$ {\em agent} = {\tt NULL})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTModuleAgent_e0} + + +Print status info. Short summary on registered agents. This function acts globally on the list of agents if no specific agent is specified. + +Definition at line 63 of file Ali\-HLTModule\-Agent.cxx. + +References fg\-Agent\-List, k\-HLTLog\-Info, and Ali\-HLTLogging::Logging(). + +Referenced by Ali\-HLTSystem::Configure(). + +\footnotesize\begin{verbatim}64 { +65 // see header file for function documentation +66 AliHLTLogging log; +67 if (agent) { +68 TObject* pAgent=fgAgentList.FindObject(agent); +69 if (pAgent) { +70 log.Logging(kHLTLogInfo, "AliHLTModuleAgent::PrintStatus", "module agents", +71 "agent %s available", pAgent->GetName()); +72 } else { +73 log.Logging(kHLTLogInfo, "AliHLTModuleAgent::PrintStatus", "module agents", +74 "agent %s not found", agent); +75 } +76 } else { +77 TObjLink* lnk=fgAgentList.FirstLink(); +78 log.Logging(kHLTLogInfo, "AliHLT", "", "-----------------------"); +79 log.Logging(kHLTLogInfo, "AliHLT", "", "available module agents"); +80 if (lnk==NULL) +81 log.Logging(kHLTLogInfo, "AliHLT", "", " none"); +82 while (lnk) { +83 TString msg; +84 msg.Form(" %s : %p", ((AliHLTModuleAgent*)lnk->GetObject())->GetName(), lnk->GetObject()); +85 log.Logging(kHLTLogInfo, "AliHLT", "", msg.Data()); +86 lnk=lnk->Next(); +87 } +88 log.Logging(kHLTLogInfo, "AliHLT", "", "-----------------------"); +89 } +90 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!Register@{Register}} +\index{Register@{Register}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTModule\-Agent::Register ({\bf Ali\-HLTModule\-Agent} $\ast$ {\em p\-Agent})\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTModuleAgent_h0} + + +Register agent in the global list. \begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 152 of file Ali\-HLTModule\-Agent.cxx. + +References fg\-Agent\-List, k\-HLTLog\-Debug, and Ali\-HLTLogging::Logging(). + +\footnotesize\begin{verbatim}153 { +154 // see header file for function documentation +155 AliHLTLogging log; +156 if (!pAgent) return -EINVAL; +157 if (fgAgentList.FindObject(pAgent)==NULL) { +158 log.Logging(kHLTLogDebug, "AliHLTModuleAgent::Register", "", "module agent %p registered", pAgent); +159 fgAgentList.Add(pAgent); +160 } +161 return 0; +162 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!RegisterComponents@{RegisterComponents}} +\index{RegisterComponents@{RegisterComponents}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTModule\-Agent::Register\-Components (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTModuleAgent_a8} + + +Register componets. This method can be used to register components for the module instead of the 'static object approach'. Registration is don by passing a sample object to {\bf Ali\-HLTComponent\-Handler::Register\-Component}{\rm (p.\,\pageref{classAliHLTComponentHandler_a10})}\par + {\em Note:\/} The sample object is owned by the agent, make sure to delete it. + +Definition at line 126 of file Ali\-HLTModule\-Agent.cxx. + +\footnotesize\begin{verbatim}127 { +128 if (runloader==NULL) { +129 // get rid of 'unused parameter' warning +130 } +131 // default method, nothing to be done, child classes can overload +132 return 0; +133 } +\end{verbatim}\normalsize + + +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!Unregister@{Unregister}} +\index{Unregister@{Unregister}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTModule\-Agent::Unregister ({\bf Ali\-HLTModule\-Agent} $\ast$ {\em p\-Agent})\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTModuleAgent_h1} + + +Unregister agent in the global list. \begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 164 of file Ali\-HLTModule\-Agent.cxx. + +References fg\-Agent\-List, k\-HLTLog\-Debug, and Ali\-HLTLogging::Logging(). + +Referenced by $\sim$Ali\-HLTModule\-Agent(). + +\footnotesize\begin{verbatim}165 { +166 // see header file for function documentation +167 AliHLTLogging log; +168 if (!pAgent) return -EINVAL; +169 if (fgAgentList.FindObject(pAgent)!=NULL) { +170 log.Logging(kHLTLogDebug, "AliHLTModuleAgent::Unregister", "", "module agent %p removed", pAgent); +171 fgAgentList.Remove(pAgent); +172 } else { +173 } +174 return 0; +175 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!fgAgentList@{fgAgentList}} +\index{fgAgentList@{fgAgentList}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TList {\bf Ali\-HLTModule\-Agent::fg\-Agent\-List}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTModuleAgent_v0} + + +the list of active agents + +Definition at line 54 of file Ali\-HLTModule\-Agent.cxx. + +Referenced by Get\-First\-Agent(), Print\-Status(), Register(), and Unregister().\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!fgCurrentLnk@{fgCurrentLnk}} +\index{fgCurrentLnk@{fgCurrentLnk}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TObj\-Link $\ast$ {\bf Ali\-HLTModule\-Agent::fg\-Current\-Lnk} = NULL\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTModuleAgent_v1} + + +the current object link (list position) + +Definition at line 55 of file Ali\-HLTModule\-Agent.cxx. + +Referenced by Get\-First\-Agent(), and Get\-Next\-Agent(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTModule\-Agent.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTModule\-Agent.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTOfflineDataSink.eps b/HLT/PHOS/latex/classAliHLTOfflineDataSink.eps new file mode 100644 index 00000000000..a35abcb4e90 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTOfflineDataSink.eps @@ -0,0 +1,215 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 273.973 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.825 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 2 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTOfflineDataSink) cw +(AliHLTDataSink) cw +(AliHLTOfflineInterface) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTOfflineDataSink) 0.5 0 box + (AliHLTDataSink) 0 1 box + (AliHLTOfflineInterface) 1 1 box + (AliHLTComponent) 0 2 box + (AliHLTLogging) 0 3 box + +% ----- relations ----- + +solid +0 0.5 0 out +solid +0 1 1 conn +solid +1 0 1 in +solid +0 0 1 out +solid +1 1 1 in +solid +1 0 2 in +solid +0 0 2 out +solid +1 0 3 in diff --git a/HLT/PHOS/latex/classAliHLTOfflineDataSink.tex b/HLT/PHOS/latex/classAliHLTOfflineDataSink.tex new file mode 100644 index 00000000000..478f0744a75 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTOfflineDataSink.tex @@ -0,0 +1,121 @@ +\section{Ali\-HLTOffline\-Data\-Sink Class Reference} +\label{classAliHLTOfflineDataSink}\index{AliHLTOfflineDataSink@{AliHLTOfflineDataSink}} +{\tt \#include $<$Ali\-HLTOffline\-Data\-Sink.h$>$} + +Inheritance diagram for Ali\-HLTOffline\-Data\-Sink::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4cm]{classAliHLTOfflineDataSink} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +The class implements a Ali\-Root data sink component base class. The child class must implement the functions:\begin{itemize} +\item {\bf Do\-Init}{\rm (p.\,\pageref{classAliHLTComponent_b5})} (optional)\item {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTComponent_b6})} (optional)\item {\bf Dump\-Event}{\rm (p.\,\pageref{classAliHLTDataSink_d0})}\item {\bf Get\-Component\-ID}{\rm (p.\,\pageref{classAliHLTComponent_a9})}\item {\bf Get\-Input\-Data\-Types}{\rm (p.\,\pageref{classAliHLTComponent_a10})}\item {\bf Spawn}{\rm (p.\,\pageref{classAliHLTComponent_a13})}\item {\bf Fill\-ESD}{\rm (p.\,\pageref{classAliHLTOfflineInterface_a11})}\end{itemize} + + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 36 of file Ali\-HLTOffline\-Data\-Sink.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTOffline\-Data\-Sink} () +\item +{\bf Ali\-HLTOffline\-Data\-Sink} (const {\bf Ali\-HLTOffline\-Data\-Sink} \&) +\item +{\bf Ali\-HLTOffline\-Data\-Sink} \& {\bf operator=} (const {\bf Ali\-HLTOffline\-Data\-Sink} \&) +\item +virtual {\bf $\sim$Ali\-HLTOffline\-Data\-Sink} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Class\-Def} ({\bf Ali\-HLTOffline\-Data\-Sink}, 1) +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}!AliHLTOfflineDataSink@{AliHLTOfflineDataSink}} +\index{AliHLTOfflineDataSink@{AliHLTOfflineDataSink}!AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Data\-Sink::Ali\-HLTOffline\-Data\-Sink ()}\label{classAliHLTOfflineDataSink_a0} + + +standard constructor \index{AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}!AliHLTOfflineDataSink@{AliHLTOfflineDataSink}} +\index{AliHLTOfflineDataSink@{AliHLTOfflineDataSink}!AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Data\-Sink::Ali\-HLTOffline\-Data\-Sink (const {\bf Ali\-HLTOffline\-Data\-Sink} \&)}\label{classAliHLTOfflineDataSink_a1} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 38 of file Ali\-HLTOffline\-Data\-Sink.cxx. + +References HLTFatal, and Ali\-HLTOffline\-Interface::Register(). + +\footnotesize\begin{verbatim}39 : +40 AliHLTDataSink(), +41 AliHLTOfflineInterface() +42 { +43 // see header file for class documentation +44 HLTFatal("copy constructor untested"); +45 Register(this); +46 } + +\end{verbatim}\normalsize + + +\index{AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}!~AliHLTOfflineDataSink@{$\sim$AliHLTOfflineDataSink}} +\index{~AliHLTOfflineDataSink@{$\sim$AliHLTOfflineDataSink}!AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Data\-Sink::$\sim${\bf Ali\-HLTOffline\-Data\-Sink} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTOfflineDataSink_a3} + + +destructor + +Definition at line 55 of file Ali\-HLTOffline\-Data\-Sink.cxx. + +References Ali\-HLTOffline\-Interface::Unregister(). + +\footnotesize\begin{verbatim}56 { +57 // see header file for class documentation +58 Unregister(this); +59 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Data\-Sink::Class\-Def ({\bf Ali\-HLTOffline\-Data\-Sink}, 1)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTOfflineDataSink_d0} + + +\index{AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTOfflineDataSink@{Ali\-HLTOffline\-Data\-Sink}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTOffline\-Data\-Sink} \& Ali\-HLTOffline\-Data\-Sink::operator= (const {\bf Ali\-HLTOffline\-Data\-Sink} \&)}\label{classAliHLTOfflineDataSink_a2} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 48 of file Ali\-HLTOffline\-Data\-Sink.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}49 { +50 // see header file for class documentation +51 HLTFatal("assignment operator untested"); +52 return *this; +53 } +\end{verbatim}\normalsize + + + + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTOffline\-Data\-Sink.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTOffline\-Data\-Sink.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTOfflineDataSource.eps b/HLT/PHOS/latex/classAliHLTOfflineDataSource.eps new file mode 100644 index 00000000000..e8a6c678430 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTOfflineDataSource.eps @@ -0,0 +1,215 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 245.399 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 2.0375 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 2 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTOfflineDataSource) cw +(AliHLTDataSource) cw +(AliHLTOfflineInterface) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTOfflineDataSource) 0.5 0 box + (AliHLTDataSource) 0 1 box + (AliHLTOfflineInterface) 1 1 box + (AliHLTComponent) 0 2 box + (AliHLTLogging) 0 3 box + +% ----- relations ----- + +solid +0 0.5 0 out +solid +0 1 1 conn +solid +1 0 1 in +solid +0 0 1 out +solid +1 1 1 in +solid +1 0 2 in +solid +0 0 2 out +solid +1 0 3 in diff --git a/HLT/PHOS/latex/classAliHLTOfflineDataSource.tex b/HLT/PHOS/latex/classAliHLTOfflineDataSource.tex new file mode 100644 index 00000000000..e49cf6bcc9b --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTOfflineDataSource.tex @@ -0,0 +1,142 @@ +\section{Ali\-HLTOffline\-Data\-Source Class Reference} +\label{classAliHLTOfflineDataSource}\index{AliHLTOfflineDataSource@{AliHLTOfflineDataSource}} +{\tt \#include $<$Ali\-HLTOffline\-Data\-Source.h$>$} + +Inheritance diagram for Ali\-HLTOffline\-Data\-Source::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4cm]{classAliHLTOfflineDataSource} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +The class implements a Ali\-Root data source component base class. The child class must implement the functions:\begin{itemize} +\item {\bf Do\-Init}{\rm (p.\,\pageref{classAliHLTComponent_b5})} (optional)\item {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTComponent_b6})} (optional)\item {\bf Get\-Event}{\rm (p.\,\pageref{classAliHLTDataSource_d0})}\item {\bf Get\-Component\-ID}{\rm (p.\,\pageref{classAliHLTComponent_a9})}\item {\bf Get\-Output\-Data\-Type}{\rm (p.\,\pageref{classAliHLTComponent_a11})}\item {\bf Get\-Output\-Data\-Size}{\rm (p.\,\pageref{classAliHLTComponent_a12})}\item {\bf Spawn}{\rm (p.\,\pageref{classAliHLTComponent_a13})}\end{itemize} + + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 36 of file Ali\-HLTOffline\-Data\-Source.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTOffline\-Data\-Source} () +\item +{\bf Ali\-HLTOffline\-Data\-Source} (const {\bf Ali\-HLTOffline\-Data\-Source} \&) +\item +{\bf Ali\-HLTOffline\-Data\-Source} \& {\bf operator=} (const {\bf Ali\-HLTOffline\-Data\-Source} \&) +\item +virtual {\bf $\sim$Ali\-HLTOffline\-Data\-Source} () +\item +int {\bf Fill\-ESD} (int event\-No, Ali\-Run\-Loader $\ast$run\-Loader, Ali\-ESD $\ast$esd) +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Class\-Def} ({\bf Ali\-HLTOffline\-Data\-Source}, 1) +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}!AliHLTOfflineDataSource@{AliHLTOfflineDataSource}} +\index{AliHLTOfflineDataSource@{AliHLTOfflineDataSource}!AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Data\-Source::Ali\-HLTOffline\-Data\-Source ()}\label{classAliHLTOfflineDataSource_a0} + + +standard constructor \index{AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}!AliHLTOfflineDataSource@{AliHLTOfflineDataSource}} +\index{AliHLTOfflineDataSource@{AliHLTOfflineDataSource}!AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Data\-Source::Ali\-HLTOffline\-Data\-Source (const {\bf Ali\-HLTOffline\-Data\-Source} \&)}\label{classAliHLTOfflineDataSource_a1} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 39 of file Ali\-HLTOffline\-Data\-Source.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}40 : +41 AliHLTDataSource(), +42 AliHLTOfflineInterface() +43 { +44 // see header file for class documentation +45 HLTFatal("copy constructor untested"); +46 } + +\end{verbatim}\normalsize + + +\index{AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}!~AliHLTOfflineDataSource@{$\sim$AliHLTOfflineDataSource}} +\index{~AliHLTOfflineDataSource@{$\sim$AliHLTOfflineDataSource}!AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Data\-Source::$\sim${\bf Ali\-HLTOffline\-Data\-Source} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTOfflineDataSource_a3} + + +destructor + +Definition at line 55 of file Ali\-HLTOffline\-Data\-Source.cxx. + +References Ali\-HLTOffline\-Interface::Unregister(). + +\footnotesize\begin{verbatim}56 { +57 // see header file for class documentation +58 Unregister(this); +59 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Data\-Source::Class\-Def ({\bf Ali\-HLTOffline\-Data\-Source}, 1)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTOfflineDataSource_d0} + + +\index{AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}!FillESD@{FillESD}} +\index{FillESD@{FillESD}!AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Data\-Source::Fill\-ESD (int {\em event\-No}, Ali\-Run\-Loader $\ast$ {\em run\-Loader}, Ali\-ESD $\ast$ {\em esd})\hspace{0.3cm}{\tt [inline, virtual]}}\label{classAliHLTOfflineDataSource_a4} + + +Default implementation as sources do not have a real Fill\-ESD method. + +Implements {\bf Ali\-HLTOffline\-Interface} {\rm (p.\,\pageref{classAliHLTOfflineInterface_a11})}. + +Definition at line 51 of file Ali\-HLTOffline\-Data\-Source.h. + +\footnotesize\begin{verbatim}51 { +52 if (esd==NULL && runLoader==NULL) { +53 // get rid of 'unused parameter' warning +54 } +55 return 0; +56 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTOfflineDataSource@{Ali\-HLTOffline\-Data\-Source}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTOffline\-Data\-Source} \& Ali\-HLTOffline\-Data\-Source::operator= (const {\bf Ali\-HLTOffline\-Data\-Source} \&)}\label{classAliHLTOfflineDataSource_a2} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 48 of file Ali\-HLTOffline\-Data\-Source.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}49 { +50 // see header file for class documentation +51 HLTFatal("assignment operator untested"); +52 return *this; +53 } +\end{verbatim}\normalsize + + + + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTOffline\-Data\-Source.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTOffline\-Data\-Source.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTOfflineInterface.eps b/HLT/PHOS/latex/classAliHLTOfflineInterface.eps new file mode 100644 index 00000000000..2b9fd12d76d --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTOfflineInterface.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 122.699 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 4.075 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 2 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTOfflineInterface) cw +(AliHLTOfflineDataSink) cw +(AliHLTOfflineDataSource) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTOfflineInterface) 0.5 1 box + (AliHLTOfflineDataSink) 0 0 box + (AliHLTOfflineDataSource) 1 0 box + +% ----- relations ----- + +solid +1 0.5 0.25 out +solid +0 1 1 conn +solid +0 0 0.75 in +solid +0 1 0.75 in diff --git a/HLT/PHOS/latex/classAliHLTOfflineInterface.tex b/HLT/PHOS/latex/classAliHLTOfflineInterface.tex new file mode 100644 index 00000000000..9ed69837965 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTOfflineInterface.tex @@ -0,0 +1,600 @@ +\section{Ali\-HLTOffline\-Interface Class Reference} +\label{classAliHLTOfflineInterface}\index{AliHLTOfflineInterface@{AliHLTOfflineInterface}} +{\tt \#include $<$Ali\-HLTOffline\-Interface.h$>$} + +Inheritance diagram for Ali\-HLTOffline\-Interface::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTOfflineInterface} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +The class implements the basic interface to the Ali\-Root objects during reconstructions. It serves as a base class for offline source and sink interface components and provides access methods for the Ali\-Run\-Loader, Ali\-Raw\-Reader and Ali\-ESD objects. The Ali\-Run\-Loader and the Ali\-Raw\-Reader are fixed during one run, while the Ali\-ESD object will be changed from event to event.\par + {\em Note:\/} The digits and clusters trees are not available through this interface class as they are completetly detector (Ali\-Loader) dependend. + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 40 of file Ali\-HLTOffline\-Interface.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTOffline\-Interface} () +\item +{\bf Ali\-HLTOffline\-Interface} (Ali\-Run\-Loader $\ast$p\-Run\-Loader, Ali\-Raw\-Reader $\ast$p\-Raw\-Reader) +\item +{\bf Ali\-HLTOffline\-Interface} (const {\bf Ali\-HLTOffline\-Interface} \&) +\item +{\bf Ali\-HLTOffline\-Interface} \& {\bf operator=} (const {\bf Ali\-HLTOffline\-Interface} \&) +\item +virtual {\bf $\sim$Ali\-HLTOffline\-Interface} () +\item +Ali\-Run\-Loader $\ast$ {\bf Get\-Run\-Loader} () const +\item +Ali\-Raw\-Reader $\ast$ {\bf Get\-Raw\-Reader} () const +\item +int {\bf Set\-ESD} (Int\_\-t event\-No, Ali\-ESD $\ast$p\-ESD) +\item +Ali\-ESD $\ast$ {\bf Get\-ESD} () const +\item +int {\bf Set\-Params} (Ali\-Run\-Loader $\ast$run\-Loader, Ali\-Raw\-Reader $\ast$raw\-Reader) +\item +int {\bf Reset} () +\item +virtual int {\bf Fill\-ESD} (int event\-No, Ali\-Run\-Loader $\ast$run\-Loader, Ali\-ESD $\ast$esd)=0 +\end{CompactItemize} +\subsection*{Static Public Member Functions} +\begin{CompactItemize} +\item +int {\bf Set\-Params\-To\-Components} (Ali\-Run\-Loader $\ast$run\-Loader, Ali\-Raw\-Reader $\ast$raw\-Reader) +\item +int {\bf Fill\-Component\-ESDs} (int event\-No, Ali\-Run\-Loader $\ast$run\-Loader, Ali\-ESD $\ast$esd) +\item +int {\bf Reset\-Components} () +\end{CompactItemize} +\subsection*{Static Protected Member Functions} +\begin{CompactItemize} +\item +int {\bf Register} ({\bf Ali\-HLTOffline\-Interface} $\ast$me) +\item +int {\bf Unregister} ({\bf Ali\-HLTOffline\-Interface} $\ast$me) +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Class\-Def} ({\bf Ali\-HLTOffline\-Interface}, 1) +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +Ali\-Run\-Loader $\ast$ {\bf fp\-Run\-Loader} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +Ali\-Raw\-Reader $\ast$ {\bf fp\-Raw\-Reader} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +Ali\-ESD $\ast$ {\bf fp\-ESD} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +TList {\bf fg\-List} +\item +TObj\-Link $\ast$ {\bf fg\-Current\-Lnk} = NULL +\item +Ali\-Run\-Loader $\ast$ {\bf fgp\-Run\-Loader} = NULL +\item +Ali\-Raw\-Reader $\ast$ {\bf fgp\-Raw\-Reader} = NULL +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!AliHLTOfflineInterface@{AliHLTOfflineInterface}} +\index{AliHLTOfflineInterface@{AliHLTOfflineInterface}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Interface::Ali\-HLTOffline\-Interface ()}\label{classAliHLTOfflineInterface_a0} + + +standard constructor \index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!AliHLTOfflineInterface@{AliHLTOfflineInterface}} +\index{AliHLTOfflineInterface@{AliHLTOfflineInterface}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Interface::Ali\-HLTOffline\-Interface (Ali\-Run\-Loader $\ast$ {\em p\-Run\-Loader}, Ali\-Raw\-Reader $\ast$ {\em p\-Raw\-Reader})}\label{classAliHLTOfflineInterface_a1} + + +constructor \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Run\-Loader}]pointer to Ali\-Root run loader \item[{\em p\-Raw\-Reader}]pointer to Ali\-Root raw reader \end{description} +\end{Desc} + + +Definition at line 48 of file Ali\-HLTOffline\-Interface.cxx. + +\footnotesize\begin{verbatim}49 : +50 fpRunLoader(pRunLoader), +51 fpRawReader(pRawReader), +52 fpESD(NULL) +53 { +54 } + +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!AliHLTOfflineInterface@{AliHLTOfflineInterface}} +\index{AliHLTOfflineInterface@{AliHLTOfflineInterface}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Interface::Ali\-HLTOffline\-Interface (const {\bf Ali\-HLTOffline\-Interface} \&)}\label{classAliHLTOfflineInterface_a2} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 56 of file Ali\-HLTOffline\-Interface.cxx. + +\footnotesize\begin{verbatim}57 : +58 TObject(), +59 fpRunLoader(NULL), +60 fpRawReader(NULL), +61 fpESD(NULL) +62 { +63 // see header file for class documentation +64 //HLTFatal("copy constructor untested"); +65 } + +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!~AliHLTOfflineInterface@{$\sim$AliHLTOfflineInterface}} +\index{~AliHLTOfflineInterface@{$\sim$AliHLTOfflineInterface}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Interface::$\sim${\bf Ali\-HLTOffline\-Interface} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTOfflineInterface_a4} + + +destructor + +Definition at line 74 of file Ali\-HLTOffline\-Interface.cxx. + +\footnotesize\begin{verbatim}75 { +76 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTOffline\-Interface::Class\-Def ({\bf Ali\-HLTOffline\-Interface}, 1)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTOfflineInterface_d0} + + +transient + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!FillComponentESDs@{FillComponentESDs}} +\index{FillComponentESDs@{FillComponentESDs}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Interface::Fill\-Component\-ESDs (int {\em event\-No}, Ali\-Run\-Loader $\ast$ {\em run\-Loader}, Ali\-ESD $\ast$ {\em esd})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTOfflineInterface_e1} + + +Fill ESD for one event. The Fill\-ESD method of all active Ali\-HLTOffline\-Data\-Sink's is called in order to fill the ESD with the previously reconstructed data. This method works on the global list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em event\-No}]event No. {\em Note:\/} this is an internal enumeration of the processed events. \item[{\em run\-Loader}]the Ali\-Root runloader \item[{\em esd}]an Ali\-ESD instance \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 169 of file Ali\-HLTOffline\-Interface.cxx. + +References fg\-Current\-Lnk, fg\-List, Fill\-ESD(), Get\-Run\-Loader(), and Set\-ESD(). + +Referenced by Ali\-HLTSystem::Fill\-ESD(). + +\footnotesize\begin{verbatim}170 { +171 // see header file for class documentation +172 int iResult=0; +173 fgCurrentLnk=fgList.FirstLink(); +174 while (fgCurrentLnk!=NULL) { +175 AliHLTOfflineInterface* pComponent=reinterpret_cast(fgCurrentLnk->GetObject()); +176 int iLocal=0; +177 if (pComponent) { +178 pComponent->SetESD(eventNo, esd); +179 if (pComponent->GetRunLoader()!=runLoader) { +180 //HLTWarning("runLoader missmatch: component %p was reconstructed with runLoader %p, but got %p now", pComponent, pComponent->GetRunLoader(), runLoader); +181 } +182 iLocal=pComponent->FillESD(eventNo, runLoader, esd); +183 } +184 if (iLocal<0) { +185 if (iResult>=0) iResult=iLocal; +186 } +187 fgCurrentLnk=fgCurrentLnk->Next(); +188 } +189 return iResult; +190 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!FillESD@{FillESD}} +\index{FillESD@{FillESD}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual int Ali\-HLTOffline\-Interface::Fill\-ESD (int {\em event\-No}, Ali\-Run\-Loader $\ast$ {\em run\-Loader}, Ali\-ESD $\ast$ {\em esd})\hspace{0.3cm}{\tt [pure virtual]}}\label{classAliHLTOfflineInterface_a11} + + +Fill ESD for one event. Fill the ESD with the previously reconstructed data. It must be implmented by the child class. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em event\-No}]event No. {\em Note:\/} this is an internal enumeration of the processed events. \item[{\em run\-Loader}]the Ali\-Root runloader \item[{\em esd}]an Ali\-ESD instance \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Implemented in {\bf Ali\-HLTOffline\-Data\-Source} {\rm (p.\,\pageref{classAliHLTOfflineDataSource_a4})}. + +Referenced by Fill\-Component\-ESDs().\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!GetESD@{GetESD}} +\index{GetESD@{GetESD}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-ESD $\ast$ Ali\-HLTOffline\-Interface::Get\-ESD () const}\label{classAliHLTOfflineInterface_a8} + + +Get the Ali\-Root ESD + +Definition at line 94 of file Ali\-HLTOffline\-Interface.cxx. + +\footnotesize\begin{verbatim}95 { +96 return fpESD; +97 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!GetRawReader@{GetRawReader}} +\index{GetRawReader@{GetRawReader}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-Raw\-Reader $\ast$ Ali\-HLTOffline\-Interface::Get\-Raw\-Reader () const}\label{classAliHLTOfflineInterface_a6} + + +Get the Ali\-Root raw reader + +Definition at line 83 of file Ali\-HLTOffline\-Interface.cxx. + +References fp\-Raw\-Reader. + +\footnotesize\begin{verbatim}84 { +85 return fpRawReader!=NULL?fpRawReader:fgpRawReader; +86 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!GetRunLoader@{GetRunLoader}} +\index{GetRunLoader@{GetRunLoader}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-Run\-Loader $\ast$ Ali\-HLTOffline\-Interface::Get\-Run\-Loader () const}\label{classAliHLTOfflineInterface_a5} + + +Get the Ali\-Root run loader. + +Definition at line 78 of file Ali\-HLTOffline\-Interface.cxx. + +References fp\-Run\-Loader. + +Referenced by Fill\-Component\-ESDs(). + +\footnotesize\begin{verbatim}79 { +80 return fpRunLoader!=NULL?fpRunLoader:fgpRunLoader; +81 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTOffline\-Interface} \& Ali\-HLTOffline\-Interface::operator= (const {\bf Ali\-HLTOffline\-Interface} \&)}\label{classAliHLTOfflineInterface_a3} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 67 of file Ali\-HLTOffline\-Interface.cxx. + +\footnotesize\begin{verbatim}68 { +69 // see header file for class documentation +70 //HLTFatal("assignment operator untested"); +71 return *this; +72 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!Register@{Register}} +\index{Register@{Register}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Interface::Register ({\bf Ali\-HLTOffline\-Interface} $\ast$ {\em me})\hspace{0.3cm}{\tt [static, protected]}}\label{classAliHLTOfflineInterface_f0} + + +Register an Offline\-Interface. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em me}]instance of Ali\-HLTOffline\-Interface \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 192 of file Ali\-HLTOffline\-Interface.cxx. + +References fg\-List. + +Referenced by Ali\-HLTOffline\-Data\-Sink::Ali\-HLTOffline\-Data\-Sink(). + +\footnotesize\begin{verbatim}193 { +194 // see header file for function documentation +195 int iResult=0; +196 if (fgList.FindObject(me->GetName())==NULL) { +197 fgList.Add(me); +198 } else { +199 } +200 return iResult; +201 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!Reset@{Reset}} +\index{Reset@{Reset}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Interface::Reset ()}\label{classAliHLTOfflineInterface_a10} + + +Reset Ali\-Root internal params. + +Definition at line 114 of file Ali\-HLTOffline\-Interface.cxx. + +References fp\-ESD, fp\-Raw\-Reader, and fp\-Run\-Loader. + +Referenced by Reset\-Components(). + +\footnotesize\begin{verbatim}115 { +116 // see header file for class documentation +117 int iResult=0; +118 fpRunLoader=NULL; +119 fpRawReader=NULL; +120 fpESD=NULL; +121 return iResult; +122 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!ResetComponents@{ResetComponents}} +\index{ResetComponents@{ResetComponents}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Interface::Reset\-Components ()\hspace{0.3cm}{\tt [static]}}\label{classAliHLTOfflineInterface_e2} + + +Reset Ali\-Root internal params of all active components. This method works on the global list. + +Definition at line 152 of file Ali\-HLTOffline\-Interface.cxx. + +References fg\-Current\-Lnk, fg\-List, and Reset(). + +\footnotesize\begin{verbatim}153 { +154 // see header file for class documentation +155 int iResult=0; +156 fgCurrentLnk=fgList.FirstLink(); +157 while (fgCurrentLnk!=NULL) { +158 AliHLTOfflineInterface* pComponent=reinterpret_cast(fgCurrentLnk->GetObject()); +159 int iLocal=0; +160 if (pComponent) iLocal=pComponent->Reset(); +161 if (iLocal<0) { +162 if (iResult>=0) iResult=iLocal; +163 } +164 fgCurrentLnk=fgCurrentLnk->Next(); +165 } +166 return iResult; +167 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!SetESD@{SetESD}} +\index{SetESD@{SetESD}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Interface::Set\-ESD (Int\_\-t {\em event\-No}, Ali\-ESD $\ast$ {\em p\-ESD})}\label{classAliHLTOfflineInterface_a7} + + +Set Ali\-Root ESD for the current event. + +Definition at line 88 of file Ali\-HLTOffline\-Interface.cxx. + +References fp\-ESD. + +Referenced by Fill\-Component\-ESDs(). + +\footnotesize\begin{verbatim}89 { +90 fpESD=pESD; +91 return 0; +92 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!SetParams@{SetParams}} +\index{SetParams@{SetParams}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Interface::Set\-Params (Ali\-Run\-Loader $\ast$ {\em run\-Loader}, Ali\-Raw\-Reader $\ast$ {\em raw\-Reader})}\label{classAliHLTOfflineInterface_a9} + + +Set Ali\-Root external params. + +\begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em run\-Loader}]the Ali\-Root runloader \item[{\em raw\-Reader}]the Ali\-Root Raw\-Reader \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 99 of file Ali\-HLTOffline\-Interface.cxx. + +References fp\-Raw\-Reader, and fp\-Run\-Loader. + +Referenced by Set\-Params\-To\-Components(). + +\footnotesize\begin{verbatim}100 { +101 // see header file for class documentation +102 int iResult=0; +103 if (fpRunLoader!=NULL && fpRunLoader!=runLoader) { +104 //HLTWarning("overriding previous instance of Run Loader %p with %p", fpRunLoader, runLoader); +105 } +106 fpRunLoader=runLoader; +107 if (fpRawReader!=NULL && fpRawReader!=rawReader) { +108 //HLTWarning("overriding previous instance of RawReader %p with %p", fpRawReader, rawReader); +109 } +110 fpRawReader=rawReader; +111 return iResult; +112 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!SetParamsToComponents@{SetParamsToComponents}} +\index{SetParamsToComponents@{SetParamsToComponents}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Interface::Set\-Params\-To\-Components (Ali\-Run\-Loader $\ast$ {\em run\-Loader}, Ali\-Raw\-Reader $\ast$ {\em raw\-Reader})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTOfflineInterface_e0} + + +Set Ali\-Root external params. This method works on the global list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em run\-Loader}]the Ali\-Root runloader \item[{\em raw\-Reader}]the Ali\-Root Raw\-Reader \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 124 of file Ali\-HLTOffline\-Interface.cxx. + +References fg\-Current\-Lnk, fg\-List, fgp\-Raw\-Reader, fgp\-Run\-Loader, k\-HLTLog\-Warning, Ali\-HLTLogging::Logging\-Varargs(), and Set\-Params(). + +Referenced by Ali\-HLTSystem::Reconstruct(). + +\footnotesize\begin{verbatim}125 { +126 // see header file for class documentation +127 AliHLTLogging log; +128 int iResult=0; +129 int count=0; +130 fgpRunLoader=runLoader; +131 fgpRawReader=rawReader; +132 fgCurrentLnk=fgList.FirstLink(); +133 while (fgCurrentLnk!=NULL) { +134 AliHLTOfflineInterface* pComponent=reinterpret_cast(fgCurrentLnk->GetObject()); +135 int iLocal=0; +136 if (pComponent) iLocal=pComponent->SetParams(runLoader, rawReader); +137 if (iLocal<0) { +138 log.LoggingVarargs(kHLTLogWarning, "AliHLTOfflineInterface","SetParamsToComponents", __FILE__, __LINE__, +139 "parameter initialization failed for component %p with result %d", pComponent, iLocal); +140 if (iResult>=0) iResult=iLocal; +141 } +142 count++; +143 fgCurrentLnk=fgCurrentLnk->Next(); +144 } +145 if (iResult>=0) { +146 // log.LoggingVarargs(kHLTLogInfo, "AliHLTOfflineInterface","SetParamsToComponents", __FILE__, __LINE__, +147 // "parameters set to %d offline interface component(s)", count); +148 } +149 return iResult; +150 } +\end{verbatim}\normalsize + + +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!Unregister@{Unregister}} +\index{Unregister@{Unregister}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTOffline\-Interface::Unregister ({\bf Ali\-HLTOffline\-Interface} $\ast$ {\em me})\hspace{0.3cm}{\tt [static, protected]}}\label{classAliHLTOfflineInterface_f1} + + +Unregister an Offline\-Interface. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em me}]instance of Ali\-HLTOffline\-Interface \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 203 of file Ali\-HLTOffline\-Interface.cxx. + +References fg\-List. + +Referenced by Ali\-HLTOffline\-Data\-Sink::$\sim$Ali\-HLTOffline\-Data\-Sink(), and Ali\-HLTOffline\-Data\-Source::$\sim$Ali\-HLTOffline\-Data\-Source(). + +\footnotesize\begin{verbatim}204 { +205 // see header file for function documentation +206 int iResult=0; +207 if (fgList.FindObject(me)!=NULL) { +208 fgList.Remove(me); +209 } else { +210 } +211 return iResult; +212 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!fgCurrentLnk@{fgCurrentLnk}} +\index{fgCurrentLnk@{fgCurrentLnk}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TObj\-Link $\ast$ {\bf Ali\-HLTOffline\-Interface::fg\-Current\-Lnk} = NULL\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTOfflineInterface_v1} + + +the current object link (list position) + +Definition at line 44 of file Ali\-HLTOffline\-Interface.cxx. + +Referenced by Fill\-Component\-ESDs(), Reset\-Components(), and Set\-Params\-To\-Components().\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!fgList@{fgList}} +\index{fgList@{fgList}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TList {\bf Ali\-HLTOffline\-Interface::fg\-List}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTOfflineInterface_v0} + + +the list of active interfaces + +Definition at line 43 of file Ali\-HLTOffline\-Interface.cxx. + +Referenced by Fill\-Component\-ESDs(), Register(), Reset\-Components(), Set\-Params\-To\-Components(), and Unregister().\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!fgpRawReader@{fgpRawReader}} +\index{fgpRawReader@{fgpRawReader}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-Raw\-Reader $\ast$ {\bf Ali\-HLTOffline\-Interface::fgp\-Raw\-Reader} = NULL\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTOfflineInterface_v3} + + +transient + +global Ali\-Root raw reader instance (for all components) + +Definition at line 46 of file Ali\-HLTOffline\-Interface.cxx. + +Referenced by Set\-Params\-To\-Components().\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!fgpRunLoader@{fgpRunLoader}} +\index{fgpRunLoader@{fgpRunLoader}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-Run\-Loader $\ast$ {\bf Ali\-HLTOffline\-Interface::fgp\-Run\-Loader} = NULL\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTOfflineInterface_v2} + + +global Ali\-Root run loader instance (for all components) + +Definition at line 45 of file Ali\-HLTOffline\-Interface.cxx. + +Referenced by Set\-Params\-To\-Components().\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!fpESD@{fpESD}} +\index{fpESD@{fpESD}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-ESD$\ast$ {\bf Ali\-HLTOffline\-Interface::fp\-ESD}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTOfflineInterface_r2} + + +transient + +Ali\-Root HLT ESD instance + +Definition at line 162 of file Ali\-HLTOffline\-Interface.h. + +Referenced by Reset(), and Set\-ESD().\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!fpRawReader@{fpRawReader}} +\index{fpRawReader@{fpRawReader}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-Raw\-Reader$\ast$ {\bf Ali\-HLTOffline\-Interface::fp\-Raw\-Reader}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTOfflineInterface_r1} + + +transient + +private Ali\-Root raw reader instance + +Definition at line 160 of file Ali\-HLTOffline\-Interface.h. + +Referenced by Get\-Raw\-Reader(), Reset(), and Set\-Params().\index{AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}!fpRunLoader@{fpRunLoader}} +\index{fpRunLoader@{fpRunLoader}!AliHLTOfflineInterface@{Ali\-HLTOffline\-Interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-Run\-Loader$\ast$ {\bf Ali\-HLTOffline\-Interface::fp\-Run\-Loader}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTOfflineInterface_r0} + + +transient + +private Ali\-Root run loader instance + +Definition at line 158 of file Ali\-HLTOffline\-Interface.h. + +Referenced by Get\-Run\-Loader(), Reset(), and Set\-Params(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTOffline\-Interface.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTOffline\-Interface.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSCellEnergiesFileWriter.eps b/HLT/PHOS/latex/classAliHLTPHOSCellEnergiesFileWriter.eps new file mode 100644 index 00000000000..ac07f85524d --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSCellEnergiesFileWriter.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 181.818 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 2.75 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTPHOSCellEnergiesFileWriter) cw +(AliHLTPHOSFileWriter) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTPHOSCellEnergiesFileWriter) 0 0 box + (AliHLTPHOSFileWriter) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTPHOSCellEnergiesFileWriter.tex b/HLT/PHOS/latex/classAliHLTPHOSCellEnergiesFileWriter.tex new file mode 100644 index 00000000000..50d79a23766 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSCellEnergiesFileWriter.tex @@ -0,0 +1,74 @@ +\section{Ali\-HLTPHOSCell\-Energies\-File\-Writer Class Reference} +\label{classAliHLTPHOSCellEnergiesFileWriter}\index{AliHLTPHOSCellEnergiesFileWriter@{AliHLTPHOSCellEnergiesFileWriter}} +{\tt \#include $<$Ali\-HLTPHOSCell\-Energies\-File\-Writer.h$>$} + +Inheritance diagram for Ali\-HLTPHOSCell\-Energies\-File\-Writer::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTPHOSCellEnergiesFileWriter} +\end{center} +\end{figure} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSCell\-Energies\-File\-Writer} () +\item +{\bf $\sim$Ali\-HLTPHOSCell\-Energies\-File\-Writer} () +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +int {\bf f\-Current\-Evnt\-Cnt} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSCellEnergiesFileWriter@{Ali\-HLTPHOSCell\-Energies\-File\-Writer}!AliHLTPHOSCellEnergiesFileWriter@{AliHLTPHOSCellEnergiesFileWriter}} +\index{AliHLTPHOSCellEnergiesFileWriter@{AliHLTPHOSCellEnergiesFileWriter}!AliHLTPHOSCellEnergiesFileWriter@{Ali\-HLTPHOSCell\-Energies\-File\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSCell\-Energies\-File\-Writer::Ali\-HLTPHOSCell\-Energies\-File\-Writer ()}\label{classAliHLTPHOSCellEnergiesFileWriter_a0} + + + + +Definition at line 5 of file Ali\-HLTPHOSCell\-Energies\-File\-Writer.cxx. + +\footnotesize\begin{verbatim}5 :fCurrentEvntCnt(0) +6 { +7 +8 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSCellEnergiesFileWriter@{Ali\-HLTPHOSCell\-Energies\-File\-Writer}!~AliHLTPHOSCellEnergiesFileWriter@{$\sim$AliHLTPHOSCellEnergiesFileWriter}} +\index{~AliHLTPHOSCellEnergiesFileWriter@{$\sim$AliHLTPHOSCellEnergiesFileWriter}!AliHLTPHOSCellEnergiesFileWriter@{Ali\-HLTPHOSCell\-Energies\-File\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSCell\-Energies\-File\-Writer::$\sim${\bf Ali\-HLTPHOSCell\-Energies\-File\-Writer} ()}\label{classAliHLTPHOSCellEnergiesFileWriter_a1} + + + + +Definition at line 11 of file Ali\-HLTPHOSCell\-Energies\-File\-Writer.cxx. + +\footnotesize\begin{verbatim}12 { +13 +14 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSCellEnergiesFileWriter@{Ali\-HLTPHOSCell\-Energies\-File\-Writer}!fCurrentEvntCnt@{fCurrentEvntCnt}} +\index{fCurrentEvntCnt@{fCurrentEvntCnt}!AliHLTPHOSCellEnergiesFileWriter@{Ali\-HLTPHOSCell\-Energies\-File\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTPHOSCell\-Energies\-File\-Writer::f\-Current\-Evnt\-Cnt}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSCellEnergiesFileWriter_r0} + + + + +Reimplemented from {\bf Ali\-HLTPHOSFile\-Writer} {\rm (p.\,\pageref{classAliHLTPHOSFileWriter_p0})}. + +Definition at line 23 of file Ali\-HLTPHOSCell\-Energies\-File\-Writer.h. + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSCell\-Energies\-File\-Writer.h}\item +{\bf Ali\-HLTPHOSCell\-Energies\-File\-Writer.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSDDLDecoderComponent.eps b/HLT/PHOS/latex/classAliHLTPHOSDDLDecoderComponent.eps new file mode 100644 index 00000000000..21867e641ea --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSDDLDecoderComponent.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 347.826 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.4375 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTPHOSDDLDecoderComponent) cw +(AliHLTProcessor) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTPHOSDDLDecoderComponent) 0 0 box + (AliHLTProcessor) 0 1 box + (AliHLTComponent) 0 2 box + (AliHLTLogging) 0 3 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in +solid +0 0 1 out +solid +1 0 2 in +solid +0 0 2 out +solid +1 0 3 in diff --git a/HLT/PHOS/latex/classAliHLTPHOSDDLDecoderComponent.tex b/HLT/PHOS/latex/classAliHLTPHOSDDLDecoderComponent.tex new file mode 100644 index 00000000000..29ad1f655e5 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSDDLDecoderComponent.tex @@ -0,0 +1,758 @@ +\section{Ali\-HLTPHOSDDLDecoder\-Component Class Reference} +\label{classAliHLTPHOSDDLDecoderComponent}\index{AliHLTPHOSDDLDecoderComponent@{AliHLTPHOSDDLDecoderComponent}} +{\tt \#include $<$Ali\-HLTPHOSDDLDecoder\-Component.h$>$} + +Inheritance diagram for Ali\-HLTPHOSDDLDecoder\-Component::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4cm]{classAliHLTPHOSDDLDecoderComponent} +\end{center} +\end{figure} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSDDLDecoder\-Component} () +\item +virtual {\bf $\sim$Ali\-HLTPHOSDDLDecoder\-Component} () +\item +{\bf Ali\-HLTPHOSDDLDecoder\-Component} (const {\bf Ali\-HLTPHOSDDLDecoder\-Component} \&) +\item +{\bf Ali\-HLTPHOSDDLDecoder\-Component} \& {\bf operator=} (const {\bf Ali\-HLTPHOSDDLDecoder\-Component} \&) +\item +virtual int {\bf Do\-Init} (int argc, const char $\ast$$\ast$argv) +\item +virtual int {\bf Deinit} () +\item +virtual int {\bf Do\-Deinit} () +\item +void {\bf Set\-Equippment\-ID} ({\bf Ali\-HLTUInt16\_\-t} id) +\item +{\bf Ali\-HLTUInt16\_\-t} {\bf Get\-Equippment\-ID} () +\item +void {\bf Set\-Coordinates} ({\bf Ali\-HLTUInt16\_\-t} equippment\-ID) +\item +virtual const char $\ast$ {\bf Get\-Component\-ID} () +\item +virtual void {\bf Get\-Input\-Data\-Types} (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&) +\item +virtual {\bf Ali\-HLTComponent\-Data\-Type} {\bf Get\-Output\-Data\-Type} () +\item +virtual void {\bf Get\-Output\-Data\-Size} (unsigned long \&const\-Base, double \&input\-Multiplier) +\item +virtual {\bf Ali\-HLTComponent} $\ast$ {\bf Spawn} () +\item +virtual int {\bf Do\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt16\_\-t} {\bf f\-Equippment\-ID} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-X} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-Z} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-ZOffset} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-XOffset} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +Bool\_\-t {\bf f\-Send\-Channel\-Data} +\item +Bool\_\-t {\bf f\-Print\-Info} +\item +Double\_\-t {\bf f\-Tmp\-Channel\-Data} [ALTRO\_\-MAX\_\-SAMPLES] +\item +int {\bf f\-Print\-Info\-Frequncy} +\item +Ali\-Calo\-Raw\-Stream $\ast$ {\bf f\-PHOSRaw\-Stream} +\item +Ali\-Raw\-Reader\-Memory $\ast$ {\bf f\-Raw\-Memory\-Reader} +\item +{\bf Ali\-HLTPHOSRcu\-Channel\-Data\-Struct} $\ast$ {\bf f\-Out\-Ptr} +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +int {\bf fg\-Event\-Count} = 0 +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf fgk\-Input\-Data\-Types} [$\,$] = \{{\bf k\-Ali\-HLTVoid\-Data\-Type},\{0,\char`\"{}\char`\"{},\char`\"{}\char`\"{}\}\} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!AliHLTPHOSDDLDecoderComponent@{AliHLTPHOSDDLDecoderComponent}} +\index{AliHLTPHOSDDLDecoderComponent@{AliHLTPHOSDDLDecoderComponent}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSDDLDecoder\-Component::Ali\-HLTPHOSDDLDecoder\-Component ()}\label{classAliHLTPHOSDDLDecoderComponent_a0} + + + + +Definition at line 33 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +\footnotesize\begin{verbatim}33 :AliHLTProcessor(), fEquippmentID(0), fRcuX(0), +34 fRcuZ(0),fRcuZOffset(0), fRcuXOffset(0), fModuleID(0), fSendChannelData(kFALSE), fPHOSRawStream(0), fRawMemoryReader(0), fOutPtr(0) +35 { +36 +37 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!~AliHLTPHOSDDLDecoderComponent@{$\sim$AliHLTPHOSDDLDecoderComponent}} +\index{~AliHLTPHOSDDLDecoderComponent@{$\sim$AliHLTPHOSDDLDecoderComponent}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSDDLDecoder\-Component::$\sim${\bf Ali\-HLTPHOSDDLDecoder\-Component} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a1} + + + + +Definition at line 39 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +References f\-PHOSRaw\-Stream, and f\-Raw\-Memory\-Reader. + +\footnotesize\begin{verbatim}40 { +41 if(fRawMemoryReader != 0) +42 { +43 delete fRawMemoryReader; +44 } +45 if(fPHOSRawStream != 0) +46 { +47 delete fPHOSRawStream; +48 } +49 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!AliHLTPHOSDDLDecoderComponent@{AliHLTPHOSDDLDecoderComponent}} +\index{AliHLTPHOSDDLDecoderComponent@{AliHLTPHOSDDLDecoderComponent}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSDDLDecoder\-Component::Ali\-HLTPHOSDDLDecoder\-Component (const {\bf Ali\-HLTPHOSDDLDecoder\-Component} \&)}\label{classAliHLTPHOSDDLDecoderComponent_a2} + + + + +Definition at line 52 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +\footnotesize\begin{verbatim}52 : AliHLTProcessor(), +53 fEquippmentID(0), fRcuX(0), fRcuZ(0),fRcuZOffset(0), fRcuXOffset(0), fModuleID(0), fSendChannelData(kFALSE), fPHOSRawStream(0), fRawMemoryReader(0), fOutPtr(0) +54 { +55 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!Deinit@{Deinit}} +\index{Deinit@{Deinit}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSDDLDecoder\-Component::Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a5} + + +Clean-up function to terminate data processing. Clean-up of common data structures after data processing. The call is redirected to the internal method {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a6})} which can be overridden by the child class. + +Reimplemented from {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_a3})}. + +Definition at line 59 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +\footnotesize\begin{verbatim}60 { +61 cout << "Deinit" << endl; +62 return 0; +63 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!DoDeinit@{DoDeinit}} +\index{DoDeinit@{DoDeinit}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSDDLDecoder\-Component::Do\-Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a6} + + +Default method for the internal clean-up. The method is called by {\bf Deinit}{\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a5})} + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_b6})}. + +Definition at line 67 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +References f\-PHOSRaw\-Stream, f\-Raw\-Memory\-Reader, k\-HLTLog\-Info, and Ali\-HLTLogging::Logging(). + +\footnotesize\begin{verbatim}68 { +69 cout << "DoDeinit" << endl; +70 Logging(kHLTLogInfo, "HLT", "PHOS", ",AliHLTPHOSRawAnalyzerComponen DoDeinit"); +71 +72 if(fRawMemoryReader !=0) +73 { +74 delete fRawMemoryReader; +75 } +76 +77 if(fPHOSRawStream != 0) +78 { +79 delete fPHOSRawStream; +80 } +81 return 0; +82 +83 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!DoEvent@{DoEvent}} +\index{DoEvent@{DoEvent}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a15} + + +The low-level data processing method for the component. This is the custom processing method and can be overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em blocks}]input data block descriptors \item[{\em trig\-Data}]trigger data structure \item[{\em output\-Ptr}]pointer to target buffer \item[{\em size}]{\em input\/}: size of target buffer {\em output\/}:size of produced data \item[{\em output\-Blocks}]list to receive output block descriptors \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Reimplemented from {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_d0})}. + +Definition at line 121 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +References Ali\-HLTUInt8\_\-t, Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Channel\-Data, Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, f\-Equippment\-ID, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Gain, fg\-Event\-Count, Ali\-HLTComponent::Fill\-Block\-Data(), Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Module\-ID, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-NSamples, Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-NValid\-Channels, Ali\-HLTComponent\-Block\-Data::f\-Offset, f\-Out\-Ptr, f\-PHOSRaw\-Stream, f\-Print\-Info, f\-Print\-Info\-Frequncy, Ali\-HLTComponent\-Block\-Data::f\-Ptr, f\-Raw\-Memory\-Reader, Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Rcu\-X, Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Rcu\-Z, Ali\-HLTComponent\-Block\-Data::f\-Size, Ali\-HLTComponent\-Block\-Data::f\-Specification, Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Valid\-Data, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-X, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Z, k\-HLTLog\-Fatal, and Ali\-HLTLogging::Logging(). + +\footnotesize\begin{verbatim}124 { +125 AliHLTUInt8_t tmpMod = 0; +126 AliHLTUInt8_t tmpZ = 0; +127 AliHLTUInt8_t tmpX = 0; +128 AliHLTUInt8_t tmpGain = 0; +129 Int_t sampleCnt = 0; +130 Int_t processedChannels = 0; +131 UInt_t offset = 0; +132 UInt_t mysize = 0; +133 UInt_t tSize = 0; +134 Int_t tmpChannelCnt = 0; +135 Int_t tmpStartIndex = 0; +136 AliHLTUInt8_t* outBPtr; +137 unsigned long first; +138 unsigned long last; +139 outBPtr = outputPtr; +140 const AliHLTComponentBlockData* iter = NULL; +141 unsigned long ndx; +142 +143 for( ndx = 0; ndx < evtData.fBlockCnt; ndx++ ) +144 { +145 iter = blocks+ndx; +146 mysize = 0; +147 tmpChannelCnt = 0; +148 offset = tSize; +149 +150 if ( iter->fDataType != AliHLTPHOSDefinitions::gkDDLPackedRawDataType ) +151 { +152 continue; +153 } +154 +155 fRawMemoryReader->SetMemory( reinterpret_cast( iter->fPtr ), iter->fSize ); +156 fOutPtr = (AliHLTPHOSRcuChannelDataStruct*)outBPtr; +157 mysize += sizeof(AliHLTPHOSRcuChannelDataStruct); +158 +159 fOutPtr->fRcuX = fRcuX; +160 fOutPtr->fRcuZ = fRcuZ; +161 fOutPtr->fModuleID = fModuleID; +162 +163 while(fPHOSRawStream->Next()) +164 { +165 +166 if (fPHOSRawStream->IsNewHWAddress()) +167 { +168 sampleCnt = 0; +169 fOutPtr->fValidData[tmpChannelCnt].fZ = (AliHLTUInt8_t)fPHOSRawStream->GetColumn() - fRcuZOffset; +170 fOutPtr->fValidData[tmpChannelCnt].fX = (AliHLTUInt8_t)fPHOSRawStream->GetRow() - fRcuXOffset; +171 fOutPtr->fValidData[tmpChannelCnt].fGain = fPHOSRawStream->IsLowGain(); +172 fOutPtr->fValidData[tmpChannelCnt].fNSamples = 0; +173 tmpChannelCnt++; +174 } +175 fOutPtr->fValidData[tmpChannelCnt-1].fNSamples ++; +176 fOutPtr->fValidData[tmpChannelCnt-1].fChannelData[sampleCnt] = fPHOSRawStream->GetSignal(); +177 sampleCnt ++; +178 } +179 +180 fOutPtr->fNValidChannels = tmpChannelCnt-1;; +181 +182 int tmpSampleCnt=0; +183 AliHLTComponentBlockData bd; +184 FillBlockData( bd ); +185 bd.fOffset = offset; +186 bd.fSize = mysize; +187 bd.fDataType = AliHLTPHOSDefinitions::gkCellChannelDataDataType; +188 bd.fSpecification = 0xeFFFFFFF; +189 outputBlocks.push_back( bd); +190 tSize += mysize; +191 outBPtr += mysize; +192 } +193 +194 +195 if( tSize > size ) +196 { +197 cout <<"kHLTLogFatal, HLT::AliHLTPHOSDDLDecoderComponent::DoEvent Too much data Data written over allowed buffer. Amount written:" << tSize << " allowed" << size << endl; +198 Logging( kHLTLogFatal, "HLT::AliHLTPHOSDDLDecoderComponent::DoEvent", "Too much data", "Data written over allowed buffer. Amount written: %lu, allowed amount: %lu.", tSize, size ); +199 return EMSGSIZE; +200 } +201 +202 fgEventCount++; +203 +204 if(fPrintInfo == kTRUE) +205 { +206 if(fgEventCount%fPrintInfoFrequncy == 0) +207 { +208 cout <<"Analyzing event " << fgEventCount << "for Equippment " << fEquippmentID << endl; +209 } +210 } +211 size = tSize; +212 return 0; +213 }//end DoEvent +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!DoInit@{DoInit}} +\index{DoInit@{DoInit}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSDDLDecoder\-Component::Do\-Init (int {\em argc}, const char $\ast$$\ast$ {\em argv})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a4} + + +Default method for the internal initialization. The method is called by {\bf Init}{\rm (p.\,\pageref{classAliHLTProcessor_a2})} + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_b5})}. + +Definition at line 217 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +References f\-Equippment\-ID, f\-PHOSRaw\-Stream, f\-Print\-Info, f\-Print\-Info\-Frequncy, f\-Raw\-Memory\-Reader, f\-Send\-Channel\-Data, k\-HLTLog\-Fatal, Ali\-HLTLogging::Logging(), Set\-Coordinates(), and Set\-Equippment\-ID(). + +\footnotesize\begin{verbatim}218 { +219 fSendChannelData = kFALSE; +220 fPrintInfo = kFALSE; +221 fRawMemoryReader = new AliRawReaderMemory(); +222 fPHOSRawStream = new AliCaloRawStream(fRawMemoryReader,"PHOS"); +223 fPHOSRawStream->SetOldRCUFormat(kFALSE); +224 int iResult=0; +225 TString argument=""; +226 Bool_t isSetEquippmentID = kFALSE; +227 +228 for(int i=0; i=0; i++) +229 { +230 argument=argv[i]; +231 +232 if (argument.IsNull()) +233 { +234 continue; +235 } +236 +237 if (argument.CompareTo("-equipmentID") == 0) +238 { +239 cout << "AliHLTPHOSDDLDecoderComponent:DoInit argument = -equipmentID " <SetEquipmentID(fEquippmentID); +245 SetEquippmentID(fEquippmentID); +246 SetCoordinates(fEquippmentID); +247 isSetEquippmentID = kTRUE; +248 } +249 else +250 { +251 iResult= -1; +252 Logging( kHLTLogFatal, "HLT::AliHLTPHOSRcuHistogramProducerComponent::DoInt( int argc, const char** argv )", "Missing argument", +253 "The argument -equippmentID expects a number"); +254 return iResult; +255 } +256 } +257 +258 +259 if (argument.CompareTo("-datatype") == 0) +260 { +261 if(i+1 <= argc) +262 { +263 // i++; +264 argument=argv[i+1]; +265 if(argument.CompareTo("channeldata") == 0) +266 { +267 cout << "AliHLTPHOSDDLDecoderComponent::DoIni setting sendChannelData = kTRUE "<< endl; +268 fSendChannelData = kTRUE; +269 } +270 } +271 } +272 +273 +274 if (argument.CompareTo("-printinfo") == 0) +275 { +276 if(i+1 <= argc) +277 { +278 argument=argv[i+1]; +279 fPrintInfoFrequncy = atoi(argv[i+1]); +280 fPrintInfo = kTRUE; +281 cout << "AliHLTPHOSDDLDecoderComponent::DoIni setting printinfo = kTRUE, with update frequency every "<< fPrintInfoFrequncy << "th event" <"); +297 iResult = -2; +298 } +299 +300 +301 return 0; +302 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!GetComponentID@{GetComponentID}} +\index{GetComponentID@{GetComponentID}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTPHOSDDLDecoder\-Component::Get\-Component\-ID ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a10} + + +Get the id of the component. Each component is identified by a unique id. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]component id (string) \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a9})}. + +Definition at line 87 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +\footnotesize\begin{verbatim}88 { +89 return "PhosDDLDecoder"; +90 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!GetEquippmentID@{GetEquippmentID}} +\index{GetEquippmentID@{GetEquippmentID}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt16\_\-t} Ali\-HLTPHOSDDLDecoder\-Component::Get\-Equippment\-ID ()}\label{classAliHLTPHOSDDLDecoderComponent_a8} + + + + +Definition at line 314 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +\footnotesize\begin{verbatim}315 { +316 return fEquippmentID; +317 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!GetInputDataTypes@{GetInputDataTypes}} +\index{GetInputDataTypes@{GetInputDataTypes}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSDDLDecoder\-Component::Get\-Input\-Data\-Types (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&)\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a11} + + + + +Definition at line 95 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID. + +\footnotesize\begin{verbatim}96 { +97 const AliHLTComponentDataType* pType=fgkInputDataTypes; +98 while (pType->fID!=0) { +99 list.push_back(*pType); +100 pType++; +101 } +102 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!GetOutputDataSize@{GetOutputDataSize}} +\index{GetOutputDataSize@{GetOutputDataSize}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSDDLDecoder\-Component::Get\-Output\-Data\-Size (unsigned long \& {\em const\-Base}, double \& {\em input\-Multiplier})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a13} + + +Get a ratio by how much the data volume is shrinked or enhanced. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em const\-Base}]{\em return\/}: additive part, independent of the input data volume \item[{\em input\-Multiplier}]{\em return\/}: multiplication ratio \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]values in the reference variables \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a12})}. + +Definition at line 111 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +\footnotesize\begin{verbatim}113 { +114 constBase = 30; +115 inputMultiplier = 1; +116 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!GetOutputDataType@{GetOutputDataType}} +\index{GetOutputDataType@{GetOutputDataType}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} Ali\-HLTPHOSDDLDecoder\-Component::Get\-Output\-Data\-Type ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLDecoderComponent_a12} + + +Get the output data type of the component. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]output data type \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a11})}. + +Definition at line 105 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +\footnotesize\begin{verbatim}106 { +107 return AliHLTPHOSDefinitions::gkCellEnergyDataType; +108 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSDDLDecoder\-Component}\& Ali\-HLTPHOSDDLDecoder\-Component::operator= (const {\bf Ali\-HLTPHOSDDLDecoder\-Component} \&)\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTPHOSDDLDecoderComponent_a3} + + + + +Definition at line 26 of file Ali\-HLTPHOSDDLDecoder\-Component.h. + +\footnotesize\begin{verbatim}27 { +28 return *this; +29 }; +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}!SetCoordinates@{SetCoordinates}} +\index{SetCoordinates@{SetCoordinates}!AliHLTPHOSDDLDecoderComponent@{Ali\-HLTPHOSDDLDecoder\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSDDLDecoder\-Component::Set\-Coordinates ({\bf Ali\-HLTUInt16\_\-t} {\em equippment\-ID})}\label{classAliHLTPHOSDDLDecoderComponent_a9} + + + + +Definition at line 321 of file Ali\-HLTPHOSDDLDecoder\-Component.cxx. + +References f\-Equippment\-ID, f\-Module\-ID, f\-Rcu\-X, f\-Rcu\-XOffset, f\-Rcu\-Z, f\-Rcu\-ZOffset, N\_\-XCOLUMNS\_\-RCU, and N\_\-ZROWS\_\-RCU. + +Referenced by Do\-Init(). + +\footnotesize\begin{verbatim}322 { +323 int rcuIndex = (fEquippmentID - 1792)%N_RCUS_PER_MODULE; +324 fModuleID = (fEquippmentID -1792 -rcuIndex)/N_RCUS_PER_MODULE; +325 +326 if(rcuIndex == 0) +327 { +328 fRcuX = 0; +329 fRcuZ = 0; +330 } +331 +332 if(rcuIndex == 1) +333 { +334 fRcuX = 0; +335 fRcuZ = 1; +336 } +337 +338 if(rcuIndex == 2) +339 { +340 fRcuX = 1; +341 fRcuZ = 0; +342 } +343 +344 if(rcuIndex == 3) +345 { +346 fRcuX = 1; +347 fRcuZ = 1; +348 } +349 +350 +351 +352 fRcuZOffset = N_ZROWS_RCU*fRcuZ; +353 fRcuXOffset = N_XCOLUMNS_RCU*fRcuX; +354 +355 cout <<"********InitInfo************"<< endl; +356 cout <<"AliHLTPHOSDDLDecoderComponent::SetCoordinate"<< endl; +357 cout <<"Equpippment ID =\t"<< fEquippmentID <$} + +Inheritance diagram for Ali\-HLTPHOSDDLPacked\-File\-Writer::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTPHOSDDLPackedFileWriter} +\end{center} +\end{figure} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSDDLPacked\-File\-Writer} () +\item +{\bf $\sim$Ali\-HLTPHOSDDLPacked\-File\-Writer} () +\item +virtual int {\bf Write\-File} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, int evnt\-Cnt) +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSDDLPackedFileWriter@{Ali\-HLTPHOSDDLPacked\-File\-Writer}!AliHLTPHOSDDLPackedFileWriter@{AliHLTPHOSDDLPackedFileWriter}} +\index{AliHLTPHOSDDLPackedFileWriter@{AliHLTPHOSDDLPackedFileWriter}!AliHLTPHOSDDLPackedFileWriter@{Ali\-HLTPHOSDDLPacked\-File\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSDDLPacked\-File\-Writer::Ali\-HLTPHOSDDLPacked\-File\-Writer ()}\label{classAliHLTPHOSDDLPackedFileWriter_a0} + + + + +Definition at line 4 of file Ali\-HLTPHOSDDLPacked\-File\-Writer.cxx. + +\footnotesize\begin{verbatim}5 { +6 +7 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSDDLPackedFileWriter@{Ali\-HLTPHOSDDLPacked\-File\-Writer}!~AliHLTPHOSDDLPackedFileWriter@{$\sim$AliHLTPHOSDDLPackedFileWriter}} +\index{~AliHLTPHOSDDLPackedFileWriter@{$\sim$AliHLTPHOSDDLPackedFileWriter}!AliHLTPHOSDDLPackedFileWriter@{Ali\-HLTPHOSDDLPacked\-File\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSDDLPacked\-File\-Writer::$\sim${\bf Ali\-HLTPHOSDDLPacked\-File\-Writer} ()}\label{classAliHLTPHOSDDLPackedFileWriter_a1} + + + + +Definition at line 10 of file Ali\-HLTPHOSDDLPacked\-File\-Writer.cxx. + +\footnotesize\begin{verbatim}11 { +12 +13 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTPHOSDDLPackedFileWriter@{Ali\-HLTPHOSDDLPacked\-File\-Writer}!WriteFile@{WriteFile}} +\index{WriteFile@{WriteFile}!AliHLTPHOSDDLPackedFileWriter@{Ali\-HLTPHOSDDLPacked\-File\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSDDLPacked\-File\-Writer::Write\-File (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, int {\em evnt\-Cnt})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSDDLPackedFileWriter_a2} + + + + +Definition at line 17 of file Ali\-HLTPHOSDDLPacked\-File\-Writer.cxx. + +\footnotesize\begin{verbatim}19 { +20 return 0; +21 } +\end{verbatim}\normalsize + + + + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSDDLPacked\-File\-Writer.h}\item +{\bf Ali\-HLTPHOSDDLPacked\-File\-Writer.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSDefinitions.tex b/HLT/PHOS/latex/classAliHLTPHOSDefinitions.tex new file mode 100644 index 00000000000..313a662737f --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSDefinitions.tex @@ -0,0 +1,88 @@ +\section{Ali\-HLTPHOSDefinitions Class Reference} +\label{classAliHLTPHOSDefinitions}\index{AliHLTPHOSDefinitions@{AliHLTPHOSDefinitions}} +{\tt \#include $<$Ali\-HLTPHOSDefinitions.h$>$} + +\subsection*{Static Public Attributes} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf gk\-Cell\-Energy\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'C','E','L','L','E','N','E','R'\},\{'P','H','O','S'\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf gk\-DDLPacked\-Raw\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'D','D','L','\_\-','R','W','P','K'\},\{'P','H','O','S'\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf gk\-Cell\-Energy\-Histogram\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'E','N','E','R','H','I','S','T'\},\{'P','H','O','S'\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf gk\-Cell\-Average\-Energy\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'E','N','E','R','A','V','E','R'\},\{'P','H','O','S'\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf gk\-Cell\-Accumulated\-Energy\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'E','N','E','R','A','C','C','U'\},\{'P','H','O','S'\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf gk\-Cell\-Timing\-Histogram\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'T','I','M','E','H','I','S','T'\},\{'P','H','O','S'\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf gk\-Cell\-Timing\-Average\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'T','I','M','E','A','V','E','R'\},\{'P','H','O','S'\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf gk\-Cell\-Channel\-Data\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'C','H','A','N','D','A','T','A'\},\{'P','H','O','S'\}\} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}!gkCellAccumulatedEnergyDataType@{gkCellAccumulatedEnergyDataType}} +\index{gkCellAccumulatedEnergyDataType@{gkCellAccumulatedEnergyDataType}!AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSDefinitions::gk\-Cell\-Accumulated\-Energy\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'E','N','E','R','A','C','C','U'\},\{'P','H','O','S'\}\}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSDefinitions_s4} + + +Histogram for per cell/gain energy distribution + +Definition at line 36 of file Ali\-HLTPHOSDefinitions.cxx.\index{AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}!gkCellAverageEnergyDataType@{gkCellAverageEnergyDataType}} +\index{gkCellAverageEnergyDataType@{gkCellAverageEnergyDataType}!AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSDefinitions::gk\-Cell\-Average\-Energy\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'E','N','E','R','A','V','E','R'\},\{'P','H','O','S'\}\}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSDefinitions_s3} + + +Histogram for per cell/gain energy distribution + +Definition at line 35 of file Ali\-HLTPHOSDefinitions.cxx.\index{AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}!gkCellChannelDataDataType@{gkCellChannelDataDataType}} +\index{gkCellChannelDataDataType@{gkCellChannelDataDataType}!AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSDefinitions::gk\-Cell\-Channel\-Data\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'C','H','A','N','D','A','T','A'\},\{'P','H','O','S'\}\}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSDefinitions_s7} + + +Time dependent signal from the readout channels + +Definition at line 39 of file Ali\-HLTPHOSDefinitions.cxx.\index{AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}!gkCellEnergyDataType@{gkCellEnergyDataType}} +\index{gkCellEnergyDataType@{gkCellEnergyDataType}!AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSDefinitions::gk\-Cell\-Energy\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'C','E','L','L','E','N','E','R'\},\{'P','H','O','S'\}\}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSDefinitions_s0} + + +Reconstructed cell/crystal energies + +Definition at line 33 of file Ali\-HLTPHOSDefinitions.cxx.\index{AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}!gkCellEnergyHistogramDataType@{gkCellEnergyHistogramDataType}} +\index{gkCellEnergyHistogramDataType@{gkCellEnergyHistogramDataType}!AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSDefinitions::gk\-Cell\-Energy\-Histogram\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'E','N','E','R','H','I','S','T'\},\{'P','H','O','S'\}\}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSDefinitions_s2} + + +Histogram for per cell/gain energy distribution + +Definition at line 34 of file Ali\-HLTPHOSDefinitions.cxx.\index{AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}!gkCellTimingAverageDataType@{gkCellTimingAverageDataType}} +\index{gkCellTimingAverageDataType@{gkCellTimingAverageDataType}!AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSDefinitions::gk\-Cell\-Timing\-Average\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'T','I','M','E','A','V','E','R'\},\{'P','H','O','S'\}\}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSDefinitions_s6} + + +Histogram for per cell/gain time distribution + +Definition at line 38 of file Ali\-HLTPHOSDefinitions.cxx.\index{AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}!gkCellTimingHistogramDataType@{gkCellTimingHistogramDataType}} +\index{gkCellTimingHistogramDataType@{gkCellTimingHistogramDataType}!AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSDefinitions::gk\-Cell\-Timing\-Histogram\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'T','I','M','E','H','I','S','T'\},\{'P','H','O','S'\}\}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSDefinitions_s5} + + +Histogram for per cell/gain time distribution + +Definition at line 37 of file Ali\-HLTPHOSDefinitions.cxx.\index{AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}!gkDDLPackedRawDataType@{gkDDLPackedRawDataType}} +\index{gkDDLPackedRawDataType@{gkDDLPackedRawDataType}!AliHLTPHOSDefinitions@{Ali\-HLTPHOSDefinitions}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSDefinitions::gk\-DDLPacked\-Raw\-Data\-Type} = \{ sizeof({\bf Ali\-HLTComponent\-Data\-Type}), \{'D','D','L','\_\-','R','W','P','K'\},\{'P','H','O','S'\}\}\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSDefinitions_s1} + + +DDL raw data on the RCU data format + +Definition at line 32 of file Ali\-HLTPHOSDefinitions.cxx. + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSDefinitions.h}\item +{\bf Ali\-HLTPHOSDefinitions.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSFileWriter.eps b/HLT/PHOS/latex/classAliHLTPHOSFileWriter.eps new file mode 100644 index 00000000000..4622a5e0719 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSFileWriter.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 90.9091 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 5.5 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 2 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTPHOSFileWriter) cw +(AliHLTPHOSCellEnergiesFileWriter) cw +(AliHLTPHOSDDLPackedFileWriter) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTPHOSFileWriter) 0.5 1 box + (AliHLTPHOSCellEnergiesFileWriter) 0 0 box + (AliHLTPHOSDDLPackedFileWriter) 1 0 box + +% ----- relations ----- + +solid +1 0.5 0.25 out +solid +0 1 1 conn +solid +0 0 0.75 in +solid +0 1 0.75 in diff --git a/HLT/PHOS/latex/classAliHLTPHOSFileWriter.tex b/HLT/PHOS/latex/classAliHLTPHOSFileWriter.tex new file mode 100644 index 00000000000..d1ccae2b9ab --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSFileWriter.tex @@ -0,0 +1,198 @@ +\section{Ali\-HLTPHOSFile\-Writer Class Reference} +\label{classAliHLTPHOSFileWriter}\index{AliHLTPHOSFileWriter@{AliHLTPHOSFileWriter}} +{\tt \#include $<$Ali\-HLTPHOSFile\-Writer.h$>$} + +Inheritance diagram for Ali\-HLTPHOSFile\-Writer::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTPHOSFileWriter} +\end{center} +\end{figure} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSFile\-Writer} () +\item +virtual {\bf $\sim$Ali\-HLTPHOSFile\-Writer} () +\item +void {\bf Make\-Filename} (int event\-Nr, const {\bf Ali\-HLTComponent\-Data\-Type} \&data\-Type) +\item +void {\bf Set\-Directory} (string \&directory) +\end{CompactItemize} +\subsection*{Protected Attributes} +\begin{CompactItemize} +\item +int {\bf f\-Current\-Evnt\-Cnt} +\item +FILE $\ast$ {\bf f\-Current\-File} +\item +string {\bf f\-Directory} +\item +string {\bf f\-Current\-Filename} +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSFile\-Writer} (const {\bf Ali\-HLTPHOSFile\-Writer} \&) +\item +{\bf Ali\-HLTPHOSFile\-Writer} \& {\bf operator=} (const {\bf Ali\-HLTPHOSFile\-Writer} \&) +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSFileWriter@{Ali\-HLTPHOSFile\-Writer}!AliHLTPHOSFileWriter@{AliHLTPHOSFileWriter}} +\index{AliHLTPHOSFileWriter@{AliHLTPHOSFileWriter}!AliHLTPHOSFileWriter@{Ali\-HLTPHOSFile\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSFile\-Writer::Ali\-HLTPHOSFile\-Writer ()}\label{classAliHLTPHOSFileWriter_a0} + + + + +Definition at line 8 of file Ali\-HLTPHOSFile\-Writer.cxx. + +\footnotesize\begin{verbatim}8 :fCurrentEvntCnt(0), fCurrentFile(0), fDirectory(""), fCurrentFilename("") +9 { +10 +11 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSFileWriter@{Ali\-HLTPHOSFile\-Writer}!~AliHLTPHOSFileWriter@{$\sim$AliHLTPHOSFileWriter}} +\index{~AliHLTPHOSFileWriter@{$\sim$AliHLTPHOSFileWriter}!AliHLTPHOSFileWriter@{Ali\-HLTPHOSFile\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSFile\-Writer::$\sim${\bf Ali\-HLTPHOSFile\-Writer} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSFileWriter_a1} + + + + +Definition at line 14 of file Ali\-HLTPHOSFile\-Writer.cxx. + +\footnotesize\begin{verbatim}15 { +16 +17 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSFileWriter@{Ali\-HLTPHOSFile\-Writer}!AliHLTPHOSFileWriter@{AliHLTPHOSFileWriter}} +\index{AliHLTPHOSFileWriter@{AliHLTPHOSFileWriter}!AliHLTPHOSFileWriter@{Ali\-HLTPHOSFile\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSFile\-Writer::Ali\-HLTPHOSFile\-Writer (const {\bf Ali\-HLTPHOSFile\-Writer} \&)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSFileWriter_d0} + + +Never to be called + +\subsection{Member Function Documentation} +\index{AliHLTPHOSFileWriter@{Ali\-HLTPHOSFile\-Writer}!MakeFilename@{MakeFilename}} +\index{MakeFilename@{MakeFilename}!AliHLTPHOSFileWriter@{Ali\-HLTPHOSFile\-Writer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSFile\-Writer::Make\-Filename (int {\em event\-Nr}, const {\bf Ali\-HLTComponent\-Data\-Type} \& {\em data\-Type})}\label{classAliHLTPHOSFileWriter_a2} + + + + +Definition at line 27 of file Ali\-HLTPHOSFile\-Writer.cxx. + +References f\-Current\-Filename, f\-Directory, Ali\-HLTComponent\-Data\-Type::f\-ID, Ali\-HLTComponent\-Data\-Type::f\-Origin, k\-Ali\-HLTComponent\-Data\-Typef\-IDsize, and k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size. + +\footnotesize\begin{verbatim}28 { +29 int charPos =fDirectory.size() +1; +30 +31 fCurrentFilename.erase(charPos); +32 +33 char tmpOr[kAliHLTComponentDataTypefOriginSize+1]; +34 char tmpID[kAliHLTComponentDataTypefIDsize+1]; +35 char tmpEvntNr[30]; +36 +37 for(int i = 0; i< kAliHLTComponentDataTypefOriginSize; i++) +38 { +39 tmpOr[i] = dataType.fOrigin[i]; +40 } +41 tmpOr[kAliHLTComponentDataTypefOriginSize] = '\0'; +42 +43 for(int j = 0; j< kAliHLTComponentDataTypefIDsize; j++) +44 { +45 tmpID[j] = dataType.fID[j]; +46 } +47 tmpID[kAliHLTComponentDataTypefIDsize] = '\0'; +48 +49 fCurrentFilename.insert(charPos, tmpOr); +50 charPos+= kAliHLTComponentDataTypefOriginSize; +51 fCurrentFilename.insert(charPos, tmpID); +52 charPos = fCurrentFilename.size(); +53 sprintf(tmpEvntNr,"_%.16d", eventNr); +54 fCurrentFilename.insert(charPos, tmpEvntNr); +55 cout <<"AliHLTPHOSFileWriterComponent::MakeFilename, filename = " << fCurrentFilename <$} + +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSFile\-Writer\-Component} () +\item +virtual {\bf $\sim$Ali\-HLTPHOSFile\-Writer\-Component} () +\item +int {\bf Add\-Data\-Type} (string data\-Type) +\item +virtual int {\bf Deinit} () +\item +virtual int {\bf Do\-Deinit} () +\item +virtual const char $\ast$ {\bf Get\-Component\-ID} () +\item +virtual void {\bf Get\-Input\-Data\-Types} (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&) +\item +virtual {\bf Ali\-HLTComponent\-Data\-Type} {\bf Get\-Output\-Data\-Type} () +\item +virtual void {\bf Get\-Output\-Data\-Size} (unsigned long \&const\-Base, double \&input\-Multiplier) +\item +virtual {\bf Ali\-HLTComponent} $\ast$ {\bf Spawn} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +Bool\_\-t {\bf Is\-Registered\-Data\-Type} (const {\bf Ali\-HLTComponent\-Data\-Type} \&) +\item +{\bf Ali\-HLTPHOSFile\-Writer\-Component} (const {\bf Ali\-HLTPHOSFile\-Writer\-Component} \&) +\item +{\bf Ali\-HLTPHOSFile\-Writer\-Component} \& {\bf operator=} (const {\bf Ali\-HLTPHOSFile\-Writer\-Component}) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSCell\-Energies\-File\-Writer} $\ast$ {\bf f\-Cell\-Energies\-File\-Writer\-Ptr} +\item +{\bf Ali\-HLTPHOSDDLPacked\-File\-Writer} $\ast$ {\bf f\-DDLPacked\-File\-Writer\-Ptr} +\item +string {\bf f\-Directory} +\item +string {\bf f\-Filename} +\item +{\bf Ali\-HLTComponent\-Data\-Type} {\bf f\-Data\-Types\-To\-File} [N\_\-DATATYPES] +\item +int {\bf f\-Event\-Count} +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf f\-Input\-Data\-Types} [$\,$] = \{{\bf k\-Ali\-HLTVoid\-Data\-Type},\{0,\char`\"{}\char`\"{},\char`\"{}\char`\"{}\}\} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSFileWriterComponent@{Ali\-HLTPHOSFile\-Writer\-Component}!AliHLTPHOSFileWriterComponent@{AliHLTPHOSFileWriterComponent}} +\index{AliHLTPHOSFileWriterComponent@{AliHLTPHOSFileWriterComponent}!AliHLTPHOSFileWriterComponent@{Ali\-HLTPHOSFile\-Writer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSFile\-Writer\-Component::Ali\-HLTPHOSFile\-Writer\-Component ()}\label{classAliHLTPHOSFileWriterComponent_a0} + + + + +Definition at line 37 of file Ali\-HLTPHOSFile\-Writer\-Component.cxx. + +References f\-Cell\-Energies\-File\-Writer\-Ptr, f\-Data\-Types\-To\-File, and f\-DDLPacked\-File\-Writer\-Ptr. + +\footnotesize\begin{verbatim}37 : AliHLTFileWriter(), fCellEnergiesFileWriterPtr(0) \ +38 , fDDLPackedFileWriterPtr(0), fDirectory(""),fFilename(""), fEventCount(0) +39 { +40 /* +41 *Default constructor +42 */ +43 for(int i=0; i$ \&)\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSFileWriterComponent_a6} + + + + +Definition at line 135 of file Ali\-HLTPHOSFile\-Writer\-Component.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID. + +\footnotesize\begin{verbatim}136 { +137 // see header file for documentation +138 const AliHLTComponentDataType* pType=fInputDataTypes; +139 while (pType->fID!=0) { +140 list.push_back(*pType); +141 pType++; +142 } +143 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSFileWriterComponent@{Ali\-HLTPHOSFile\-Writer\-Component}!GetOutputDataSize@{GetOutputDataSize}} +\index{GetOutputDataSize@{GetOutputDataSize}!AliHLTPHOSFileWriterComponent@{Ali\-HLTPHOSFile\-Writer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSFile\-Writer\-Component::Get\-Output\-Data\-Size (unsigned long \& {\em const\-Base}, double \& {\em input\-Multiplier})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSFileWriterComponent_a8} + + + + +Definition at line 153 of file Ali\-HLTPHOSFile\-Writer\-Component.cxx. + +\footnotesize\begin{verbatim}155 { +156 // see header file for documentation +157 constBase = 30; +158 inputMultiplier = 0.1; +159 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSFileWriterComponent@{Ali\-HLTPHOSFile\-Writer\-Component}!GetOutputDataType@{GetOutputDataType}} +\index{GetOutputDataType@{GetOutputDataType}!AliHLTPHOSFileWriterComponent@{Ali\-HLTPHOSFile\-Writer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} Ali\-HLTPHOSFile\-Writer\-Component::Get\-Output\-Data\-Type ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSFileWriterComponent_a7} + + + + +Definition at line 146 of file Ali\-HLTPHOSFile\-Writer\-Component.cxx. + +\footnotesize\begin{verbatim}147 { +148 // see header file for documentation +149 return AliHLTPHOSDefinitions::gkCellEnergyDataType; +150 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSFileWriterComponent@{Ali\-HLTPHOSFile\-Writer\-Component}!IsRegisteredDataType@{IsRegisteredDataType}} +\index{IsRegisteredDataType@{IsRegisteredDataType}!AliHLTPHOSFileWriterComponent@{Ali\-HLTPHOSFile\-Writer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Bool\_\-t Ali\-HLTPHOSFile\-Writer\-Component::Is\-Registered\-Data\-Type (const {\bf Ali\-HLTComponent\-Data\-Type} \&)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSFileWriterComponent_d0} + + + + +Definition at line 162 of file Ali\-HLTPHOSFile\-Writer\-Component.cxx. + +References f\-Data\-Types\-To\-File. + +\footnotesize\begin{verbatim}163 { +164 // see header file for documentation +165 Bool_t tmp = kFALSE; +166 for(int i =0; i$} + +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSGet\-Event\-Button} () +\item +{\bf Ali\-HLTPHOSGet\-Event\-Button} (TGGroup\-Frame $\ast$gf\-Ptr, char $\ast$name, char opt='e') +\item +{\bf Ali\-HLTPHOSGet\-Event\-Button} (TGComposite\-Frame $\ast$gf\-Ptr, char $\ast$name, char opt='e') +\item +virtual Bool\_\-t {\bf Handle\-Button} (Event\_\-t $\ast$event) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSOnline\-Display} $\ast$ {\bf online\-Display\-Ptr} +\item +char {\bf f\-Option} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}!AliHLTPHOSGetEventButton@{AliHLTPHOSGetEventButton}} +\index{AliHLTPHOSGetEventButton@{AliHLTPHOSGetEventButton}!AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSGet\-Event\-Button::Ali\-HLTPHOSGet\-Event\-Button ()}\label{classAliHLTPHOSGetEventButton_a0} + + + + +Definition at line 27 of file Ali\-HLTPHOSGet\-Event\-Button.cxx. + +\footnotesize\begin{verbatim}28 { +29 printf("\nYou cannot initalize the HetEventButton without parameters\n"); +30 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}!AliHLTPHOSGetEventButton@{AliHLTPHOSGetEventButton}} +\index{AliHLTPHOSGetEventButton@{AliHLTPHOSGetEventButton}!AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSGet\-Event\-Button::Ali\-HLTPHOSGet\-Event\-Button (TGGroup\-Frame $\ast$ {\em gf\-Ptr}, char $\ast$ {\em name}, char {\em opt} = {\tt 'e'})}\label{classAliHLTPHOSGetEventButton_a1} + + +\index{AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}!AliHLTPHOSGetEventButton@{AliHLTPHOSGetEventButton}} +\index{AliHLTPHOSGetEventButton@{AliHLTPHOSGetEventButton}!AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSGet\-Event\-Button::Ali\-HLTPHOSGet\-Event\-Button (TGComposite\-Frame $\ast$ {\em gf\-Ptr}, char $\ast$ {\em name}, char {\em opt} = {\tt 'e'})}\label{classAliHLTPHOSGetEventButton_a2} + + + + +Definition at line 33 of file Ali\-HLTPHOSGet\-Event\-Button.cxx. + +References f\-Option, and online\-Display\-Ptr. + +\footnotesize\begin{verbatim}33 :TGTextButton(gfPtr, name) +34 { +35 fOption = opt; +36 onlineDisplayPtr = (AliHLTPHOSOnlineDisplay *)gfPtr; +37 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}!HandleButton@{HandleButton}} +\index{HandleButton@{HandleButton}!AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Bool\_\-t Ali\-HLTPHOSGet\-Event\-Button::Handle\-Button (Event\_\-t $\ast$ {\em event})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSGetEventButton_a3} + + + + +Definition at line 41 of file Ali\-HLTPHOSGet\-Event\-Button.cxx. + +References Ali\-HLTPHOSOnline\-Display::Get\-Histogram(), Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event(), and online\-Display\-Ptr. + +\footnotesize\begin{verbatim}42 { +43 if(event->fType == kButtonPress) +44 { +45 switch (fOption) +46 { +47 case 'e': +48 onlineDisplayPtr->GetNextEvent(); +49 cout << "updating Eventdisplay" << endl; +50 break; +51 +52 case 'h': +53 onlineDisplayPtr->GetHistogram(); +54 cout << "updating Histograms" << endl; +55 break; +56 case 'r': +57 onlineDisplayPtr-> GetNextEventRaw(); +58 // cout << "updating RawdataDisplay" << endl; +59 } +60 // onlineDisplayPtr->GetNextEvent(); +61 } +62 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}!fOption@{fOption}} +\index{fOption@{fOption}!AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char {\bf Ali\-HLTPHOSGet\-Event\-Button::f\-Option}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSGetEventButton_r1} + + + + +Definition at line 21 of file Ali\-HLTPHOSGet\-Event\-Button.h. + +Referenced by Ali\-HLTPHOSGet\-Event\-Button().\index{AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}!onlineDisplayPtr@{onlineDisplayPtr}} +\index{onlineDisplayPtr@{onlineDisplayPtr}!AliHLTPHOSGetEventButton@{Ali\-HLTPHOSGet\-Event\-Button}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSOnline\-Display}$\ast$ {\bf Ali\-HLTPHOSGet\-Event\-Button::online\-Display\-Ptr}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSGetEventButton_r0} + + + + +Definition at line 20 of file Ali\-HLTPHOSGet\-Event\-Button.h. + +Referenced by Ali\-HLTPHOSGet\-Event\-Button(), and Handle\-Button(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +Online\-Display/{\bf Ali\-HLTPHOSGet\-Event\-Button.h}\item +Online\-Display/{\bf Ali\-HLTPHOSGet\-Event\-Button.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSHistogramProducerComponent.eps b/HLT/PHOS/latex/classAliHLTPHOSHistogramProducerComponent.eps new file mode 100644 index 00000000000..54f874a6d44 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSHistogramProducerComponent.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 301.887 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.65625 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTPHOSHistogramProducerComponent) cw +(AliHLTProcessor) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTPHOSHistogramProducerComponent) 0 0 box + (AliHLTProcessor) 0 1 box + (AliHLTComponent) 0 2 box + (AliHLTLogging) 0 3 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in +solid +0 0 1 out +solid +1 0 2 in +solid +0 0 2 out +solid +1 0 3 in diff --git a/HLT/PHOS/latex/classAliHLTPHOSHistogramProducerComponent.tex b/HLT/PHOS/latex/classAliHLTPHOSHistogramProducerComponent.tex new file mode 100644 index 00000000000..ca42875383e --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSHistogramProducerComponent.tex @@ -0,0 +1,619 @@ +\section{Ali\-HLTPHOSHistogram\-Producer\-Component Class Reference} +\label{classAliHLTPHOSHistogramProducerComponent}\index{AliHLTPHOSHistogramProducerComponent@{AliHLTPHOSHistogramProducerComponent}} +{\tt \#include $<$Ali\-HLTPHOSHistogram\-Producer\-Component.h$>$} + +Inheritance diagram for Ali\-HLTPHOSHistogram\-Producer\-Component::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4cm]{classAliHLTPHOSHistogramProducerComponent} +\end{center} +\end{figure} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSHistogram\-Producer\-Component} () +\item +virtual {\bf $\sim$Ali\-HLTPHOSHistogram\-Producer\-Component} () +\item +{\bf Ali\-HLTPHOSHistogram\-Producer\-Component} (const {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} \&) +\item +{\bf Ali\-HLTPHOSHistogram\-Producer\-Component} \& {\bf operator=} (const {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} \&) +\item +virtual int {\bf Do\-Init} (int argc=0, const char $\ast$$\ast$argv=0) +\item +virtual int {\bf Deinit} () +\item +virtual int {\bf Do\-Deinit} () +\item +virtual int {\bf Do\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks) +\item +void {\bf Dump\-Data} (int gain=0) +\item +const int {\bf Get\-Equippment\-Id} () const +\item +virtual const char $\ast$ {\bf Get\-Component\-ID} () +\item +virtual void {\bf Get\-Input\-Data\-Types} (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&) +\item +virtual {\bf Ali\-HLTComponent\-Data\-Type} {\bf Get\-Output\-Data\-Type} () +\item +virtual void {\bf Get\-Output\-Data\-Size} (unsigned long \&const\-Base, double \&input\-Multiplier) +\item +void {\bf Set\-Equippment\-Id} (int id=0) +\item +virtual {\bf Ali\-HLTComponent} $\ast$ {\bf Spawn} () +\end{CompactItemize} +\subsection*{Protected Member Functions} +\begin{CompactItemize} +\item +void {\bf Reset} () +\item +void {\bf Reset\-Data\-Ptr} () +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +Double\_\-t {\bf f\-Energy\-Average\-Values} [N\_\-ZROWS\_\-MOD][N\_\-XCOLUMNS\_\-MOD][N\_\-GAINS] +\item +Double\_\-t {\bf f\-Accumulated\-Values} [N\_\-ZROWS\_\-MOD][N\_\-XCOLUMNS\_\-MOD][N\_\-GAINS] +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Hits} [N\_\-ZROWS\_\-MOD][N\_\-XCOLUMNS\_\-MOD][N\_\-GAINS] +\item +int {\bf f\-Event\-Count} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Equippment\-ID} +\item +Double\_\-t {\bf f\-Tmp\-Channel\-Data} [ALTRO\_\-MAX\_\-SAMPLES] +\item +{\bf Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct} $\ast$ {\bf f\-Out\-Ptr} +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf fgk\-Input\-Data\-Types} [$\,$] = \{{\bf k\-Ali\-HLTVoid\-Data\-Type},\{0,\char`\"{}\char`\"{},\char`\"{}\char`\"{}\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf fgk\-Output\-Data\-Type} = {\bf k\-Ali\-HLTVoid\-Data\-Type} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!AliHLTPHOSHistogramProducerComponent@{AliHLTPHOSHistogramProducerComponent}} +\index{AliHLTPHOSHistogramProducerComponent@{AliHLTPHOSHistogramProducerComponent}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSHistogram\-Producer\-Component::Ali\-HLTPHOSHistogram\-Producer\-Component ()}\label{classAliHLTPHOSHistogramProducerComponent_a0} + + +Default constructor + +Definition at line 41 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References Reset(). + +\footnotesize\begin{verbatim}41 :AliHLTProcessor(), fEventCount(0), fEquippmentID(0) +42 { +46 Reset(); +47 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!~AliHLTPHOSHistogramProducerComponent@{$\sim$AliHLTPHOSHistogramProducerComponent}} +\index{~AliHLTPHOSHistogramProducerComponent@{$\sim$AliHLTPHOSHistogramProducerComponent}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSHistogram\-Producer\-Component::$\sim${\bf Ali\-HLTPHOSHistogram\-Producer\-Component} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a1} + + +Default destructor + +Definition at line 50 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}51 { +55 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!AliHLTPHOSHistogramProducerComponent@{AliHLTPHOSHistogramProducerComponent}} +\index{AliHLTPHOSHistogramProducerComponent@{AliHLTPHOSHistogramProducerComponent}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSHistogram\-Producer\-Component::Ali\-HLTPHOSHistogram\-Producer\-Component (const {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} \&)}\label{classAliHLTPHOSHistogramProducerComponent_a2} + + +Copy constructor + +Definition at line 58 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}58 : AliHLTProcessor(), fEventCount(0), fEquippmentID(0) +59 { +63 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!Deinit@{Deinit}} +\index{Deinit@{Deinit}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSHistogram\-Producer\-Component::Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a5} + + +See base class for documenation + +Reimplemented from {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_a3})}. + +Definition at line 67 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}68 { +72 return 0; +73 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!DoDeinit@{DoDeinit}} +\index{DoDeinit@{DoDeinit}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a6} + + +Default method for the internal clean-up. The method is called by {\bf Deinit}{\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a5})} + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_b6})}. + +Definition at line 77 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References k\-HLTLog\-Info, and Ali\-HLTLogging::Logging(). + +\footnotesize\begin{verbatim}78 { +79 Logging(kHLTLogInfo, "HLT", "PHOS", ",AliHLTPHOSHistogramProducer DoDeinit"); +80 return 0; +81 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!DoEvent@{DoEvent}} +\index{DoEvent@{DoEvent}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a7} + + +This fucntion takes as input cell energies as input and accumulates Energy and the number of hits on a per channel basis and fills a four dimensional array [N\_\-MODULES][N\_\-ROWS\_\-MOD][N\_\-COLUMNS\_\-MOD][N\_\-GAINS]. Energy distribution histograms (root) are updatet continioulsy and written to root files at the end of run command (actually the \char`\"{}stop\char`\"{} command) + +Reimplemented from {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_d0})}. + +Definition at line 130 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References Ali\-HLTUInt8\_\-t, Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Accumulated\-Energies, f\-Accumulated\-Values, Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Cnt, Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Energy, f\-Event\-Count, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Gain, Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Hits, f\-Hits, Ali\-HLTComponent::Fill\-Block\-Data(), Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Module\-ID, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Module\-ID, Ali\-HLTComponent\-Block\-Data::f\-Offset, f\-Out\-Ptr, Ali\-HLTComponent\-Block\-Data::f\-Ptr, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Rcu\-X, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Rcu\-Z, Ali\-HLTComponent\-Block\-Data::f\-Size, Ali\-HLTComponent\-Block\-Data::f\-Specification, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Valid\-Data, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-X, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Z, k\-HLTLog\-Fatal, Ali\-HLTLogging::Logging(), N\_\-XCOLUMNS\_\-RCU, and N\_\-ZROWS\_\-RCU. + +\footnotesize\begin{verbatim}133 { +142 unsigned long ndx; +143 UInt_t offset = 0; +144 UInt_t mysize = 0; +145 UInt_t tSize = 0; +146 +147 const AliHLTComponentBlockData* iter = NULL; +148 AliHLTPHOSRcuCellEnergyDataStruct *cellDataPtr; +149 AliHLTUInt8_t* outBPtr; +150 outBPtr = outputPtr; +151 fOutPtr = (AliHLTPHOSModuleCellAccumulatedEnergyDataStruct*)outBPtr; +152 +153 int tmpCnt; +154 AliHLTUInt8_t tmpModuleID; +155 AliHLTUInt8_t tmpRcuX; +156 AliHLTUInt8_t tmpRcuZ; +157 +158 for( ndx = 0; ndx < evtData.fBlockCnt; ndx++ ) +159 { +160 iter = blocks+ndx; +161 cellDataPtr = (AliHLTPHOSRcuCellEnergyDataStruct*)( iter->fPtr); +162 tmpCnt = cellDataPtr->fCnt; +163 +164 tmpModuleID = cellDataPtr->fModuleID; +165 tmpRcuX = cellDataPtr->fRcuX ; +166 tmpRcuZ = cellDataPtr->fRcuZ; +167 fOutPtr->fModuleID = tmpModuleID; +168 int tmpGain; +169 int tmpZ; +170 int tmpX; +171 +172 // for(int i= 0; i< tmpCnt; i ++) +173 for(int i= 0; i <= tmpCnt; i ++) +174 { +175 tmpZ = cellDataPtr->fValidData[i].fZ + N_ZROWS_RCU*tmpRcuZ; +176 tmpX = cellDataPtr->fValidData[i].fX + N_XCOLUMNS_RCU*tmpRcuX; +177 +178 if(cellDataPtr->fValidData[i].fGain == HIGH_GAIN) +179 { +180 fAccumulatedValues[tmpZ][tmpX][HIGH_GAIN] += cellDataPtr->fValidData[i].fEnergy; +181 fHits[tmpZ][tmpX][HIGH_GAIN] ++; +182 } +183 else if(cellDataPtr->fValidData[i].fGain == LOW_GAIN) +184 { +185 fAccumulatedValues[tmpZ][tmpX][LOW_GAIN] += cellDataPtr->fValidData[i].fEnergy; +186 fHits[tmpZ][tmpX][LOW_GAIN] ++; +187 } +188 } +189 } +190 +191 +192 for(int z=0; z < N_ZROWS_MOD; z ++ ) +193 { +194 for(int x = 0; x < N_XCOLUMNS_MOD; x ++) +195 { +196 for(int gain =0; gain < N_GAINS; gain ++) +197 { +198 fOutPtr->fAccumulatedEnergies[z][x][gain] = fAccumulatedValues[z][x][gain]; +199 fOutPtr->fHits[z][x][gain] = fHits[z][x][gain]; +200 } +201 } +202 } +203 +204 +205 //pushing data to shared output memory +206 mysize += sizeof(AliHLTPHOSModuleCellAccumulatedEnergyDataStruct); +207 AliHLTComponentBlockData bd; +208 FillBlockData( bd ); +209 bd.fOffset = offset; +210 bd.fSize = mysize; +211 bd.fDataType = AliHLTPHOSDefinitions::gkCellAccumulatedEnergyDataType; +212 bd.fSpecification = 0xFFFFFFFF; +213 outputBlocks.push_back( bd ); +214 tSize += mysize; +215 outBPtr += mysize; +216 +217 if( tSize > size ) +218 { +219 Logging( kHLTLogFatal, "HLT::AliHLTHistogramProducerComponent::DoEvent", "Too much data", +220 "Data written over allowed buffer. Amount written: %lu, allowed amount: %lu." +221 , tSize, size ); +222 return EMSGSIZE; +223 } +224 +225 fEventCount++; +226 return 0; +227 }//end DoEvent +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!DoInit@{DoInit}} +\index{DoInit@{DoInit}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Init (int {\em argc} = {\tt 0}, const char $\ast$$\ast$ {\em argv} = {\tt 0})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a4} + + +Default method for the internal initialization. The method is called by {\bf Init}{\rm (p.\,\pageref{classAliHLTProcessor_a2})} + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_b5})}. + +Definition at line 231 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References Reset(). + +\footnotesize\begin{verbatim}232 { +233 Reset(); +234 if (argc==0 && argv==NULL) { +235 // this is currently just to get rid of the warning "unused parameter" +236 } +237 return 0; +238 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!DumpData@{DumpData}} +\index{DumpData@{DumpData}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSHistogram\-Producer\-Component::Dump\-Data (int {\em gain} = {\tt 0})}\label{classAliHLTPHOSHistogramProducerComponent_a8} + + + + +Definition at line 242 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References f\-Accumulated\-Values, and N\_\-GAINS. + +\footnotesize\begin{verbatim}243 { +244 +245 if(gain < 0 || gain > N_GAINS) +246 { +247 cout <<"AliHLTPHOSHistogramProducerComponent::DumpDat: Error, gain must be between " << 0 << "and" << N_GAINS << endl; +248 } +249 +250 for(int mod = 0; mod < N_MODULES; mod ++) +251 { +252 if(gain == HIGH_GAIN) +253 { +254 cout << endl <<" *********** MODULE" << mod << "****HIGH_GAIN" <<"************" << endl; +255 } +256 else if(gain == LOW_GAIN) +257 { +258 cout << endl <<" *********** MODULE" << mod << "****LOW_GAIN" <<"************" << endl; +259 } +260 +261 for(int row = 0; row < N_ROWS_MOD; row ++) +262 { +263 for(int col = 0; col < N_COLUMNS_MOD; col ++) +264 { +265 if(fAccumulatedValues[row][col][0] != 0) +266 { +267 cout << fAccumulatedValues[row][col][0] << "\t"; +268 } +269 } +270 } +271 } +272 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!GetComponentID@{GetComponentID}} +\index{GetComponentID@{GetComponentID}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTPHOSHistogram\-Producer\-Component::Get\-Component\-ID ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a10} + + +See base class for documenation + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a9})}. + +Definition at line 85 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}86 { +90 return "HistogramProducer"; +91 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!GetEquippmentId@{GetEquippmentId}} +\index{GetEquippmentId@{GetEquippmentId}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const int Ali\-HLTPHOSHistogram\-Producer\-Component::Get\-Equippment\-Id () const}\label{classAliHLTPHOSHistogramProducerComponent_a9} + + + + +Definition at line 317 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}318 { +319 return fEquippmentID; +320 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!GetInputDataTypes@{GetInputDataTypes}} +\index{GetInputDataTypes@{GetInputDataTypes}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSHistogram\-Producer\-Component::Get\-Input\-Data\-Types (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \& {\em list})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a11} + + +See base class for documenation + +Definition at line 95 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID. + +\footnotesize\begin{verbatim}96 { +100 const AliHLTComponentDataType* pType=fgkInputDataTypes; +101 while (pType->fID!=0) +102 { +103 list.push_back(*pType); +104 pType++; +105 } +106 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!GetOutputDataSize@{GetOutputDataSize}} +\index{GetOutputDataSize@{GetOutputDataSize}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSHistogram\-Producer\-Component::Get\-Output\-Data\-Size (unsigned long \& {\em const\-Base}, double \& {\em input\-Multiplier})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a13} + + +See base class for documenation + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a12})}. + +Definition at line 120 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}121 { +125 constBase = 30; +126 inputMultiplier = 1; +127 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!GetOutputDataType@{GetOutputDataType}} +\index{GetOutputDataType@{GetOutputDataType}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} Ali\-HLTPHOSHistogram\-Producer\-Component::Get\-Output\-Data\-Type ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a12} + + +See base class for documenation + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a11})}. + +Definition at line 110 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}111 { +115 return AliHLTPHOSDefinitions::gkCellEnergyDataType; +116 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSHistogram\-Producer\-Component}\& Ali\-HLTPHOSHistogram\-Producer\-Component::operator= (const {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} \&)\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTPHOSHistogramProducerComponent_a3} + + + + +Definition at line 21 of file Ali\-HLTPHOSHistogram\-Producer\-Component.h. + +\footnotesize\begin{verbatim}22 { +23 return *this; +24 }; +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!Reset@{Reset}} +\index{Reset@{Reset}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSHistogram\-Producer\-Component::Reset ()\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTPHOSHistogramProducerComponent_b0} + + + + +Definition at line 277 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References f\-Accumulated\-Values, f\-Hits, and f\-Tmp\-Channel\-Data. + +Referenced by Ali\-HLTPHOSHistogram\-Producer\-Component(), and Do\-Init(). + +\footnotesize\begin{verbatim}278 { +279 for(int mod = 0; mod < N_MODULES; mod ++) +280 { +281 for(int row = 0; row < N_ROWS_MOD; row ++) +282 { +283 for(int col = 0; col < N_COLUMNS_MOD; col ++) +284 { +285 for(int gain = 0; gain < N_GAINS; gain ++ ) +286 { +287 fAccumulatedValues[row][col][gain] = 0; +288 fHits[row][col][gain] = 0; +289 } +290 } +291 } +292 } +293 +294 for(int i = 0 ; i< ALTRO_MAX_SAMPLES; i++) +295 { +296 fTmpChannelData[i] = 0; +297 } +298 } // end Reset +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!ResetDataPtr@{ResetDataPtr}} +\index{ResetDataPtr@{ResetDataPtr}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSHistogram\-Producer\-Component::Reset\-Data\-Ptr ()\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTPHOSHistogramProducerComponent_b1} + + + + +Definition at line 301 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References f\-Tmp\-Channel\-Data. + +\footnotesize\begin{verbatim}302 { +303 for(int i = 0 ; i< ALTRO_MAX_SAMPLES; i++) +304 { +305 fTmpChannelData[i] = 0; +306 } +307 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!SetEquippmentId@{SetEquippmentId}} +\index{SetEquippmentId@{SetEquippmentId}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSHistogram\-Producer\-Component::Set\-Equippment\-Id (int {\em id} = {\tt 0})}\label{classAliHLTPHOSHistogramProducerComponent_a14} + + + + +Definition at line 311 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +References f\-Equippment\-ID. + +\footnotesize\begin{verbatim}312 { +313 fEquippmentID = id; +314 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!Spawn@{Spawn}} +\index{Spawn@{Spawn}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent} $\ast$ Ali\-HLTPHOSHistogram\-Producer\-Component::Spawn ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSHistogramProducerComponent_a15} + + +Spawn function. Each component must implement a spawn function to create a new instance of the class. Basically the function must return {\em new {\bf my\_\-class\_\-name}\/}. \begin{Desc} +\item[Returns:]new class instance \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a13})}. + +Definition at line 324 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}325 { +326 return new AliHLTPHOSHistogramProducerComponent; +327 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fAccumulatedValues@{fAccumulatedValues}} +\index{fAccumulatedValues@{fAccumulatedValues}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Double\_\-t {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::f\-Accumulated\-Values}[N\_\-ZROWS\_\-MOD][N\_\-XCOLUMNS\_\-MOD][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSHistogramProducerComponent_r1} + + +Accumulated energy for each readout channel of one RCU + +Definition at line 50 of file Ali\-HLTPHOSHistogram\-Producer\-Component.h. + +Referenced by Do\-Event(), Dump\-Data(), and Reset().\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fEnergyAverageValues@{fEnergyAverageValues}} +\index{fEnergyAverageValues@{fEnergyAverageValues}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Double\_\-t {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::f\-Energy\-Average\-Values}[N\_\-ZROWS\_\-MOD][N\_\-XCOLUMNS\_\-MOD][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSHistogramProducerComponent_r0} + + +Accumulated energy divided by the number of hits for each readout channel + +Definition at line 49 of file Ali\-HLTPHOSHistogram\-Producer\-Component.h.\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fEquippmentID@{fEquippmentID}} +\index{fEquippmentID@{fEquippmentID}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::f\-Equippment\-ID}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSHistogramProducerComponent_r4} + + +Eguippment ID as defined by ALICE + +Definition at line 54 of file Ali\-HLTPHOSHistogram\-Producer\-Component.h. + +Referenced by Set\-Equippment\-Id().\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fEventCount@{fEventCount}} +\index{fEventCount@{fEventCount}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::f\-Event\-Count}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSHistogramProducerComponent_r3} + + +Event counter, (mainly used for debugging) + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_r2})}. + +Definition at line 53 of file Ali\-HLTPHOSHistogram\-Producer\-Component.h. + +Referenced by Do\-Event().\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fgkInputDataTypes@{fgkInputDataTypes}} +\index{fgkInputDataTypes@{fgkInputDataTypes}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::fgk\-Input\-Data\-Types} = \{{\bf k\-Ali\-HLTVoid\-Data\-Type},\{0,\char`\"{}\char`\"{},\char`\"{}\char`\"{}\}\}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSHistogramProducerComponent_v0} + + +List of datatypes that can be given to this component + +Definition at line 28 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx.\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fgkOutputDataType@{fgkOutputDataType}} +\index{fgkOutputDataType@{fgkOutputDataType}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::fgk\-Output\-Data\-Type} = {\bf k\-Ali\-HLTVoid\-Data\-Type}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSHistogramProducerComponent_v1} + + +Output datatype produced by this component + +Definition at line 29 of file Ali\-HLTPHOSHistogram\-Producer\-Component.cxx.\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fHits@{fHits}} +\index{fHits@{fHits}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::f\-Hits}[N\_\-ZROWS\_\-MOD][N\_\-XCOLUMNS\_\-MOD][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSHistogramProducerComponent_r2} + + +Total number of hits for each cell of one RCU + +Definition at line 52 of file Ali\-HLTPHOSHistogram\-Producer\-Component.h. + +Referenced by Do\-Event(), and Reset().\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fOutPtr@{fOutPtr}} +\index{fOutPtr@{fOutPtr}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct}$\ast$ {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::f\-Out\-Ptr}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSHistogramProducerComponent_r6} + + +Pointer to outputbuffer to write results from the component into shared memory + +Definition at line 56 of file Ali\-HLTPHOSHistogram\-Producer\-Component.h. + +Referenced by Do\-Event().\index{AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}!fTmpChannelData@{fTmpChannelData}} +\index{fTmpChannelData@{fTmpChannelData}!AliHLTPHOSHistogramProducerComponent@{Ali\-HLTPHOSHistogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Double\_\-t {\bf Ali\-HLTPHOSHistogram\-Producer\-Component::f\-Tmp\-Channel\-Data}[ALTRO\_\-MAX\_\-SAMPLES]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSHistogramProducerComponent_r5} + + +Array to temporarily store dat fro a single altro channel + +Definition at line 55 of file Ali\-HLTPHOSHistogram\-Producer\-Component.h. + +Referenced by Reset(), and Reset\-Data\-Ptr(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSHistogram\-Producer\-Component.h}\item +{\bf Ali\-HLTPHOSHistogram\-Producer\-Component.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSModuleMergerComponent.eps b/HLT/PHOS/latex/classAliHLTPHOSModuleMergerComponent.eps new file mode 100644 index 00000000000..e85729c053a --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSModuleMergerComponent.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 333.333 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.5 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTPHOSModuleMergerComponent) cw +(AliHLTProcessor) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTPHOSModuleMergerComponent) 0 0 box + (AliHLTProcessor) 0 1 box + (AliHLTComponent) 0 2 box + (AliHLTLogging) 0 3 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in +solid +0 0 1 out +solid +1 0 2 in +solid +0 0 2 out +solid +1 0 3 in diff --git a/HLT/PHOS/latex/classAliHLTPHOSModuleMergerComponent.tex b/HLT/PHOS/latex/classAliHLTPHOSModuleMergerComponent.tex new file mode 100644 index 00000000000..28bec8ec829 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSModuleMergerComponent.tex @@ -0,0 +1,563 @@ +\section{Ali\-HLTPHOSModule\-Merger\-Component Class Reference} +\label{classAliHLTPHOSModuleMergerComponent}\index{AliHLTPHOSModuleMergerComponent@{AliHLTPHOSModuleMergerComponent}} +{\tt \#include $<$Ali\-HLTPHOSModule\-Merger\-Component.h$>$} + +Inheritance diagram for Ali\-HLTPHOSModule\-Merger\-Component::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4cm]{classAliHLTPHOSModuleMergerComponent} +\end{center} +\end{figure} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSModule\-Merger\-Component} () +\item +virtual {\bf $\sim$Ali\-HLTPHOSModule\-Merger\-Component} () +\item +{\bf Ali\-HLTPHOSModule\-Merger\-Component} (const {\bf Ali\-HLTPHOSModule\-Merger\-Component} \&) +\item +{\bf Ali\-HLTPHOSModule\-Merger\-Component} \& {\bf operator=} (const {\bf Ali\-HLTPHOSModule\-Merger\-Component} \&) +\item +virtual int {\bf Do\-Init} (int argc=0, const char $\ast$$\ast$argv=0) +\item +virtual int {\bf Deinit} () +\item +virtual int {\bf Do\-Deinit} () +\item +virtual int {\bf Do\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks) +\item +void {\bf Dump\-Data} (int gain=0) +\item +int {\bf Get\-Equippment\-Id} () +\item +virtual const char $\ast$ {\bf Get\-Component\-ID} () +\item +virtual void {\bf Get\-Input\-Data\-Types} (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&) +\item +virtual {\bf Ali\-HLTComponent\-Data\-Type} {\bf Get\-Output\-Data\-Type} () +\item +virtual void {\bf Get\-Output\-Data\-Size} (unsigned long \&const\-Base, double \&input\-Multiplier) +\item +void {\bf Set\-Equippment\-Id} (int id=0) +\item +virtual {\bf Ali\-HLTComponent} $\ast$ {\bf Spawn} () +\end{CompactItemize} +\subsection*{Protected Member Functions} +\begin{CompactItemize} +\item +void {\bf Reset} () +\item +void {\bf Reset\-Data\-Ptr} () +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +int {\bf f\-Event\-Count} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Equippment\-ID} +\item +Double\_\-t {\bf f\-Tmp\-Channel\-Data} [ALTRO\_\-MAX\_\-SAMPLES] +\item +Double\_\-t {\bf f\-Max\-Values} [N\_\-MODULES][N\_\-ROWS\_\-MOD][N\_\-COLUMNS\_\-MOD][N\_\-GAINS] +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf fgk\-Input\-Data\-Types} [$\,$] = \{{\bf k\-Ali\-HLTVoid\-Data\-Type},\{0,\char`\"{}\char`\"{},\char`\"{}\char`\"{}\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf fgk\-Output\-Data\-Type} = {\bf k\-Ali\-HLTVoid\-Data\-Type} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!AliHLTPHOSModuleMergerComponent@{AliHLTPHOSModuleMergerComponent}} +\index{AliHLTPHOSModuleMergerComponent@{AliHLTPHOSModuleMergerComponent}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSModule\-Merger\-Component::Ali\-HLTPHOSModule\-Merger\-Component ()}\label{classAliHLTPHOSModuleMergerComponent_a0} + + + + +Definition at line 31 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}31 :AliHLTProcessor(), fEventCount(0), fEquippmentID(0) +32 { +33 +34 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!~AliHLTPHOSModuleMergerComponent@{$\sim$AliHLTPHOSModuleMergerComponent}} +\index{~AliHLTPHOSModuleMergerComponent@{$\sim$AliHLTPHOSModuleMergerComponent}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSModule\-Merger\-Component::$\sim${\bf Ali\-HLTPHOSModule\-Merger\-Component} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a1} + + + + +Definition at line 37 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}38 { +39 +40 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!AliHLTPHOSModuleMergerComponent@{AliHLTPHOSModuleMergerComponent}} +\index{AliHLTPHOSModuleMergerComponent@{AliHLTPHOSModuleMergerComponent}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSModule\-Merger\-Component::Ali\-HLTPHOSModule\-Merger\-Component (const {\bf Ali\-HLTPHOSModule\-Merger\-Component} \&)}\label{classAliHLTPHOSModuleMergerComponent_a2} + + + + +Definition at line 43 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}43 : AliHLTProcessor(), fEventCount(0), fEquippmentID(0) +44 { +45 +46 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!Deinit@{Deinit}} +\index{Deinit@{Deinit}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSModule\-Merger\-Component::Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a5} + + +Clean-up function to terminate data processing. Clean-up of common data structures after data processing. The call is redirected to the internal method {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a6})} which can be overridden by the child class. + +Reimplemented from {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_a3})}. + +Definition at line 50 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}51 { +52 return 0; +53 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!DoDeinit@{DoDeinit}} +\index{DoDeinit@{DoDeinit}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSModule\-Merger\-Component::Do\-Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a6} + + +Default method for the internal clean-up. The method is called by {\bf Deinit}{\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a5})} + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_b6})}. + +Definition at line 57 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +References k\-HLTLog\-Info, and Ali\-HLTLogging::Logging(). + +\footnotesize\begin{verbatim}58 { +59 Logging(kHLTLogInfo, "HLT", "PHOS", ",AliHLTPHOSModuleMerger DoDeinit"); +60 return 0; +61 +62 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!DoEvent@{DoEvent}} +\index{DoEvent@{DoEvent}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a7} + + +The low-level data processing method for the component. This is the custom processing method and can be overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em blocks}]input data block descriptors \item[{\em trig\-Data}]trigger data structure \item[{\em output\-Ptr}]pointer to target buffer \item[{\em size}]{\em input\/}: size of target buffer {\em output\/}:size of produced data \item[{\em output\-Blocks}]list to receive output block descriptors \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Reimplemented from {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_d0})}. + +Definition at line 102 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +References Dump\-Data(), Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Cnt, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Energy, f\-Event\-Count, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Gain, f\-Max\-Values, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Module\-ID, Ali\-HLTComponent\-Block\-Data::f\-Ptr, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Rcu\-X, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Rcu\-Z, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Valid\-Data, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-X, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Z, N\_\-COLUMNS\_\-RCU, N\_\-ROWS\_\-RCU, N\_\-XCOLUMNS\_\-RCU, N\_\-ZROWS\_\-RCU, and Reset(). + +\footnotesize\begin{verbatim}105 { +106 //Merging of data from 4 RCUS to one module +107 +108 unsigned long ndx; +109 const AliHLTComponentBlockData* iter = NULL; +110 AliHLTPHOSRcuCellEnergyDataStruct *cellDataPtr; +111 +112 Reset(); +113 +114 for( ndx = 0; ndx < evtData.fBlockCnt; ndx++ ) +115 { +116 int tmpModuleID = 0; +117 int tmpRcuX = 0; +118 int tmpRcuZ = 0; +119 int tmpCnt = cellDataPtr->fCnt; +120 iter = blocks+ndx; +121 AliHLTPHOSRcuCellEnergyDataStruct *cellDataPtr = (AliHLTPHOSRcuCellEnergyDataStruct*)( iter->fPtr); +122 tmpModuleID = cellDataPtr->fModuleID; +123 tmpRcuX = cellDataPtr->fRcuX ; +124 tmpRcuZ = cellDataPtr->fRcuZ; +125 +126 for(int i= 0; i< tmpCnt; tmpCnt ++) +127 { +128 if(cellDataPtr->fValidData[i].fGain == HIGH_GAIN) +129 { +130 fMaxValues[tmpModuleID][ cellDataPtr->fValidData[i].fZ + N_ZROWS_RCU*tmpRcuZ][ cellDataPtr->fValidData[i].fX + N_XCOLUMNS_RCU*tmpRcuX][HIGH_GAIN] = cellDataPtr->fValidData[i].fEnergy; +131 } +132 else if(cellDataPtr->fValidData[i].fGain == LOW_GAIN) +133 { +134 fMaxValues[tmpModuleID][ cellDataPtr->fValidData[i].fZ + N_ROWS_RCU*tmpRcuZ][ cellDataPtr->fValidData[i].fX +N_COLUMNS_RCU*tmpRcuX][LOW_GAIN] = cellDataPtr->fValidData[i].fEnergy; +135 } +136 } +137 +138 } +139 +140 DumpData(1); +141 fEventCount++; +142 return 0; +143 +144 }//end DoEvent +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!DoInit@{DoInit}} +\index{DoInit@{DoInit}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSModule\-Merger\-Component::Do\-Init (int {\em argc} = {\tt 0}, const char $\ast$$\ast$ {\em argv} = {\tt 0})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a4} + + +Default method for the internal initialization. The method is called by {\bf Init}{\rm (p.\,\pageref{classAliHLTProcessor_a2})} + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_b5})}. + +Definition at line 148 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +References Reset(). + +\footnotesize\begin{verbatim}149 { +150 //See base classs for documenation +151 Reset(); +152 +153 if (argc==0 && argv==NULL) { +154 // this is currently just to get rid of the warning "unused parameter" +155 } +156 return 0; +157 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!DumpData@{DumpData}} +\index{DumpData@{DumpData}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSModule\-Merger\-Component::Dump\-Data (int {\em gain} = {\tt 0})}\label{classAliHLTPHOSModuleMergerComponent_a8} + + + + +Definition at line 161 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +References f\-Max\-Values, and N\_\-GAINS. + +Referenced by Do\-Event(). + +\footnotesize\begin{verbatim}162 { +163 if(gain < 0 || gain > N_GAINS) +164 { +165 cout <<"AliHLTPHOSModuleMergerComponent::DumpDat: Error, gain must be between " << 0 << "and" << N_GAINS << endl; +166 } +167 +168 for(int mod = 0; mod < N_MODULES; mod ++) +169 { +170 if(gain == HIGH_GAIN) +171 { +172 cout << endl <<" *********** MODULE" << mod << "****HIGH_GAIN" <<"************" << endl; +173 } +174 else if(gain == LOW_GAIN) +175 { +176 cout << endl <<" *********** MODULE" << mod << "****LOW_GAIN" <<"************" << endl; +177 } +178 +179 for(int row = 0; row < N_ROWS_MOD; row ++) +180 { +181 for(int col = 0; col < N_COLUMNS_MOD; col ++) +182 { +183 if( fMaxValues[mod][row][col][0] != 0) +184 { +185 cout << fMaxValues[mod][row][col][0] << "\t"; +186 } +187 } +188 } +189 } +190 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!GetComponentID@{GetComponentID}} +\index{GetComponentID@{GetComponentID}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTPHOSModule\-Merger\-Component::Get\-Component\-ID ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a10} + + +Get the id of the component. Each component is identified by a unique id. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]component id (string) \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a9})}. + +Definition at line 66 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}67 { +68 return "ModuleMerger"; +69 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!GetEquippmentId@{GetEquippmentId}} +\index{GetEquippmentId@{GetEquippmentId}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSModule\-Merger\-Component::Get\-Equippment\-Id ()}\label{classAliHLTPHOSModuleMergerComponent_a9} + + + + +Definition at line 235 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}236 { +237 return fEquippmentID; +238 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!GetInputDataTypes@{GetInputDataTypes}} +\index{GetInputDataTypes@{GetInputDataTypes}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSModule\-Merger\-Component::Get\-Input\-Data\-Types (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&)\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a11} + + + + +Definition at line 73 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID. + +\footnotesize\begin{verbatim}74 { +76 const AliHLTComponentDataType* pType=fgkInputDataTypes; +77 while (pType->fID!=0) +78 { +79 list.push_back(*pType); +80 pType++; +81 } +82 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!GetOutputDataSize@{GetOutputDataSize}} +\index{GetOutputDataSize@{GetOutputDataSize}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSModule\-Merger\-Component::Get\-Output\-Data\-Size (unsigned long \& {\em const\-Base}, double \& {\em input\-Multiplier})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a13} + + +Get a ratio by how much the data volume is shrinked or enhanced. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em const\-Base}]{\em return\/}: additive part, independent of the input data volume \item[{\em input\-Multiplier}]{\em return\/}: multiplication ratio \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]values in the reference variables \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a12})}. + +Definition at line 94 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}95 { +97 constBase = 30; +98 inputMultiplier = 1; +99 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!GetOutputDataType@{GetOutputDataType}} +\index{GetOutputDataType@{GetOutputDataType}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} Ali\-HLTPHOSModule\-Merger\-Component::Get\-Output\-Data\-Type ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a12} + + +Get the output data type of the component. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]output data type \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a11})}. + +Definition at line 86 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}87 { +89 return AliHLTPHOSDefinitions::gkCellEnergyDataType; +90 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSModule\-Merger\-Component}\& Ali\-HLTPHOSModule\-Merger\-Component::operator= (const {\bf Ali\-HLTPHOSModule\-Merger\-Component} \&)\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTPHOSModuleMergerComponent_a3} + + + + +Definition at line 17 of file Ali\-HLTPHOSModule\-Merger\-Component.h. + +\footnotesize\begin{verbatim}18 { +19 return *this; +20 }; +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!Reset@{Reset}} +\index{Reset@{Reset}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSModule\-Merger\-Component::Reset ()\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTPHOSModuleMergerComponent_b0} + + + + +Definition at line 195 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +References f\-Max\-Values, and f\-Tmp\-Channel\-Data. + +Referenced by Do\-Event(), and Do\-Init(). + +\footnotesize\begin{verbatim}196 { +197 for(int mod = 0; mod < N_MODULES; mod ++) +198 { +199 for(int row = 0; row < N_ROWS_MOD; row ++) +200 { +201 for(int col = 0; col < N_COLUMNS_MOD; col ++) +202 { +203 for(int gain = 0; gain < N_GAINS; gain ++ ) +204 { +205 +206 fMaxValues[mod][row][col][gain] = 0; +207 } +208 } +209 } +210 } +211 +212 for(int i = 0 ; i< ALTRO_MAX_SAMPLES; i++) +213 { +214 fTmpChannelData[i] = 0; +215 } +216 } // end Reset +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!ResetDataPtr@{ResetDataPtr}} +\index{ResetDataPtr@{ResetDataPtr}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSModule\-Merger\-Component::Reset\-Data\-Ptr ()\hspace{0.3cm}{\tt [protected]}}\label{classAliHLTPHOSModuleMergerComponent_b1} + + + + +Definition at line 219 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +References f\-Tmp\-Channel\-Data. + +\footnotesize\begin{verbatim}220 { +221 for(int i = 0 ; i< ALTRO_MAX_SAMPLES; i++) +222 { +223 fTmpChannelData[i] = 0; +224 } +225 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!SetEquippmentId@{SetEquippmentId}} +\index{SetEquippmentId@{SetEquippmentId}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSModule\-Merger\-Component::Set\-Equippment\-Id (int {\em id} = {\tt 0})}\label{classAliHLTPHOSModuleMergerComponent_a14} + + + + +Definition at line 229 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +References f\-Equippment\-ID. + +\footnotesize\begin{verbatim}230 { +231 fEquippmentID = id; +232 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!Spawn@{Spawn}} +\index{Spawn@{Spawn}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent} $\ast$ Ali\-HLTPHOSModule\-Merger\-Component::Spawn ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSModuleMergerComponent_a15} + + +Spawn function. Each component must implement a spawn function to create a new instance of the class. Basically the function must return {\em new {\bf my\_\-class\_\-name}\/}. \begin{Desc} +\item[Returns:]new class instance \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a13})}. + +Definition at line 242 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx. + +\footnotesize\begin{verbatim}243 { +244 return new AliHLTPHOSModuleMergerComponent; +245 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!fEquippmentID@{fEquippmentID}} +\index{fEquippmentID@{fEquippmentID}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSModule\-Merger\-Component::f\-Equippment\-ID}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSModuleMergerComponent_r1} + + +Eguippment ID as given by ALICE + +Definition at line 46 of file Ali\-HLTPHOSModule\-Merger\-Component.h. + +Referenced by Set\-Equippment\-Id().\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!fEventCount@{fEventCount}} +\index{fEventCount@{fEventCount}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTPHOSModule\-Merger\-Component::f\-Event\-Count}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSModuleMergerComponent_r0} + + +event counter + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_r2})}. + +Definition at line 45 of file Ali\-HLTPHOSModule\-Merger\-Component.h. + +Referenced by Do\-Event().\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!fgkInputDataTypes@{fgkInputDataTypes}} +\index{fgkInputDataTypes@{fgkInputDataTypes}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSModule\-Merger\-Component::fgk\-Input\-Data\-Types} = \{{\bf k\-Ali\-HLTVoid\-Data\-Type},\{0,\char`\"{}\char`\"{},\char`\"{}\char`\"{}\}\}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSModuleMergerComponent_v0} + + +The input datatypes the component can recieve (obsolete ?) + +Definition at line 26 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx.\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!fgkOutputDataType@{fgkOutputDataType}} +\index{fgkOutputDataType@{fgkOutputDataType}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSModule\-Merger\-Component::fgk\-Output\-Data\-Type} = {\bf k\-Ali\-HLTVoid\-Data\-Type}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSModuleMergerComponent_v1} + + +The type of date the compnent writes to shared memory + +Definition at line 27 of file Ali\-HLTPHOSModule\-Merger\-Component.cxx.\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!fMaxValues@{fMaxValues}} +\index{fMaxValues@{fMaxValues}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Double\_\-t {\bf Ali\-HLTPHOSModule\-Merger\-Component::f\-Max\-Values}[N\_\-MODULES][N\_\-ROWS\_\-MOD][N\_\-COLUMNS\_\-MOD][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSModuleMergerComponent_r3} + + +Tower/Crystal energies + +Definition at line 48 of file Ali\-HLTPHOSModule\-Merger\-Component.h. + +Referenced by Do\-Event(), Dump\-Data(), and Reset().\index{AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}!fTmpChannelData@{fTmpChannelData}} +\index{fTmpChannelData@{fTmpChannelData}!AliHLTPHOSModuleMergerComponent@{Ali\-HLTPHOSModule\-Merger\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Double\_\-t {\bf Ali\-HLTPHOSModule\-Merger\-Component::f\-Tmp\-Channel\-Data}[ALTRO\_\-MAX\_\-SAMPLES]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSModuleMergerComponent_r2} + + +Array to tmporarily store samples from a single ALTRO + +Definition at line 47 of file Ali\-HLTPHOSModule\-Merger\-Component.h. + +Referenced by Reset(), and Reset\-Data\-Ptr(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSModule\-Merger\-Component.h}\item +{\bf Ali\-HLTPHOSModule\-Merger\-Component.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSOnlineDisplay.tex b/HLT/PHOS/latex/classAliHLTPHOSOnlineDisplay.tex new file mode 100644 index 00000000000..9407f1bf1ec --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSOnlineDisplay.tex @@ -0,0 +1,1488 @@ +\section{Ali\-HLTPHOSOnline\-Display Class Reference} +\label{classAliHLTPHOSOnlineDisplay}\index{AliHLTPHOSOnlineDisplay@{AliHLTPHOSOnlineDisplay}} +{\tt \#include $<$Ali\-HLTPHOSOnline\-Display.h$>$} + +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf $\sim$Ali\-HLTPHOSOnline\-Display} () +\item +int {\bf Get\-Next\-Event} () +\item +int {\bf Get\-Next\-Event\-Raw} () +\item +int {\bf Get\-Histogram} () +\item +void {\bf Init\-Display} () +\item +void {\bf Update\-Display} () +\item +void {\bf Update\-Histograms} () +\item +void {\bf Update\-Channe\-Raw\-Data\-Display} () +\item +void {\bf Evaluate\-Average} () +\end{CompactItemize} +\subsection*{Static Public Member Functions} +\begin{CompactItemize} +\item +int {\bf Scan\-Arguments} (int argc, char $\ast$$\ast$argv) +\item +{\bf Ali\-HLTPHOSOnline\-Display} $\ast$ {\bf Instance} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSOnline\-Display} () +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +TGComposite\-Frame $\ast$ {\bf f\-Frame1} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-F1} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-F2} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-F3} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-F4} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-F5} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-Sub\-F1} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-Sub\-F2} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-Sub\-F3} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-Sub\-F4} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-Sub\-F5} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-Sub\-F6} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-Sub\-F7} = 0 +\item +TGComposite\-Frame $\ast$ {\bf f\-Sub\-F8} = 0 +\item +TGTab $\ast$ {\bf f\-Tab} = 0 +\item +TGTab $\ast$ {\bf f\-Sub\-Tab1} = 0 +\item +TGTab $\ast$ {\bf f\-Sub\-Tab2} = 0 +\item +TGTab $\ast$ {\bf f\-Sub\-Tab3} = 0 +\item +TGTab $\ast$ {\bf f\-Sub\-Tab\-Module} [N\_\-MODULES] +\item +TGTab $\ast$ {\bf f\-Sub\-Sub\-Tab\-Rcu} [N\_\-MODULES][N\_\-RCUS\_\-PER\_\-MODULE] +\item +TH1D $\ast$ {\bf fg\-Channel\-Data\-Plot\-Ptr} [N\_\-ZROWS\_\-RCU][N\_\-XCOLUMNS\_\-RCU] +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Test} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec1} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec2} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec3} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec4} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec5} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec6} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec7} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec8} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec9} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec10} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec11} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec12} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec13} = 0 +\item +TRoot\-Embedded\-Canvas $\ast$ {\bf f\-Ec14} = 0 +\item +{\bf Ali\-HLTPHOSGet\-Event\-Button} $\ast$ {\bf fg\-Event\-Butt\-Ptr} = 0 +\item +{\bf Ali\-HLTPHOSOnline\-Display} $\ast$ {\bf fg\-Instance\-Ptr} = 0 +\item +TH2D $\ast$ {\bf fg\-Lego\-Plot\-LGPtr} = 0 +\item +TH2D $\ast$ {\bf fg\-Lego\-Plot\-HGPtr} = 0 +\item +TH2D $\ast$ {\bf fg\-Calib\-Hist\-Ptr} [N\_\-GAINS] +\item +TH2I $\ast$ {\bf fg\-Hits\-Hist\-Ptr} [N\_\-GAINS] +\item +TH2D $\ast$ {\bf fg\-Average\-Ptr} [N\_\-GAINS] +\item +char $\ast$ {\bf fg\-Default\-Det} = \char`\"{}SOHP\char`\"{} +\item +char $\ast$ {\bf fg\-Default\-Data\-Type} = \char`\"{}RENELLEC\char`\"{} +\item +int {\bf fg\-Evnt\-Cnt} = 0 +\item +TCanvas $\ast$ {\bf fg\-Canvas\-HGPtr} = 0 +\item +TCanvas $\ast$ {\bf fg\-Canvas\-LGPtr} = 0 +\item +TCanvas $\ast$ {\bf fg\-Test\-Canvas\-Ptr} = 0 +\item +unsigned int {\bf fg\-NHosts} = 0 +\item +unsigned int {\bf fg\-NPorts} = 0 +\item +HOMERReader $\ast$ {\bf fg\-Homer\-Reader\-Ptr} = 0 +\item +HOMERReader $\ast$ {\bf fg\-Homer\-Readers\-Ptr} [MAX\_\-HOSTS] +\item +HOMERReader $\ast$ {\bf fg\-Calib\-Readers\-Ptr} [MAX\_\-HOSTS] +\item +HOMERReader $\ast$ {\bf fg\-Channel\-Raw\-Readers\-Ptr} [MAX\_\-HOSTS] +\item +char $\ast$ {\bf fg\-Hosts} [MAX\_\-HOSTS] +\item +short unsigned $\ast$ {\bf fg\-Ports} = 0 +\item +Bool\_\-t {\bf fg\-Accumulate} = k\-FALSE +\item +Bool\_\-t {\bf fg\-Syncronize} = k\-FALSE +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!~AliHLTPHOSOnlineDisplay@{$\sim$AliHLTPHOSOnlineDisplay}} +\index{~AliHLTPHOSOnlineDisplay@{$\sim$AliHLTPHOSOnlineDisplay}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSOnline\-Display::$\sim${\bf Ali\-HLTPHOSOnline\-Display} ()}\label{classAliHLTPHOSOnlineDisplay_a0} + + + + +Definition at line 143 of file Ali\-HLTPHOSOnline\-Display.cxx. + +\footnotesize\begin{verbatim}144 { +145 +146 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!AliHLTPHOSOnlineDisplay@{AliHLTPHOSOnlineDisplay}} +\index{AliHLTPHOSOnlineDisplay@{AliHLTPHOSOnlineDisplay}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSOnline\-Display::Ali\-HLTPHOSOnline\-Display ()\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSOnlineDisplay_d0} + + + + +Definition at line 122 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References fg\-Calib\-Readers\-Ptr, fg\-Channel\-Raw\-Readers\-Ptr, fg\-Homer\-Reader\-Ptr, fg\-Homer\-Readers\-Ptr, fg\-Hosts, fg\-Lego\-Plot\-HGPtr, fg\-Lego\-Plot\-LGPtr, fg\-NHosts, fg\-Ports, and Init\-Display(). + +Referenced by Instance(). + +\footnotesize\begin{verbatim}123 { +124 char **tmp; +125 cout << "creating new PHOS Onlinedisplay" << endl; +126 fgLegoPlotLGPtr = 0; +127 fgLegoPlotHGPtr = 0; +128 +129 fgHomerReaderPtr = new HOMERReader(fgNHosts, (const char**)fgHosts, fgPorts); +130 +131 for(int i = 0; i Reset(); +603 fgCalibHistPtr[HIGH_GAIN]->Reset(); +604 +605 int ret = 0; +606 unsigned long ndx; +607 const AliHLTComponentBlockData* iter = NULL; +608 Bool_t nextSwitch=kTRUE; +609 +610 for(int reader = 0; reader < fgNHosts; reader ++) +611 { +612 ret =fgCalibReadersPtr[reader]->ReadNextEvent(); ; +613 if( ret ) +614 { +615 int ndx = fgCalibReadersPtr[reader]->GetErrorConnectionNdx(); +616 printf( "------------ TRY AGAIN --------------->Error reading event from source %d: %s (%d)\n", ndx, strerror(ret), ret ); +617 cout << "HOMER getconncetioNdx status = " << ndx << endl; +618 return ret; +619 } +620 +621 unsigned long blockCnt = fgCalibReadersPtr[reader]->GetBlockCnt(); +622 cout << "AliHLTPHOSOnlineDisplay::GetHistogram(): blockCnt = " << blockCnt << endl; +623 +624 for ( unsigned long i = 0; i < blockCnt; i++ ) +625 { +626 char tmp1[9], tmp2[5]; +627 memset( tmp1, 0, 9 ); +628 memset( tmp2, 0, 5); +629 void *tmp11 = tmp1; +630 ULong64_t* tmp12 = (ULong64_t*)tmp11; +631 *tmp12 =fgCalibReadersPtr[reader]->GetBlockDataType( i ); +632 void *tmp21 = tmp2; +633 ULong_t* tmp22 = (ULong_t*)tmp21; +634 *tmp22 = fgCalibReadersPtr[reader]->GetBlockDataOrigin( i ); +635 cout << "Dataype is: "<< tmp1<<" "<FindBlockNdx("UCCARENE","SOHP", 0xFFFFFFFF ); +639 // int tmpWhileCnt = 0; +640 +641 +642 +643 while ( blk != ~(unsigned long)0 ) +644 { +645 cout << "GetHistogram: updating block " << endl; +646 AliHLTUInt16_t moduleID; +647 const AliHLTPHOSRcuCellAccumulatedEnergyDataStruct* accCellEnergiesPtr = (const AliHLTPHOSRcuCellAccumulatedEnergyDataStruct*)fgCalibReadersPtr[reader]->GetBlockData( blk ); +648 moduleID = accCellEnergiesPtr->fModuleID ; +649 // int RcuXOffset = (accCellEnergiesPtr->fRcuX)*N_XCOLUMNS_RCU; +650 // int RcuZOffset = (accCellEnergiesPtr->fRcuZ)*N_ZROWS_RCU; +651 cout << "(X,Z) =" << "("<< (int)accCellEnergiesPtr->fRcuX <<" , " << (int)accCellEnergiesPtr->fRcuZ << ") " << endl; +652 +653 int tmpx; +654 int tmpz; +655 +656 for(int x = 0; x < N_XCOLUMNS_RCU; x ++) +657 for(int z = 0; z fRcuX)*N_XCOLUMNS_RCU + x; +663 tmpz = (accCellEnergiesPtr->fRcuZ)*N_ZROWS_RCU +z; +664 +665 fgCalibHistPtr[gain]->Fill(tmpx, tmpz, accCellEnergiesPtr->fAccumulatedEnergies[x][z][gain] ); +666 fgHitsHistPtr[gain]->Fill(tmpx, tmpz, accCellEnergiesPtr->fHits[x][z][gain] ); +667 +668 if(fgHitsHistPtr[gain]->GetBinContent(tmpx, tmpz) > 0) +669 { +670 fgAveragePtr[gain]->SetBinContent(tmpx, tmpz, fgCalibHistPtr[gain]->GetBinContent(tmpx, tmpz)/fgHitsHistPtr[gain]->GetBinContent(tmpx, tmpz)); +671 } +672 } +673 } +674 } +675 +676 blk = fgCalibReadersPtr[reader]->FindBlockNdx("UCCARENE","SOHP", 0xFFFFFFFF, blk+1); +677 // tmpWhileCnt ++; +678 } +679 } +680 +681 UpdateHistograms(); +682 fgEvntCnt ++; +683 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!GetNextEvent@{GetNextEvent}} +\index{GetNextEvent@{GetNextEvent}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event ()}\label{classAliHLTPHOSOnlineDisplay_a1} + + + + +Definition at line 410 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Cnt, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Energy, fg\-Accumulate, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Gain, fg\-Evnt\-Cnt, fg\-Homer\-Reader\-Ptr, fg\-Homer\-Readers\-Ptr, fg\-Lego\-Plot\-HGPtr, fg\-Lego\-Plot\-LGPtr, fg\-Syncronize, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Module\-ID, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Rcu\-X, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Rcu\-Z, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Valid\-Data, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-X, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Z, N\_\-XCOLUMNS\_\-MOD, N\_\-XCOLUMNS\_\-RCU, N\_\-ZROWS\_\-RCU, and Update\-Display(). + +Referenced by Ali\-HLTPHOSGet\-Event\-Button::Handle\-Button(). + +\footnotesize\begin{verbatim}411 { +412 HOMERReader* CurrentReaderPtr; +413 +414 if(fgAccumulate == kFALSE) +415 { +416 cout <<"resetting fgLegoplot" << endl; +417 if(fgLegoPlotHGPtr !=0) +418 { +419 fgLegoPlotHGPtr->Reset(); +420 } +421 +422 if(fgLegoPlotLGPtr !=0) +423 { +424 fgLegoPlotLGPtr->Reset(); +425 } +426 } +427 +428 int ret = 0; +429 unsigned long ndx; +430 const AliHLTComponentBlockData* iter = NULL; +431 Bool_t nextSwitch=kTRUE; +432 cout << "homerreader connectionstatus =" <GetConnectionStatus() << endl;; +433 +434 int nLoops=0; +435 if(fgSyncronize == kTRUE) +436 { +437 nLoops = 1; +438 } +439 else +440 { +441 nLoops = fgNHosts; +442 } +443 +444 for(int reader = 0; reader < nLoops; reader ++) +445 { +446 if(fgSyncronize == kTRUE) +447 { +448 CurrentReaderPtr =fgHomerReaderPtr; +449 } +450 else +451 { +452 CurrentReaderPtr =fgHomerReadersPtr[reader]; +453 } +454 ret =CurrentReaderPtr->ReadNextEvent(); +455 cout << "Event ID =\t " << reader <<" = "<< CurrentReaderPtr->GetEventID() << endl;; +456 +457 if( ret ) +458 { +459 int ndx = fgHomerReaderPtr->GetErrorConnectionNdx(); +460 printf( "------------ TRY AGAIN --------------->Error reading event from source %d: %s (%d)\n", ndx, strerror(ret), ret ); +461 cout << "HOMER getconncetioNdx status = " << ndx << endl; +462 return ret; +463 } +464 +465 unsigned long blockCnt = CurrentReaderPtr->GetBlockCnt(); +466 +467 for ( unsigned long i = 0; i < blockCnt; i++ ) +468 { +469 char tmp1[9], tmp2[5]; +470 memset( tmp1, 0, 9 ); +471 memset( tmp2, 0, 5); +472 void *tmp11 = tmp1; +473 ULong64_t* tmp12 = (ULong64_t*)tmp11; +474 *tmp12 =fgHomerReadersPtr[reader]->GetBlockDataType( i ); +475 void *tmp21 = tmp2; +476 ULong_t* tmp22 = (ULong_t*)tmp21; +477 *tmp22 = CurrentReaderPtr->GetBlockDataOrigin( i ); +478 cout << "Dataype for block: "<< i<<" is: "<< tmp1<FindBlockNdx("RENELLEC","SOHP", 0xFFFFFFFF ); +482 +483 while ( blk != ~(unsigned long)0 ) +484 { +485 Int_t moduleID; +486 const AliHLTPHOSRcuCellEnergyDataStruct* cellEnergiesPtr = (const AliHLTPHOSRcuCellEnergyDataStruct*) CurrentReaderPtr->GetBlockData( blk ); +487 moduleID = cellEnergiesPtr->fModuleID ; +488 Int_t tmpCount = cellEnergiesPtr->fCnt; +489 Int_t tmpZ; +490 Int_t tmpX; +491 Int_t tmpGain; +492 +493 // for(int i= 0; ifValidData[i].fZ; +497 tmpX = cellEnergiesPtr->fValidData[i].fX; +498 tmpGain = cellEnergiesPtr->fValidData[i].fGain; +499 +500 if(tmpGain == HIGH_GAIN) +501 { +502 fgLegoPlotHGPtr->Fill(moduleID*N_XCOLUMNS_MOD + tmpX + N_XCOLUMNS_RCU*cellEnergiesPtr->fRcuX, +503 tmpZ + N_ZROWS_RCU*cellEnergiesPtr->fRcuZ, cellEnergiesPtr->fValidData[i].fEnergy); +504 } +505 +506 else if(tmpGain == LOW_GAIN) +507 { +508 fgLegoPlotLGPtr->Fill(moduleID*N_XCOLUMNS_MOD + tmpX + N_XCOLUMNS_RCU*cellEnergiesPtr->fRcuX, +509 tmpZ + N_ZROWS_RCU*cellEnergiesPtr->fRcuZ, cellEnergiesPtr->fValidData[i].fEnergy); +510 } +511 } +512 +513 blk = CurrentReaderPtr->FindBlockNdx("RENELLEC","SOHP", 0xFFFFFFFF, blk+1); +514 } +515 } +516 UpdateDisplay(); +517 fgEvntCnt ++; +518 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!GetNextEventRaw@{GetNextEventRaw}} +\index{GetNextEventRaw@{GetNextEventRaw}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw ()}\label{classAliHLTPHOSOnlineDisplay_a2} + + + + +Definition at line 521 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References Ali\-HLTUInt16\_\-t, Ali\-HLTUInt32\_\-t, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Channel\-Data, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Gain, fg\-Channel\-Data\-Plot\-Ptr, fg\-Channel\-Raw\-Readers\-Ptr, fg\-Evnt\-Cnt, Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Module\-ID, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-NSamples, Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-NValid\-Channels, Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Valid\-Data, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-X, Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Z, and Update\-Channe\-Raw\-Data\-Display(). + +\footnotesize\begin{verbatim}522 { +523 cout << "AliHLTPHOSOnlineDisplay::GetNextEventRaw():updating RawdataDisplay" << endl; +524 int ret = 0; +525 unsigned long ndx; +526 const AliHLTComponentBlockData* iter = NULL; +527 for(int reader = 0; reader < fgNHosts; reader ++) +528 { +529 ret = fgChannelRawReadersPtr[reader]->ReadNextEvent(); +530 if( ret ) +531 { +532 int ndx = fgChannelRawReadersPtr[reader]->GetErrorConnectionNdx(); +533 printf( "------------ TRY AGAIN --------------->Error reading event from source %d: %s (%d)\n", ndx, strerror(ret), ret ); +534 cout << "HOMER getconncetioNdx status = " << ndx << endl; +535 return ret; +536 } +537 +538 unsigned long blockCnt = fgChannelRawReadersPtr[reader]->GetBlockCnt(); +539 cout << "AliHLTPHOSOnlineDisplay::NextEventRaw(): blockCnt = " << blockCnt << endl; +540 +541 for ( unsigned long i = 0; i < blockCnt; i++ ) +542 { +543 char tmp1[9], tmp2[5]; +544 memset( tmp1, 0, 9 ); +545 memset( tmp2, 0, 5); +546 void *tmp11 = tmp1; +547 ULong64_t* tmp12 = (ULong64_t*)tmp11; +548 *tmp12 =fgChannelRawReadersPtr[reader]->GetBlockDataType( i ); +549 void *tmp21 = tmp2; +550 ULong_t* tmp22 = (ULong_t*)tmp21; +551 *tmp22 = fgChannelRawReadersPtr[reader]->GetBlockDataOrigin( i ); +552 cout << "Dataype is: "<< tmp1<<" "<FindBlockNdx("ATADNAHC","SOHP", 0xeFFFFFFF ); +556 +557 while ( blk != ~(unsigned long)0 ) +558 { +559 cout << ":GetNextEventRaw(): updating block " << endl; +560 AliHLTUInt16_t moduleID; +561 const AliHLTPHOSRcuChannelDataStruct* rcuChannelDataPtr = (const AliHLTPHOSRcuChannelDataStruct*)fgChannelRawReadersPtr[reader]->GetBlockData( blk ); +562 moduleID = rcuChannelDataPtr->fModuleID ; +563 int tmpx; +564 int tmpz; +565 AliHLTUInt32_t tmpChCnt =0; +566 AliHLTUInt16_t tmpSampleCnt =0; +567 +568 tmpChCnt = rcuChannelDataPtr->fNValidChannels; +569 cout << "tmpChCnt = " << tmpChCnt << endl; +570 +571 for( AliHLTUInt32_t ch =0; ch < tmpChCnt; ch ++) +572 { +573 { +574 tmpz = rcuChannelDataPtr->fValidData[ch].fZ; +575 tmpx = rcuChannelDataPtr->fValidData[ch].fX; +576 tmpSampleCnt = rcuChannelDataPtr->fValidData[ch].fNSamples; +577 +578 for(AliHLTUInt16_t sample =0; sample fValidData[ch].fGain == 0) +581 { +582 fgChannelDataPlotPtr[tmpz][tmpx]->SetBinContent(sample, rcuChannelDataPtr->fValidData[ch].fChannelData[sample]); +583 } +584 } +585 } +586 } +587 +588 blk = fgChannelRawReadersPtr[reader]->FindBlockNdx("ATADNAHC","SOHP", 0xeFFFFFFF, blk+1); +589 +590 } +591 } +592 +593 UpdateChanneRawDataDisplay(); +594 fgEvntCnt ++; +595 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!InitDisplay@{InitDisplay}} +\index{InitDisplay@{InitDisplay}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSOnline\-Display::Init\-Display ()}\label{classAliHLTPHOSOnlineDisplay_a4} + + + + +Definition at line 149 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References f\-Ec1, f\-Ec10, f\-Ec11, f\-Ec12, f\-Ec13, f\-Ec14, f\-Ec2, f\-Ec3, f\-Ec4, f\-Ec5, f\-Ec6, f\-Ec7, f\-Ec8, f\-Ec9, fg\-Average\-Ptr, fg\-Calib\-Hist\-Ptr, fg\-Channel\-Data\-Plot\-Ptr, fg\-Event\-Butt\-Ptr, fg\-Hits\-Hist\-Ptr, fg\-Lego\-Plot\-HGPtr, fg\-Lego\-Plot\-LGPtr, f\-Sub\-F1, f\-Sub\-F2, f\-Sub\-F3, f\-Sub\-F4, f\-Sub\-F5, f\-Sub\-F6, f\-Sub\-F7, f\-Sub\-Tab1, f\-Sub\-Tab2, f\-Sub\-Tab3, f\-Tab, MAX\_\-BIN\_\-VALUE, N\_\-MODULES, N\_\-XCOLUMNS\_\-MOD, and N\_\-ZROWS\_\-MOD. + +Referenced by Ali\-HLTPHOSOnline\-Display(). + +\footnotesize\begin{verbatim}150 { +151 char tmpHistoName[256]; +152 +153 fgLegoPlotHGPtr = new TH2D("Homer","HLT: #pi^{0} 5 - 30Gev HG, High gain", +154 N_XCOLUMNS_MOD*N_MODULES , 0, N_XCOLUMNS_MOD*N_MODULES, +155 N_ZROWS_MOD, 0, N_ZROWS_MOD); +156 fgLegoPlotHGPtr->SetMaximum( MAX_BIN_VALUE); +157 fgLegoPlotHGPtr->Reset(); +158 +159 fgLegoPlotLGPtr = new TH2D("Homer","HLT: #pi^{0} 5 - 30Gev LG, Low gain", +160 N_XCOLUMNS_MOD* N_MODULES , 0, N_XCOLUMNS_MOD* N_MODULES, +161 N_ZROWS_MOD, 0, N_ZROWS_MOD); +162 fgLegoPlotLGPtr->SetMaximum( MAX_BIN_VALUE); +163 fgLegoPlotLGPtr->Reset(); +164 +165 for(int gain = 0; gain< N_GAINS; gain ++) +166 { +167 sprintf(tmpHistoName, "HLT gain %d", gain); +168 fgCalibHistPtr[gain] = new TH2D(tmpHistoName, tmpHistoName, +169 N_XCOLUMNS_MOD*N_MODULES , 0, N_XCOLUMNS_MOD*N_MODULES , +170 N_ZROWS_MOD, 0, N_ZROWS_MOD); +171 fgCalibHistPtr[gain]->Reset(); +172 +173 sprintf(tmpHistoName, "Calibration Data HLT: #pi^{0} 5 - 30GeV gain %d", gain); +174 fgHitsHistPtr[gain] = new TH2I(tmpHistoName, tmpHistoName, +175 N_XCOLUMNS_MOD* N_MODULES , 0, N_XCOLUMNS_MOD*N_MODULES, +176 N_ZROWS_MOD, 0, N_ZROWS_MOD); +177 fgHitsHistPtr[gain]->SetMaximum( MAX_BIN_VALUE); +178 fgHitsHistPtr[gain]->Reset(); +179 +180 sprintf(tmpHistoName, "Average Data HLT: #pi^{0} 5 - 30GeV gain %d", gain); +181 fgAveragePtr[gain] = new TH2D(tmpHistoName,tmpHistoName, +182 N_XCOLUMNS_MOD* N_MODULES , 0, N_XCOLUMNS_MOD*N_MODULES, +183 N_ZROWS_MOD, 0, N_ZROWS_MOD); +184 fgAveragePtr[gain]->SetMaximum( MAX_BIN_VALUE); +185 fgAveragePtr[gain]->Reset(); +186 } +187 +188 char tmpChDtaName[256]; +189 +190 for(int z = 0; z < N_ZROWS_RCU; z ++) +191 { +192 for(int x = 0; x < N_XCOLUMNS_RCU; x ++) +193 { +194 sprintf(tmpHistoName, "blablaz%d x%d",z, x); +195 fgChannelDataPlotPtr[z][x] = new TH1D(tmpHistoName, tmpHistoName, 300, 0, 299); +196 fgChannelDataPlotPtr[z][x]->SetMaximum(MAX_BIN_VALUE); +197 fgChannelDataPlotPtr[z][x]->Reset(); +198 } +199 } +200 +201 gStyle->SetPalette(1); +202 fTab = new TGTab(this, 100, 100); +203 TGLayoutHints *fL1 = new TGLayoutHints(kLHintsBottom | kLHintsExpandX | +204 kLHintsExpandY, 2, 2, 15, 1); +205 +206 TGCompositeFrame *tf = fTab->AddTab("Event display"); +207 fSubTab1 = new TGTab(tf, 100, 100); +208 TGCompositeFrame *tf2 = fSubTab1->AddTab("LEGO"); +209 fSubF1 = new TGCompositeFrame(tf2, 60, 20, kVerticalFrame); +210 fEc1 = new TRootEmbeddedCanvas("ec1", fSubF1, 100, 100); +211 fSubF1->AddFrame(fEc1, fL1); +212 fEc2 = new TRootEmbeddedCanvas("ec2", fSubF1, 100, 100); +213 fSubF1->AddFrame(fEc2, fL1); +214 tf2->AddFrame(fSubF1, fL1); +215 +216 tf2 = fSubTab1->AddTab("SCAT"); +217 fSubF2 = new TGCompositeFrame(tf2, 60, 20, kVerticalFrame); +218 tf2->AddFrame(fSubF2, fL1); +219 fEc3 = new TRootEmbeddedCanvas("ec3", fSubF2, 100, 100); +220 fSubF2->AddFrame(fEc3, fL1); +221 fEc4 = new TRootEmbeddedCanvas("ec4", fSubF2, 100, 100); +222 fSubF2->AddFrame(fEc4, fL1); +223 +224 tf2 = fSubTab1->AddTab("SURF"); +225 fSubF3 = new TGCompositeFrame(tf2, 60, 20, kVerticalFrame); +226 tf2->AddFrame(fSubF3, fL1); +227 fEc5 = new TRootEmbeddedCanvas("ec5", fSubF3, 100, 100); +228 fSubF3->AddFrame(fEc5, fL1); +229 fEc6 = new TRootEmbeddedCanvas("ec6", fSubF3, 100, 100); +230 fSubF3->AddFrame(fEc6, fL1); +231 fSubTab1->Resize(); +232 tf->AddFrame(fSubTab1, fL1); +233 +234 tf = fTab->AddTab("Calibration data"); +235 +236 fSubTab2 = new TGTab(tf, 100, 100); +237 +238 tf2 = fSubTab2->AddTab("Accumulated energy"); +239 fSubF4 = new TGCompositeFrame(tf2, 60, 20, kVerticalFrame); +240 +241 fEc7 = new TRootEmbeddedCanvas("ec7", fSubF4, 100, 100); +242 fSubF4->AddFrame(fEc7, fL1); +243 +244 fEc8 = new TRootEmbeddedCanvas("ec8", fSubF4, 100, 100); +245 fSubF4->AddFrame(fEc8, fL1); +246 +247 tf2->AddFrame(fSubF4, fL1); +248 +249 tf2 = fSubTab2->AddTab("SCAT (hits)"); +250 fSubF5 = new TGCompositeFrame(tf2, 60, 20, kVerticalFrame); +251 tf2->AddFrame(fSubF5, fL1); +252 fEc9 = new TRootEmbeddedCanvas("ec9", fSubF5, 100, 100); +253 fSubF5->AddFrame(fEc9, fL1); +254 fEc10 = new TRootEmbeddedCanvas("ec10", fSubF5, 100, 100); +255 fSubF5->AddFrame(fEc10, fL1); +256 +257 tf2 = fSubTab2->AddTab("SURF"); +258 fSubF6 = new TGCompositeFrame(tf2, 60, 20, kVerticalFrame); +259 tf2->AddFrame(fSubF6, fL1); +260 fEc11 = new TRootEmbeddedCanvas("ec11", fSubF6, 100, 100); +261 fSubF6->AddFrame(fEc11, fL1); +262 fEc12 = new TRootEmbeddedCanvas("ec12", fSubF6, 100, 100); +263 fSubF6->AddFrame(fEc12, fL1); +264 +265 tf2 = fSubTab2->AddTab("acummulated energy / hits"); +266 fSubF7 = new TGCompositeFrame(tf2, 60, 20, kVerticalFrame); +267 tf2->AddFrame(fSubF7, fL1); +268 fEc13 = new TRootEmbeddedCanvas("ec13", fSubF7, 100, 100); +269 fSubF7->AddFrame(fEc13, fL1); +270 fEc14 = new TRootEmbeddedCanvas("ec14", fSubF7, 100, 100); +271 fSubF7->AddFrame(fEc14, fL1); +272 +273 fSubTab2->Resize(); +274 tf->AddFrame(fSubTab2, fL1); +275 +276 +277 tf = fTab->AddTab("Raw Data Display"); +278 +279 fSubTab3 = new TGTab(tf, 100, 100); +280 TGLayoutHints *hints = new TGLayoutHints(kLHintsNormal, 0, 0, 0, 0); +281 +282 char tmpTabName[256]; +283 char tmpCanvasName[256]; +284 sprintf(tmpTabName, "Raw data"); +285 tf2 = fSubTab3->AddTab(tmpTabName); +286 fgEventButtPtr = new AliHLTPHOSGetEventButton(tf, "Get Rawdata2xxxxx", 'r'); +287 AliHLTPHOSGetEventButton* EventButtPtr2 = new AliHLTPHOSGetEventButton(tf, "Get Rawdata", 'r'); +288 EventButtPtr2->Move(200, 200); +289 +290 tf = fTab->AddTab("Tab 4"); +291 +292 AddFrame(fTab, fL1); +293 +294 fgEventButtPtr = new AliHLTPHOSGetEventButton(fSubF1, "get event", 'e'); +295 fgEventButtPtr = new AliHLTPHOSGetEventButton(fSubF4, "update histograms", 'h'); +296 +297 MapSubwindows(); +298 Resize(); +299 SetWindowName("online display"); +300 MapWindow(); +301 MoveResize(100,100,1200,1000); +302 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!Instance@{Instance}} +\index{Instance@{Instance}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSOnline\-Display} $\ast$ Ali\-HLTPHOSOnline\-Display::Instance ()\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSOnlineDisplay_e1} + + + + +Definition at line 116 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References Ali\-HLTPHOSOnline\-Display(), and fg\-Instance\-Ptr. + +Referenced by main(). + +\footnotesize\begin{verbatim}117 { +118 if (!fgInstancePtr) fgInstancePtr = new AliHLTPHOSOnlineDisplay(); +119 return fgInstancePtr; +120 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!ScanArguments@{ScanArguments}} +\index{ScanArguments@{ScanArguments}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSOnline\-Display::Scan\-Arguments (int {\em argc}, char $\ast$$\ast$ {\em argv})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTPHOSOnlineDisplay_e0} + + + + +Definition at line 306 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References fg\-Accumulate, fg\-Hosts, fg\-NHosts, fg\-NPorts, fg\-Ports, and fg\-Syncronize. + +Referenced by main(). + +\footnotesize\begin{verbatim}307 { +308 for(int i=0; i< MAX_HOSTS; i++) +309 { +310 fgHosts[i] = new char[256]; +311 } +312 +313 fgPorts = new short unsigned[100]; +314 +315 Bool_t hostIsSet = kFALSE; +316 Bool_t portIsSet = kFALSE; +317 int iResult=0; +318 TString argument=""; +319 +320 for (int i=0; i=0; i++) +321 { +322 argument=argv[i]; +323 +324 if (argument.IsNull()) +325 { +326 continue; +327 } +328 +329 if (argument.CompareTo("-sync")==0) +330 { +331 cout << "setting Synchronize to true" << endl; +332 fgSyncronize = kTRUE; +333 } +334 +335 +336 if (argument.CompareTo("-acc")==0) +337 { +338 cout << "setting Accumulate to true" << endl; +339 fgAccumulate = kTRUE; +340 } +341 +342 +343 if (argument.CompareTo("-host")==0) +344 { +345 if(i+1 <= argc) +346 { +347 i++; +348 sprintf(fgHosts[fgNHosts],"%s", argv[i]); +349 fgNHosts ++; +350 hostIsSet = kTRUE; +351 if(i+1 <= argc) +352 { +353 argument=argv[i+1]; +354 if(argument.CompareTo("-port")==0) +355 { +356 i++; +357 if(i+1 <= argc) +358 { +359 i++; +360 fgPorts[fgNPorts] = atoi(argv[i]); +361 cout << "A setting port to " << fgPorts[fgNPorts] < -port "); +395 printf("\n-port is optional, if not set port 42001 will be used\n"); +396 printf("*****************************************************************\n\n\n"); +397 iResult = -1; +398 } +399 +400 else +401 { +402 iResult = 0; +403 } +404 +405 return iResult; +406 }//end ScanArguments +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!UpdateChanneRawDataDisplay@{UpdateChanneRawDataDisplay}} +\index{UpdateChanneRawDataDisplay@{UpdateChanneRawDataDisplay}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSOnline\-Display::Update\-Channe\-Raw\-Data\-Display ()}\label{classAliHLTPHOSOnlineDisplay_a7} + + + + +Definition at line 765 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References fg\-Channel\-Data\-Plot\-Ptr, fg\-Test\-Canvas\-Ptr, N\_\-XCOLUMNS\_\-RCU, and N\_\-ZROWS\_\-RCU. + +Referenced by Get\-Next\-Event\-Raw(). + +\footnotesize\begin{verbatim}766 { +767 fgTestCanvasPtr = new TCanvas("TEST", "testcanvas", 1200, 1000); +768 // fgTestCanvasPtr->Divide(N_ZROWS_RCU, N_XCOLUMNS_RCU, 0, 0); +769 fgTestCanvasPtr->Divide(N_XCOLUMNS_RCU, N_ZROWS_RCU, 0, 0); +770 +771 for(int z = 0; z < N_ZROWS_RCU; z ++) +772 { +773 for(int x = 0; x < N_XCOLUMNS_RCU; x ++) +774 { +775 // fgTestCanvasPtr->cd(x*N_ZROWS_RCU +z + 1); +776 fgTestCanvasPtr->cd(z*N_XCOLUMNS_RCU +x + 1); +777 +778 fgChannelDataPlotPtr[z][x]->Draw(); +779 } +780 } +781 +782 fgTestCanvasPtr->Update(); +783 +784 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!UpdateDisplay@{UpdateDisplay}} +\index{UpdateDisplay@{UpdateDisplay}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSOnline\-Display::Update\-Display ()}\label{classAliHLTPHOSOnlineDisplay_a5} + + + + +Definition at line 687 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References f\-Ec1, f\-Ec2, f\-Ec3, f\-Ec4, f\-Ec5, f\-Ec6, fg\-Canvas\-HGPtr, fg\-Canvas\-LGPtr, fg\-Lego\-Plot\-HGPtr, and fg\-Lego\-Plot\-LGPtr. + +Referenced by Get\-Next\-Event(). + +\footnotesize\begin{verbatim}688 { +689 fgCanvasHGPtr = fEc1->GetCanvas(); +690 fgCanvasHGPtr->cd(); +691 fgLegoPlotHGPtr->Draw("LEGO2Z"); +692 fgCanvasHGPtr->Update(); +693 fgCanvasLGPtr = fEc2->GetCanvas(); +694 fgCanvasLGPtr->cd(); +695 fgLegoPlotLGPtr->Draw("LEGO2Z"); +696 fgCanvasLGPtr->Update(); +697 +698 fgCanvasHGPtr = fEc3->GetCanvas(); +699 fgCanvasHGPtr->cd(); +700 fgLegoPlotHGPtr->Draw("SCAT"); +701 fgCanvasHGPtr->Update(); +702 fgCanvasLGPtr = fEc4->GetCanvas(); +703 fgCanvasLGPtr->cd(); +704 fgLegoPlotLGPtr->Draw("SCAT"); +705 fgCanvasLGPtr->Update(); +706 +707 fgCanvasHGPtr = fEc5->GetCanvas(); +708 fgCanvasHGPtr->cd(); +709 fgLegoPlotHGPtr->Draw("CONTZ"); +710 fgCanvasHGPtr->Update(); +711 fgCanvasLGPtr = fEc6->GetCanvas(); +712 fgCanvasLGPtr->cd(); +713 fgLegoPlotLGPtr->Draw("CONTZ"); +714 fgCanvasLGPtr->Update(); +715 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!UpdateHistograms@{UpdateHistograms}} +\index{UpdateHistograms@{UpdateHistograms}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSOnline\-Display::Update\-Histograms ()}\label{classAliHLTPHOSOnlineDisplay_a6} + + + + +Definition at line 718 of file Ali\-HLTPHOSOnline\-Display.cxx. + +References f\-Ec10, f\-Ec11, f\-Ec12, f\-Ec13, f\-Ec14, f\-Ec7, f\-Ec8, f\-Ec9, fg\-Average\-Ptr, fg\-Calib\-Hist\-Ptr, fg\-Canvas\-HGPtr, fg\-Canvas\-LGPtr, and fg\-Hits\-Hist\-Ptr. + +Referenced by Get\-Histogram(). + +\footnotesize\begin{verbatim}719 { +720 fgCanvasHGPtr = fEc7->GetCanvas(); +721 fgCanvasHGPtr->cd(); +722 fgCalibHistPtr[HIGH_GAIN]->Draw("LEGO2Z"); +723 fgCanvasHGPtr->Update(); +724 +725 fgCanvasLGPtr = fEc8->GetCanvas(); +726 fgCanvasLGPtr->cd(); +727 fgCalibHistPtr[LOW_GAIN]->Draw("LEGO2Z"); +728 fgCanvasLGPtr->Update(); +729 +730 fgCanvasHGPtr = fEc9->GetCanvas(); +731 fgCanvasHGPtr->cd(); +732 fgHitsHistPtr[HIGH_GAIN]->Draw("SCAT"); +733 fgCanvasHGPtr->Update(); +734 +735 fgCanvasLGPtr = fEc10->GetCanvas(); +736 fgCanvasLGPtr->cd(); +737 fgHitsHistPtr[LOW_GAIN]->Draw("SCAT"); +738 fgCanvasLGPtr->Update(); +739 +740 fgCanvasHGPtr = fEc11->GetCanvas(); +741 fgCanvasHGPtr->cd(); +742 fgCalibHistPtr[HIGH_GAIN]->Draw("COLZ"); +743 fgCanvasHGPtr->Update(); +744 +745 fgCanvasLGPtr = fEc12->GetCanvas(); +746 fgCanvasLGPtr->cd(); +747 fgCalibHistPtr[LOW_GAIN]->Draw("COLZ"); +748 fgCanvasLGPtr->Update(); +749 +750 +751 fgCanvasLGPtr = fEc13->GetCanvas(); +752 fgCanvasLGPtr->cd(); +753 fgAveragePtr[HIGH_GAIN]->Draw("COLZ"); +754 fgCanvasLGPtr->Update(); +755 +756 fgCanvasHGPtr = fEc14->GetCanvas(); +757 fgCanvasHGPtr->cd(); +758 fgAveragePtr[LOW_GAIN]->Draw("COLZ"); +759 fgCanvasHGPtr->Update(); +760 +761 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc1@{fEc1}} +\index{fEc1@{fEc1}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec1} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v22} + + + + +Definition at line 98 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc10@{fEc10}} +\index{fEc10@{fEc10}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec10} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v31} + + + + +Definition at line 107 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc11@{fEc11}} +\index{fEc11@{fEc11}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec11} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v32} + + + + +Definition at line 108 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc12@{fEc12}} +\index{fEc12@{fEc12}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec12} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v33} + + + + +Definition at line 109 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc13@{fEc13}} +\index{fEc13@{fEc13}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec13} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v34} + + + + +Definition at line 110 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc14@{fEc14}} +\index{fEc14@{fEc14}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec14} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v35} + + + + +Definition at line 111 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc2@{fEc2}} +\index{fEc2@{fEc2}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec2} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v23} + + + + +Definition at line 99 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc3@{fEc3}} +\index{fEc3@{fEc3}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec3} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v24} + + + + +Definition at line 100 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc4@{fEc4}} +\index{fEc4@{fEc4}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec4} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v25} + + + + +Definition at line 101 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc5@{fEc5}} +\index{fEc5@{fEc5}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec5} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v26} + + + + +Definition at line 102 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc6@{fEc6}} +\index{fEc6@{fEc6}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec6} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v27} + + + + +Definition at line 103 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc7@{fEc7}} +\index{fEc7@{fEc7}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec7} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v28} + + + + +Definition at line 104 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc8@{fEc8}} +\index{fEc8@{fEc8}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec8} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v29} + + + + +Definition at line 105 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fEc9@{fEc9}} +\index{fEc9@{fEc9}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Ec9} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v30} + + + + +Definition at line 106 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fF1@{fF1}} +\index{fF1@{fF1}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-F1} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v1} + + + + +Definition at line 72 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fF2@{fF2}} +\index{fF2@{fF2}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-F2} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v2} + + + + +Definition at line 73 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fF3@{fF3}} +\index{fF3@{fF3}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-F3} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v3} + + + + +Definition at line 74 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fF4@{fF4}} +\index{fF4@{fF4}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-F4} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v4} + + + + +Definition at line 75 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fF5@{fF5}} +\index{fF5@{fF5}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-F5} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v5} + + + + +Definition at line 76 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fFrame1@{fFrame1}} +\index{fFrame1@{fFrame1}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Frame1} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v0} + + + + +Definition at line 71 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgAccumulate@{fgAccumulate}} +\index{fgAccumulate@{fgAccumulate}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Bool\_\-t {\bf Ali\-HLTPHOSOnline\-Display::fg\-Accumulate} = k\-FALSE\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v57} + + +If set to k\-FALSE reset fg\-Legoplot between event, k\-TRUE adds current energies to previous plot + +Definition at line 63 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Get\-Next\-Event(), and Scan\-Arguments().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgAveragePtr@{fgAveragePtr}} +\index{fgAveragePtr@{fgAveragePtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TH2D $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Average\-Ptr}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v42} + + +Accumuated energy/hits + +Definition at line 56 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Get\-Histogram(), Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgCalibHistPtr@{fgCalibHistPtr}} +\index{fgCalibHistPtr@{fgCalibHistPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TH2D $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Calib\-Hist\-Ptr}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v40} + + +2D histogram for low gain channels + +Definition at line 54 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Get\-Histogram(), Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgCalibReadersPtr@{fgCalibReadersPtr}} +\index{fgCalibReadersPtr@{fgCalibReadersPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}HOMERReader $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Calib\-Readers\-Ptr}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v53} + + +Homer reader that fetches histograms from the HLT online stream + +Definition at line 50 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), and Get\-Histogram().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgCanvasHGPtr@{fgCanvasHGPtr}} +\index{fgCanvasHGPtr@{fgCanvasHGPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TCanvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Canvas\-HGPtr} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v46} + + +Canvas to plot fg\-Legoplot for High gain channels + +Definition at line 60 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Update\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgCanvasLGPtr@{fgCanvasLGPtr}} +\index{fgCanvasLGPtr@{fgCanvasLGPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TCanvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Canvas\-LGPtr} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v47} + + +Canvas to plot fg\-Legoplot for Low gain channels + +Definition at line 61 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Update\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgChannelDataPlotPtr@{fgChannelDataPlotPtr}} +\index{fgChannelDataPlotPtr@{fgChannelDataPlotPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TH1D $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Channel\-Data\-Plot\-Ptr}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v20} + + + + +Definition at line 94 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Get\-Next\-Event\-Raw(), Init\-Display(), and Update\-Channe\-Raw\-Data\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgChannelRawReadersPtr@{fgChannelRawReadersPtr}} +\index{fgChannelRawReadersPtr@{fgChannelRawReadersPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}HOMERReader $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Channel\-Raw\-Readers\-Ptr}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v54} + + + + +Definition at line 51 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), and Get\-Next\-Event\-Raw().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgDefaultDataType@{fgDefaultDataType}} +\index{fgDefaultDataType@{fgDefaultDataType}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Default\-Data\-Type} = \char`\"{}RENELLEC\char`\"{}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v44} + + +CELLENER (Celle energy) written backwards + +Definition at line 58 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgDefaultDet@{fgDefaultDet}} +\index{fgDefaultDet@{fgDefaultDet}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Default\-Det} = \char`\"{}SOHP\char`\"{}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v43} + + +PHOS written backwards + +Definition at line 57 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgEventButtPtr@{fgEventButtPtr}} +\index{fgEventButtPtr@{fgEventButtPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSGet\-Event\-Button} $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Event\-Butt\-Ptr} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v36} + + +Button to get a new event from the HLT online stream + +Definition at line 46 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgEvntCnt@{fgEvntCnt}} +\index{fgEvntCnt@{fgEvntCnt}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTPHOSOnline\-Display::fg\-Evnt\-Cnt} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v45} + + +Event Counter + +Definition at line 59 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Get\-Histogram(), Get\-Next\-Event(), and Get\-Next\-Event\-Raw().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgHitsHistPtr@{fgHitsHistPtr}} +\index{fgHitsHistPtr@{fgHitsHistPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TH2I $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Hits\-Hist\-Ptr}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v41} + + +2D histogram for low gain channels + +Definition at line 55 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Get\-Histogram(), Init\-Display(), and Update\-Histograms().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgHomerReaderPtr@{fgHomerReaderPtr}} +\index{fgHomerReaderPtr@{fgHomerReaderPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}HOMERReader $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Homer\-Reader\-Ptr} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v51} + + +Homer reader that fetches events from the HLT online stream + +Definition at line 48 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), and Get\-Next\-Event().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgHomerReadersPtr@{fgHomerReadersPtr}} +\index{fgHomerReadersPtr@{fgHomerReadersPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}HOMERReader $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Homer\-Readers\-Ptr}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v52} + + +Homer reader that fetches events from the HLT online stream + +Definition at line 49 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), and Get\-Next\-Event().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgHosts@{fgHosts}} +\index{fgHosts@{fgHosts}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Hosts}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v55} + + + + +Definition at line 67 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), and Scan\-Arguments().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgInstancePtr@{fgInstancePtr}} +\index{fgInstancePtr@{fgInstancePtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSOnline\-Display} $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Instance\-Ptr} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v37} + + +The one an only instance of Phos\-Online\-Display + +Definition at line 47 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Instance().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgLegoPlotHGPtr@{fgLegoPlotHGPtr}} +\index{fgLegoPlotHGPtr@{fgLegoPlotHGPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TH2D $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Lego\-Plot\-HGPtr} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v39} + + +2D histogram for high gain channels + +Definition at line 53 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), Get\-Next\-Event(), Init\-Display(), and Update\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgLegoPlotLGPtr@{fgLegoPlotLGPtr}} +\index{fgLegoPlotLGPtr@{fgLegoPlotLGPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TH2D $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Lego\-Plot\-LGPtr} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v38} + + +2D histogram for low gain channels + +Definition at line 52 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), Get\-Next\-Event(), Init\-Display(), and Update\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgNHosts@{fgNHosts}} +\index{fgNHosts@{fgNHosts}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf Ali\-HLTPHOSOnline\-Display::fg\-NHosts} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v49} + + + + +Definition at line 65 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), and Scan\-Arguments().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgNPorts@{fgNPorts}} +\index{fgNPorts@{fgNPorts}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf Ali\-HLTPHOSOnline\-Display::fg\-NPorts} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v50} + + + + +Definition at line 66 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Scan\-Arguments().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgPorts@{fgPorts}} +\index{fgPorts@{fgPorts}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}short unsigned int $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Ports} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v56} + + + + +Definition at line 68 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Ali\-HLTPHOSOnline\-Display(), and Scan\-Arguments().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgSyncronize@{fgSyncronize}} +\index{fgSyncronize@{fgSyncronize}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Bool\_\-t {\bf Ali\-HLTPHOSOnline\-Display::fg\-Syncronize} = k\-FALSE\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v58} + + + + +Definition at line 64 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Get\-Next\-Event(), and Scan\-Arguments().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fgTestCanvasPtr@{fgTestCanvasPtr}} +\index{fgTestCanvasPtr@{fgTestCanvasPtr}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TCanvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::fg\-Test\-Canvas\-Ptr} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v48} + + + + +Definition at line 62 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Update\-Channe\-Raw\-Data\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubF1@{fSubF1}} +\index{fSubF1@{fSubF1}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-F1} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v6} + + + + +Definition at line 77 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubF2@{fSubF2}} +\index{fSubF2@{fSubF2}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-F2} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v7} + + + + +Definition at line 78 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubF3@{fSubF3}} +\index{fSubF3@{fSubF3}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-F3} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v8} + + + + +Definition at line 79 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubF4@{fSubF4}} +\index{fSubF4@{fSubF4}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-F4} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v9} + + + + +Definition at line 80 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubF5@{fSubF5}} +\index{fSubF5@{fSubF5}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-F5} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v10} + + + + +Definition at line 81 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubF6@{fSubF6}} +\index{fSubF6@{fSubF6}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-F6} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v11} + + + + +Definition at line 82 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubF7@{fSubF7}} +\index{fSubF7@{fSubF7}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-F7} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v12} + + + + +Definition at line 83 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubF8@{fSubF8}} +\index{fSubF8@{fSubF8}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGComposite\-Frame $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-F8} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v13} + + + + +Definition at line 84 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubSubTabRcu@{fSubSubTabRcu}} +\index{fSubSubTabRcu@{fSubSubTabRcu}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGTab $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-Sub\-Tab\-Rcu}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v19} + + + + +Definition at line 92 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubTab1@{fSubTab1}} +\index{fSubTab1@{fSubTab1}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGTab $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-Tab1} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v15} + + + + +Definition at line 87 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubTab2@{fSubTab2}} +\index{fSubTab2@{fSubTab2}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGTab $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-Tab2} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v16} + + + + +Definition at line 88 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubTab3@{fSubTab3}} +\index{fSubTab3@{fSubTab3}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGTab $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-Tab3} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v17} + + + + +Definition at line 89 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fSubTabModule@{fSubTabModule}} +\index{fSubTabModule@{fSubTabModule}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGTab $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Sub\-Tab\-Module}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v18} + + + + +Definition at line 91 of file Ali\-HLTPHOSOnline\-Display.cxx.\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fTab@{fTab}} +\index{fTab@{fTab}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TGTab $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Tab} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v14} + + + + +Definition at line 86 of file Ali\-HLTPHOSOnline\-Display.cxx. + +Referenced by Init\-Display().\index{AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}!fTest@{fTest}} +\index{fTest@{fTest}!AliHLTPHOSOnlineDisplay@{Ali\-HLTPHOSOnline\-Display}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TRoot\-Embedded\-Canvas $\ast$ {\bf Ali\-HLTPHOSOnline\-Display::f\-Test} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSOnlineDisplay_v21} + + + + +Definition at line 96 of file Ali\-HLTPHOSOnline\-Display.cxx. + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +Online\-Display/{\bf Ali\-HLTPHOSOnline\-Display.h}\item +Online\-Display/{\bf Ali\-HLTPHOSOnline\-Display.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducer.tex b/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducer.tex new file mode 100644 index 00000000000..78f036a8524 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducer.tex @@ -0,0 +1,577 @@ +\section{Ali\-HLTPHOSRcu\-Histogram\-Producer Class Reference} +\label{classAliHLTPHOSRcuHistogramProducer}\index{AliHLTPHOSRcuHistogramProducer@{AliHLTPHOSRcuHistogramProducer}} +{\tt \#include $<$Ali\-HLTPHOSRcu\-Histogram\-Producer.h$>$} + +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} () +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} ({\bf Ali\-HLTUInt8\_\-t} module\-ID, {\bf Ali\-HLTUInt8\_\-t} rcu\-X, {\bf Ali\-HLTUInt8\_\-t} rcu\-Z) +\item +virtual {\bf $\sim$Ali\-HLTPHOSRcu\-Histogram\-Producer} () +\item +int {\bf Get\-Equippment\-Id} () +\item +const {\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct} \& {\bf Get\-Cell\-Accumulated\-Energies} () +\item +int {\bf Increment\-Event\-Counter} () +\item +void {\bf Init} () +\item +void {\bf Set\-Equippment\-Id} (int id) +\item +void {\bf Set\-Rcu\-X} ({\bf Ali\-HLTUInt8\_\-t} X) +\item +void {\bf Set\-Rcu\-Z} ({\bf Ali\-HLTUInt8\_\-t} Z) +\item +void {\bf Set\-Module\-ID} ({\bf Ali\-HLTUInt8\_\-t} module\-ID) +\item +void {\bf Fill\-Energy} ({\bf Ali\-HLTUInt8\_\-t} x, {\bf Ali\-HLTUInt8\_\-t} z, {\bf Ali\-HLTUInt8\_\-t} gain, float energy) +\item +void {\bf Fill\-Time} ({\bf Ali\-HLTUInt8\_\-t} x, {\bf Ali\-HLTUInt8\_\-t} z, {\bf Ali\-HLTUInt8\_\-t} gain, float time) +\item +void {\bf Reset} () +\item +void {\bf Write\-Energy\-Histograms} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} (const {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} \&) +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} \& {\bf operator=} (const {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} \&) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +TH1F $\ast$ {\bf f\-Energy\-Histogram\-Ptrs} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\item +TH1F $\ast$ {\bf f\-Timing\-Histogram\-Ptrs} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\item +Float\_\-t {\bf f\-Energy\-Average\-Values} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\item +Double\_\-t {\bf f\-Accumulated\-Values} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\item +Float\_\-t {\bf f\-Timing\-Average\-Values} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Hits} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\item +int {\bf f\-Event\-Count} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Equippment\-ID} +\item +Double\_\-t {\bf f\-Tmp\-Channel\-Data} [ALTRO\_\-MAX\_\-SAMPLES] +\item +{\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct} {\bf f\-Cell\-Acc\-Energy} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-X} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-Z} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!AliHLTPHOSRcuHistogramProducer@{AliHLTPHOSRcuHistogramProducer}} +\index{AliHLTPHOSRcuHistogramProducer@{AliHLTPHOSRcuHistogramProducer}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSRcu\-Histogram\-Producer::Ali\-HLTPHOSRcu\-Histogram\-Producer ()}\label{classAliHLTPHOSRcuHistogramProducer_a0} + + + + +Definition at line 31 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +\footnotesize\begin{verbatim}31 : fEventCount(0), fEquippmentID(0), fModuleID(0), fRcuX(0), fRcuZ(0) +32 { +33 cout << "WARNING: You cannot invoke the AliHLTPHOSRcuHistogramProducer without arguments" << endl; +34 cout << "Usage AliHLTPHOSRcuHistogramProducer(ModuleID, X. Z)" << endl; +35 // Reset(); +36 // Init(); +37 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!AliHLTPHOSRcuHistogramProducer@{AliHLTPHOSRcuHistogramProducer}} +\index{AliHLTPHOSRcuHistogramProducer@{AliHLTPHOSRcuHistogramProducer}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSRcu\-Histogram\-Producer::Ali\-HLTPHOSRcu\-Histogram\-Producer ({\bf Ali\-HLTUInt8\_\-t} {\em module\-ID}, {\bf Ali\-HLTUInt8\_\-t} {\em rcu\-X}, {\bf Ali\-HLTUInt8\_\-t} {\em rcu\-Z})}\label{classAliHLTPHOSRcuHistogramProducer_a1} + + + + +Definition at line 39 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +References Init(), Set\-Module\-ID(), Set\-Rcu\-X(), and Set\-Rcu\-Z(). + +\footnotesize\begin{verbatim}40 { +41 SetModuleID(moduleID); +42 SetRcuX(rcuX); +43 SetRcuZ(rcuZ); +44 Init(); +45 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!~AliHLTPHOSRcuHistogramProducer@{$\sim$AliHLTPHOSRcuHistogramProducer}} +\index{~AliHLTPHOSRcuHistogramProducer@{$\sim$AliHLTPHOSRcuHistogramProducer}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSRcu\-Histogram\-Producer::$\sim${\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducer_a2} + + + + +Definition at line 47 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +\footnotesize\begin{verbatim}48 { +49 +50 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!AliHLTPHOSRcuHistogramProducer@{AliHLTPHOSRcuHistogramProducer}} +\index{AliHLTPHOSRcuHistogramProducer@{AliHLTPHOSRcuHistogramProducer}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSRcu\-Histogram\-Producer::Ali\-HLTPHOSRcu\-Histogram\-Producer (const {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} \&)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_d0} + + + + +\subsection{Member Function Documentation} +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!FillEnergy@{FillEnergy}} +\index{FillEnergy@{FillEnergy}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer::Fill\-Energy ({\bf Ali\-HLTUInt8\_\-t} {\em x}, {\bf Ali\-HLTUInt8\_\-t} {\em z}, {\bf Ali\-HLTUInt8\_\-t} {\em gain}, float {\em energy})}\label{classAliHLTPHOSRcuHistogramProducer_a11} + + + + +Definition at line 133 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +References Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Accumulated\-Energies, f\-Cell\-Acc\-Energy, f\-Energy\-Histogram\-Ptrs, and Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Hits. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(). + +\footnotesize\begin{verbatim}134 { +135 fCellAccEnergy.fAccumulatedEnergies[x][z][gain] += energy; +136 fCellAccEnergy.fHits[x][z][gain] ++; +137 fEnergyHistogramPtrs[x][z][gain]->Fill(energy); +138 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!FillTime@{FillTime}} +\index{FillTime@{FillTime}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer::Fill\-Time ({\bf Ali\-HLTUInt8\_\-t} {\em x}, {\bf Ali\-HLTUInt8\_\-t} {\em z}, {\bf Ali\-HLTUInt8\_\-t} {\em gain}, float {\em time})}\label{classAliHLTPHOSRcuHistogramProducer_a12} + + + + +Definition at line 142 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +References f\-Timing\-Histogram\-Ptrs. + +\footnotesize\begin{verbatim}143 { +144 fTimingHistogramPtrs[x][z][gain]->Fill(time); +145 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!GetCellAccumulatedEnergies@{GetCellAccumulatedEnergies}} +\index{GetCellAccumulatedEnergies@{GetCellAccumulatedEnergies}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct} \& Ali\-HLTPHOSRcu\-Histogram\-Producer::Get\-Cell\-Accumulated\-Energies ()}\label{classAliHLTPHOSRcuHistogramProducer_a4} + + + + +Definition at line 148 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(). + +\footnotesize\begin{verbatim}149 { +150 // return &fCellAccEnergy ; +151 return fCellAccEnergy ; +152 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!GetEquippmentId@{GetEquippmentId}} +\index{GetEquippmentId@{GetEquippmentId}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSRcu\-Histogram\-Producer::Get\-Equippment\-Id ()}\label{classAliHLTPHOSRcuHistogramProducer_a3} + + + + +Definition at line 96 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +\footnotesize\begin{verbatim}97 { +98 return fEquippmentID; +99 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!IncrementEventCounter@{IncrementEventCounter}} +\index{IncrementEventCounter@{IncrementEventCounter}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSRcu\-Histogram\-Producer::Increment\-Event\-Counter ()}\label{classAliHLTPHOSRcuHistogramProducer_a5} + + + + +Definition at line 155 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +References f\-Event\-Count. + +\footnotesize\begin{verbatim}156 { +157 fEventCount ++; +158 return fEventCount; +159 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!Init@{Init}} +\index{Init@{Init}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer::Init ()}\label{classAliHLTPHOSRcuHistogramProducer_a6} + + + + +Definition at line 54 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +References Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Accumulated\-Energies, f\-Accumulated\-Values, f\-Cell\-Acc\-Energy, f\-Energy\-Average\-Values, f\-Energy\-Histogram\-Ptrs, Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Hits, f\-Hits, Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Module\-ID, f\-Module\-ID, Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Rcu\-X, Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Rcu\-Z, f\-Timing\-Average\-Values, f\-Timing\-Histogram\-Ptrs, N\_\-BINS, N\_\-XCOLUMNS\_\-RCU, N\_\-ZROWS\_\-RCU, XBIN\_\-LOW, and XBIN\_\-UP. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer(). + +\footnotesize\begin{verbatim}55 { +56 char tmpHistoName[256]; +57 int geomx; +58 int geomz; +59 +60 +61 for(int x = 0; x < N_XCOLUMNS_RCU; x ++) +62 { +63 for(int z = 0; z < N_ZROWS_RCU; z ++) +64 { +65 for(int gain = 0; gain < N_GAINS; gain ++) +66 { +67 geomx = x + N_XCOLUMNS_RCU*fRcuX; +68 geomz = z + N_ZROWS_RCU*fRcuZ; +69 +70 fEnergyAverageValues[x][z][gain] = 0; +71 fAccumulatedValues[x][z][gain] = 0; +72 fTimingAverageValues[x][z][gain] = 0; +73 fHits[x][z][gain] = 0; +74 sprintf(tmpHistoName, "Edistribution_%d_%d_%d_%d",(int)fModuleID, geomx, geomz, gain); +75 fEnergyHistogramPtrs[x][z][gain] = 0; +76 +77 fEnergyHistogramPtrs[x][z][gain] = new TH1F( tmpHistoName, tmpHistoName, N_BINS, XBIN_LOW, XBIN_UP); +78 +79 sprintf(tmpHistoName, "TOFdistribution_%d_%d_%d_%d",(int)fModuleID, geomx, geomz, gain); +80 +81 fTimingHistogramPtrs[x][z][gain] = 0; +82 +83 fTimingHistogramPtrs[x][z][gain] = new TH1F(tmpHistoName , tmpHistoName, N_BINS, XBIN_LOW, XBIN_UP); +84 +85 fCellAccEnergy.fAccumulatedEnergies[x][z][gain] = 0; +86 fCellAccEnergy.fHits[x][z][gain] = 0; +87 fCellAccEnergy.fModuleID = 0; +88 fCellAccEnergy.fRcuX = 0; +89 fCellAccEnergy.fRcuZ = 0; +90 } +91 } +92 } +93 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer}\& Ali\-HLTPHOSRcu\-Histogram\-Producer::operator= (const {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} \&)\hspace{0.3cm}{\tt [inline, private]}}\label{classAliHLTPHOSRcuHistogramProducer_d1} + + + + +Definition at line 42 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +\footnotesize\begin{verbatim}43 { +44 return *this; +45 }; +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!Reset@{Reset}} +\index{Reset@{Reset}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer::Reset ()}\label{classAliHLTPHOSRcuHistogramProducer_a13} + + + + +Definition at line 163 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx. + +References f\-Accumulated\-Values, f\-Energy\-Average\-Values, f\-Hits, f\-Timing\-Average\-Values, and f\-Tmp\-Channel\-Data. + +\footnotesize\begin{verbatim}164 { +165 for(int x = 0; x < N_XCOLUMNS_RCU; x ++) +166 { +167 for(int z = 0; z < N_ZROWS_RCU; z ++) +168 { +169 for(int gain = 0; gain < N_GAINS; gain ++) +170 { +171 fEnergyAverageValues[x][z][gain] = 0; +172 fAccumulatedValues[x][z][gain] = 0; +173 fTimingAverageValues[x][z][gain] = 0; +174 fHits[x][z][gain] = 0; +175 } +176 } +177 } +178 +179 for(int i = 0; i IsOpen()) return; +194 +195 cout <<"printing histograms"<< endl; +196 cout <<"histofile-Getname() =" << histoFile->GetName() << endl; +197 +198 for(int x = 0; x < N_XCOLUMNS_RCU; x ++) +199 { +200 for(int z = 0; z < N_ZROWS_RCU; z ++) +201 { +202 for(int gain = 0; gain < N_GAINS; gain ++) +203 { +204 fEnergyHistogramPtrs[x][z][gain]->Write(); +205 } +206 } +207 } +208 +209 cout << "printing histograms, finished"<< endl; +210 histoFile->Close(); +211 +212 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fAccumulatedValues@{fAccumulatedValues}} +\index{fAccumulatedValues@{fAccumulatedValues}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Double\_\-t {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Accumulated\-Values}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r3} + + + + +Definition at line 51 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Init(), and Reset().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fCellAccEnergy@{fCellAccEnergy}} +\index{fCellAccEnergy@{fCellAccEnergy}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Cell\-Acc\-Energy}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r9} + + + + +Definition at line 58 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Fill\-Energy(), Init(), Set\-Rcu\-X(), and Set\-Rcu\-Z().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fEnergyAverageValues@{fEnergyAverageValues}} +\index{fEnergyAverageValues@{fEnergyAverageValues}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Float\_\-t {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Energy\-Average\-Values}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r2} + + + + +Definition at line 50 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Init(), and Reset().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fEnergyHistogramPtrs@{fEnergyHistogramPtrs}} +\index{fEnergyHistogramPtrs@{fEnergyHistogramPtrs}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TH1F$\ast$ {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Energy\-Histogram\-Ptrs}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r0} + + + + +Definition at line 47 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Fill\-Energy(), Init(), and Write\-Energy\-Histograms().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fEquippmentID@{fEquippmentID}} +\index{fEquippmentID@{fEquippmentID}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Equippment\-ID}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r7} + + + + +Definition at line 55 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Set\-Equippment\-Id().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fEventCount@{fEventCount}} +\index{fEventCount@{fEventCount}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Event\-Count}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r6} + + + + +Definition at line 54 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Increment\-Event\-Counter().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fHits@{fHits}} +\index{fHits@{fHits}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Hits}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r5} + + + + +Definition at line 53 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Init(), and Reset().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Module\-ID}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r10} + + + + +Definition at line 60 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Init(), Set\-Module\-ID(), and Write\-Energy\-Histograms().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fRcuX@{fRcuX}} +\index{fRcuX@{fRcuX}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Rcu\-X}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r11} + + + + +Definition at line 61 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Set\-Rcu\-X(), and Write\-Energy\-Histograms().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fRcuZ@{fRcuZ}} +\index{fRcuZ@{fRcuZ}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Rcu\-Z}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r12} + + + + +Definition at line 62 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Set\-Rcu\-Z(), and Write\-Energy\-Histograms().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fTimingAverageValues@{fTimingAverageValues}} +\index{fTimingAverageValues@{fTimingAverageValues}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Float\_\-t {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Timing\-Average\-Values}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r4} + + + + +Definition at line 52 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Init(), and Reset().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fTimingHistogramPtrs@{fTimingHistogramPtrs}} +\index{fTimingHistogramPtrs@{fTimingHistogramPtrs}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TH1F$\ast$ {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Timing\-Histogram\-Ptrs}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r1} + + + + +Definition at line 48 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Fill\-Time(), and Init().\index{AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}!fTmpChannelData@{fTmpChannelData}} +\index{fTmpChannelData@{fTmpChannelData}!AliHLTPHOSRcuHistogramProducer@{Ali\-HLTPHOSRcu\-Histogram\-Producer}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Double\_\-t {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer::f\-Tmp\-Channel\-Data}[ALTRO\_\-MAX\_\-SAMPLES]\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducer_r8} + + + + +Definition at line 56 of file Ali\-HLTPHOSRcu\-Histogram\-Producer.h. + +Referenced by Reset(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer.h}\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducerComponent.eps b/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducerComponent.eps new file mode 100644 index 00000000000..08a331ac918 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducerComponent.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 278.746 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.79375 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTPHOSRcuHistogramProducerComponent) cw +(AliHLTProcessor) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTPHOSRcuHistogramProducerComponent) 0 0 box + (AliHLTProcessor) 0 1 box + (AliHLTComponent) 0 2 box + (AliHLTLogging) 0 3 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in +solid +0 0 1 out +solid +1 0 2 in +solid +0 0 2 out +solid +1 0 3 in diff --git a/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducerComponent.tex b/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducerComponent.tex new file mode 100644 index 00000000000..0b4735079b5 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTPHOSRcuHistogramProducerComponent.tex @@ -0,0 +1,664 @@ +\section{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component Class Reference} +\label{classAliHLTPHOSRcuHistogramProducerComponent}\index{AliHLTPHOSRcuHistogramProducerComponent@{AliHLTPHOSRcuHistogramProducerComponent}} +{\tt \#include $<$Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h$>$} + +Inheritance diagram for Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4cm]{classAliHLTPHOSRcuHistogramProducerComponent} +\end{center} +\end{figure} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} () +\item +virtual {\bf $\sim$Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} () +\item +virtual int {\bf Do\-Init} (int argc, const char $\ast$$\ast$argv) +\item +virtual int {\bf Deinit} () +\item +virtual int {\bf Do\-Deinit} () +\item +virtual int {\bf Do\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks) +\item +virtual void {\bf Get\-Input\-Data\-Types} (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&) +\item +virtual {\bf Ali\-HLTComponent\-Data\-Type} {\bf Get\-Output\-Data\-Type} () +\item +virtual void {\bf Get\-Output\-Data\-Size} (unsigned long \&const\-Base, double \&input\-Multiplier) +\item +virtual {\bf Ali\-HLTComponent} $\ast$ {\bf Spawn} () +\item +virtual const char $\ast$ {\bf Get\-Component\-ID} () +\item +int {\bf Get\-Equippment\-Id} () +\item +void {\bf Set\-Rcu\-X} ({\bf Ali\-HLTUInt8\_\-t} X) +\item +void {\bf Set\-Rcu\-Z} ({\bf Ali\-HLTUInt8\_\-t} Z) +\item +void {\bf Set\-Module\-ID} ({\bf Ali\-HLTUInt8\_\-t} module\-ID) +\item +void {\bf Set\-Equippment\-Id} (int id) +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} (const {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} \&) +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} \& {\bf operator=} (const {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} \&) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +int {\bf f\-Event\-Count} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-X} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-Z} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer} $\ast$ {\bf f\-Rcu\-Histo\-Producer\-Ptr} +\item +{\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct} $\ast$ {\bf f\-Out\-Ptr} +\item +int {\bf f\-Equippment\-ID} +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf input\-Data\-Types} [$\,$] = \{{\bf k\-Ali\-HLTVoid\-Data\-Type},\{0,\char`\"{}\char`\"{},\char`\"{}\char`\"{}\}\} +\item +const {\bf Ali\-HLTComponent\-Data\-Type} {\bf output\-Data\-Type} = {\bf k\-Ali\-HLTVoid\-Data\-Type} +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!AliHLTPHOSRcuHistogramProducerComponent@{AliHLTPHOSRcuHistogramProducerComponent}} +\index{AliHLTPHOSRcuHistogramProducerComponent@{AliHLTPHOSRcuHistogramProducerComponent}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component ()}\label{classAliHLTPHOSRcuHistogramProducerComponent_a0} + + + + +Definition at line 39 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}39 :AliHLTProcessor(), fEventCount(0), fRcuHistoProducerPtr(0) +40 { +41 // Reset(); +42 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!~AliHLTPHOSRcuHistogramProducerComponent@{$\sim$AliHLTPHOSRcuHistogramProducerComponent}} +\index{~AliHLTPHOSRcuHistogramProducerComponent@{$\sim$AliHLTPHOSRcuHistogramProducerComponent}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::$\sim${\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a1} + + + + +Definition at line 46 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}47 { +48 +49 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!AliHLTPHOSRcuHistogramProducerComponent@{AliHLTPHOSRcuHistogramProducerComponent}} +\index{AliHLTPHOSRcuHistogramProducerComponent@{AliHLTPHOSRcuHistogramProducerComponent}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component (const {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} \&)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_d0} + + + + +Definition at line 52 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}52 : AliHLTProcessor(), fEventCount(0), fRcuHistoProducerPtr(0) +53 { +54 +55 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!Deinit@{Deinit}} +\index{Deinit@{Deinit}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a3} + + +Clean-up function to terminate data processing. Clean-up of common data structures after data processing. The call is redirected to the internal method {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a4})} which can be overridden by the child class. + +Reimplemented from {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_a3})}. + +Definition at line 59 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References f\-Rcu\-Histo\-Producer\-Ptr, and Ali\-HLTPHOSRcu\-Histogram\-Producer::Write\-Energy\-Histograms(). + +\footnotesize\begin{verbatim}60 { +61 cout << "AliHLTPHOSRcuHistogramProducerComponent::Deinit()" << endl; +62 fRcuHistoProducerPtr->WriteEnergyHistograms(); +63 return 0; +64 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!DoDeinit@{DoDeinit}} +\index{DoDeinit@{DoDeinit}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a4} + + +Default method for the internal clean-up. The method is called by {\bf Deinit}{\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a3})} + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_b6})}. + +Definition at line 68 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References k\-HLTLog\-Info, and Ali\-HLTLogging::Logging(). + +\footnotesize\begin{verbatim}69 { +70 Logging(kHLTLogInfo, "HLT", "PHOS", ",AliHLTPHOSRcuHistogramProducer DoDeinit"); +71 return 0; +72 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!DoEvent@{DoEvent}} +\index{DoEvent@{DoEvent}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a5} + + +The low-level data processing method for the component. This is the custom processing method and can be overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em blocks}]input data block descriptors \item[{\em trig\-Data}]trigger data structure \item[{\em output\-Ptr}]pointer to target buffer \item[{\em size}]{\em input\/}: size of target buffer {\em output\/}:size of produced data \item[{\em output\-Blocks}]list to receive output block descriptors \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Reimplemented from {\bf Ali\-HLTProcessor} {\rm (p.\,\pageref{classAliHLTProcessor_d0})}. + +Definition at line 109 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References Ali\-HLTUInt8\_\-t, Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Accumulated\-Energies, Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Cnt, Ali\-HLTComponent\-Block\-Data::f\-Data\-Type, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Energy, f\-Event\-Count, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Gain, Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Hits, Ali\-HLTComponent::Fill\-Block\-Data(), Ali\-HLTPHOSRcu\-Histogram\-Producer::Fill\-Energy(), Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Module\-ID, Ali\-HLTComponent\-Block\-Data::f\-Offset, f\-Out\-Ptr, Ali\-HLTComponent\-Block\-Data::f\-Ptr, f\-Rcu\-Histo\-Producer\-Ptr, Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Rcu\-X, Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Rcu\-Z, Ali\-HLTComponent\-Block\-Data::f\-Size, Ali\-HLTComponent\-Block\-Data::f\-Specification, Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Valid\-Data, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-X, Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Z, Ali\-HLTPHOSRcu\-Histogram\-Producer::Get\-Cell\-Accumulated\-Energies(), k\-HLTLog\-Fatal, and Ali\-HLTLogging::Logging(). + +\footnotesize\begin{verbatim}112 { +113 unsigned long ndx = 0; +114 UInt_t offset = 0; +115 UInt_t mysize = 0; +116 UInt_t tSize = 0; +117 const AliHLTComponentBlockData* iter = NULL; +118 AliHLTPHOSRcuCellEnergyDataStruct *cellDataPtr; +119 AliHLTUInt8_t* outBPtr; +120 +121 // outBPtr = outputPtr; +122 // fOutPtr = (AliHLTPHOSRcuCellAccumulatedEnergyDataStruct*)outBPtr; +123 int tmpCnt; +124 +125 for( ndx = 0; ndx < evtData.fBlockCnt; ndx++ ) +126 { +127 iter = blocks+ndx; +128 cellDataPtr = (AliHLTPHOSRcuCellEnergyDataStruct*)( iter->fPtr); +129 tmpCnt = cellDataPtr->fCnt; +130 +131 for(int i= 0; i <= tmpCnt; i ++) +132 { +133 fRcuHistoProducerPtr->FillEnergy(cellDataPtr->fValidData[i].fX, +134 cellDataPtr->fValidData[i].fZ, +135 cellDataPtr->fValidData[i].fGain, +136 cellDataPtr->fValidData[i].fEnergy); +137 } +138 } +139 +140 outBPtr = outputPtr; +141 fOutPtr = (AliHLTPHOSRcuCellAccumulatedEnergyDataStruct*)outBPtr; +142 const AliHLTPHOSRcuCellAccumulatedEnergyDataStruct &innPtr = fRcuHistoProducerPtr->GetCellAccumulatedEnergies(); +143 +144 fOutPtr->fModuleID = fModuleID; +145 fOutPtr->fRcuX = fRcuX; +146 fOutPtr->fRcuZ = fRcuZ; +147 +148 +149 for(int x=0; x < N_XCOLUMNS_RCU; x ++) +150 { +151 for(int z=0; z < N_XCOLUMNS_RCU; z ++) +152 { +153 for(int gain =0; gain < N_GAINS; gain ++) +154 { +155 fOutPtr->fAccumulatedEnergies[x][z][gain] = innPtr.fAccumulatedEnergies[x][z][gain]; +156 fOutPtr->fHits[x][z][gain] = innPtr.fHits[x][z][gain]; +157 } +158 } +159 } +160 +161 +162 //pushing data to shared output memory +163 mysize += sizeof(AliHLTPHOSRcuCellAccumulatedEnergyDataStruct); +164 AliHLTComponentBlockData bd; +165 FillBlockData( bd ); +166 bd.fOffset = offset; +167 bd.fSize = mysize; +168 bd.fDataType = AliHLTPHOSDefinitions::gkCellAccumulatedEnergyDataType; +169 bd.fSpecification = 0xFFFFFFFF; +170 outputBlocks.push_back( bd ); +171 tSize += mysize; +172 outBPtr += mysize; +173 +174 if( tSize > size ) +175 { +176 Logging( kHLTLogFatal, "HLT::AliHLTRcuHistogramProducerComponent::DoEvent", "Too much data", +177 "Data written over allowed buffer. Amount written: %lu, allowed amount: %lu." +178 , tSize, size ); +179 return EMSGSIZE; +180 } +181 +182 fEventCount++; +183 return 0; +184 }//end DoEvent +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!DoInit@{DoInit}} +\index{DoInit@{DoInit}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Init (int {\em argc}, const char $\ast$$\ast$ {\em argv})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a2} + + +Default method for the internal initialization. The method is called by {\bf Init}{\rm (p.\,\pageref{classAliHLTProcessor_a2})} + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_b5})}. + +Definition at line 188 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References Ali\-HLTUInt8\_\-t, f\-Equippment\-ID, f\-Rcu\-Histo\-Producer\-Ptr, k\-HLTLog\-Fatal, Ali\-HLTLogging::Logging(), Set\-Module\-ID(), Set\-Rcu\-X(), and Set\-Rcu\-Z(). + +\footnotesize\begin{verbatim}189 { +190 int iResult=0; +191 TString argument=""; +192 // fRcuHistoProducerPtr = new AliHLTPHOSRcuHistogramProducer(); +193 AliHLTUInt8_t tmpRcuX; +194 AliHLTUInt8_t tmpRcuZ; +195 AliHLTUInt8_t tmpModuleID; +196 Bool_t isSetEquippmentID = kFALSE; +197 +198 for(int i=0; i=0; i++) +199 { +200 argument=argv[i]; +201 +202 if (argument.IsNull()) +203 { +204 continue; +205 } +206 if (argument.CompareTo("-equipmentID") == 0) +207 { +208 if(i+1 <= argc) +209 { +210 fEquippmentID = atoi(argv[i+1]); +211 isSetEquippmentID = kTRUE; +212 } +213 else +214 { +215 iResult= -1; +216 Logging( kHLTLogFatal, "HLT::AliHLTPHOSRcuHistogramProducerComponent::DoInt( int argc, const char** argv )", "Missing argument", +217 "The argument -equippmentID expects a number"); +218 return iResult; +219 } +220 } +221 +222 int rcuIndex = (fEquippmentID - 1792)%N_RCUS_PER_MODULE; +223 // fModuleID = (fEquippmentID -1792 -rcuIndex)/N_RCUS_PER_MODULE; +224 tmpModuleID = ((fEquippmentID -1792 -rcuIndex)/N_RCUS_PER_MODULE); +225 SetModuleID(tmpModuleID); +226 +227 if(rcuIndex == 0) +228 { +229 tmpRcuX = 0; +230 tmpRcuZ = 0; +231 } +232 +233 if(rcuIndex == 1) +234 { +235 tmpRcuX = 0; +236 tmpRcuZ = 1; +237 } +238 +239 if(rcuIndex == 2) +240 { +241 tmpRcuX = 1; +242 tmpRcuZ = 0; +243 } +244 +245 if(rcuIndex == 3) +246 { +247 tmpRcuX = 1; +248 tmpRcuZ = 1; +249 } +250 +251 SetRcuX(tmpRcuX); +252 SetRcuZ(tmpRcuZ); +253 cout <<"********InitInfo************"<< endl; +254 cout <<"AliHLTPHOSRcuHistogramProducerComponent::SetCoordinate"<< endl; +255 cout <<"Equpippment ID =\t"<< fEquippmentID <"); +265 iResult = -2; +266 } +267 +268 +269 fRcuHistoProducerPtr = new AliHLTPHOSRcuHistogramProducer( tmpModuleID, tmpRcuX, tmpRcuZ); +270 +271 +272 return iResult; +273 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!GetComponentID@{GetComponentID}} +\index{GetComponentID@{GetComponentID}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Get\-Component\-ID ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a10} + + +Get the id of the component. Each component is identified by a unique id. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]component id (string) \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a9})}. + +Definition at line 76 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}77 { +78 return "RcuHistogramProducer"; +79 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!GetEquippmentId@{GetEquippmentId}} +\index{GetEquippmentId@{GetEquippmentId}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Get\-Equippment\-Id ()}\label{classAliHLTPHOSRcuHistogramProducerComponent_a11} + + + + +Definition at line 306 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}307 { +308 return fEquippmentID; +309 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!GetInputDataTypes@{GetInputDataTypes}} +\index{GetInputDataTypes@{GetInputDataTypes}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Get\-Input\-Data\-Types (std::vector$<$ {\bf Ali\-HLTComponent\-Data\-Type} $>$ \&)\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a6} + + + + +Definition at line 83 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References Ali\-HLTComponent\-Data\-Type::f\-ID. + +\footnotesize\begin{verbatim}84 { +85 const AliHLTComponentDataType* pType=inputDataTypes; +86 while (pType->fID!=0) +87 { +88 list.push_back(*pType); +89 pType++; +90 } +91 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!GetOutputDataSize@{GetOutputDataSize}} +\index{GetOutputDataSize@{GetOutputDataSize}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Get\-Output\-Data\-Size (unsigned long \& {\em const\-Base}, double \& {\em input\-Multiplier})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a8} + + +Get a ratio by how much the data volume is shrinked or enhanced. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em const\-Base}]{\em return\/}: additive part, independent of the input data volume \item[{\em input\-Multiplier}]{\em return\/}: multiplication ratio \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]values in the reference variables \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a12})}. + +Definition at line 102 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}103 { +104 constBase = 30; +105 inputMultiplier = 1; +106 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!GetOutputDataType@{GetOutputDataType}} +\index{GetOutputDataType@{GetOutputDataType}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Get\-Output\-Data\-Type ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a7} + + +Get the output data type of the component. The function is pure virtual and must be implemented by the child class. \begin{Desc} +\item[Returns:]output data type \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a11})}. + +Definition at line 95 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}96 { +97 return AliHLTPHOSDefinitions::gkCellEnergyDataType; +98 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}\& Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::operator= (const {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} \&)\hspace{0.3cm}{\tt [inline, private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_d1} + + + + +Definition at line 47 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h. + +\footnotesize\begin{verbatim}48 { +49 return *this; +50 }; +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!SetEquippmentId@{SetEquippmentId}} +\index{SetEquippmentId@{SetEquippmentId}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Set\-Equippment\-Id (int {\em id})}\label{classAliHLTPHOSRcuHistogramProducerComponent_a15} + + + + +Definition at line 298 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References f\-Equippment\-ID, f\-Rcu\-Histo\-Producer\-Ptr, and Ali\-HLTPHOSRcu\-Histogram\-Producer::Set\-Equippment\-Id(). + +\footnotesize\begin{verbatim}299 { +300 fEquippmentID = id; +301 fRcuHistoProducerPtr->SetEquippmentId(id); +302 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!SetModuleID@{SetModuleID}} +\index{SetModuleID@{SetModuleID}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Set\-Module\-ID ({\bf Ali\-HLTUInt8\_\-t} {\em module\-ID})}\label{classAliHLTPHOSRcuHistogramProducerComponent_a14} + + + + +Definition at line 291 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References f\-Module\-ID. + +Referenced by Do\-Init(). + +\footnotesize\begin{verbatim}292 { +293 fModuleID = moduleID; +294 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!SetRcuX@{SetRcuX}} +\index{SetRcuX@{SetRcuX}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Set\-Rcu\-X ({\bf Ali\-HLTUInt8\_\-t} {\em X})}\label{classAliHLTPHOSRcuHistogramProducerComponent_a12} + + + + +Definition at line 277 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References f\-Rcu\-X. + +Referenced by Do\-Init(). + +\footnotesize\begin{verbatim}278 { +279 fRcuX = X; +280 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!SetRcuZ@{SetRcuZ}} +\index{SetRcuZ@{SetRcuZ}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Set\-Rcu\-Z ({\bf Ali\-HLTUInt8\_\-t} {\em Z})}\label{classAliHLTPHOSRcuHistogramProducerComponent_a13} + + + + +Definition at line 284 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +References f\-Rcu\-Z. + +Referenced by Do\-Init(). + +\footnotesize\begin{verbatim}285 { +286 fRcuZ = Z; +287 } +\end{verbatim}\normalsize + + +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!Spawn@{Spawn}} +\index{Spawn@{Spawn}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent} $\ast$ Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Spawn ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_a9} + + +Spawn function. Each component must implement a spawn function to create a new instance of the class. Basically the function must return {\em new {\bf my\_\-class\_\-name}\/}. \begin{Desc} +\item[Returns:]new class instance \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a13})}. + +Definition at line 313 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +\footnotesize\begin{verbatim}314 { +315 return new AliHLTPHOSRcuHistogramProducerComponent; +316 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!fEquippmentID@{fEquippmentID}} +\index{fEquippmentID@{fEquippmentID}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::f\-Equippment\-ID}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_r6} + + + + +Definition at line 64 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h. + +Referenced by Do\-Init(), and Set\-Equippment\-Id().\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!fEventCount@{fEventCount}} +\index{fEventCount@{fEventCount}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::f\-Event\-Count}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_r0} + + +internal event no + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_r2})}. + +Definition at line 51 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h. + +Referenced by Do\-Event().\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::f\-Module\-ID}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_r3} + + + + +Definition at line 54 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h. + +Referenced by Set\-Module\-ID().\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!fOutPtr@{fOutPtr}} +\index{fOutPtr@{fOutPtr}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}$\ast$ {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::f\-Out\-Ptr}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_r5} + + + + +Definition at line 56 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h. + +Referenced by Do\-Event().\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!fRcuHistoProducerPtr@{fRcuHistoProducerPtr}} +\index{fRcuHistoProducerPtr@{fRcuHistoProducerPtr}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer}$\ast$ {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::f\-Rcu\-Histo\-Producer\-Ptr}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_r4} + + + + +Definition at line 55 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h. + +Referenced by Deinit(), Do\-Event(), Do\-Init(), and Set\-Equippment\-Id().\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!fRcuX@{fRcuX}} +\index{fRcuX@{fRcuX}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::f\-Rcu\-X}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_r1} + + + + +Definition at line 52 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h. + +Referenced by Set\-Rcu\-X().\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!fRcuZ@{fRcuZ}} +\index{fRcuZ@{fRcuZ}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::f\-Rcu\-Z}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_r2} + + + + +Definition at line 53 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h. + +Referenced by Set\-Rcu\-Z().\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!inputDataTypes@{inputDataTypes}} +\index{inputDataTypes@{inputDataTypes}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::input\-Data\-Types} = \{{\bf k\-Ali\-HLTVoid\-Data\-Type},\{0,\char`\"{}\char`\"{},\char`\"{}\char`\"{}\}\}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_v0} + + + + +Definition at line 27 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx.\index{AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}!outputDataType@{outputDataType}} +\index{outputDataType@{outputDataType}!AliHLTPHOSRcuHistogramProducerComponent@{Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::output\-Data\-Type} = {\bf k\-Ali\-HLTVoid\-Data\-Type}\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTPHOSRcuHistogramProducerComponent_v1} + + + + +Definition at line 28 of file Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx. + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.h}\item +{\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTProcessor.eps b/HLT/PHOS/latex/classAliHLTProcessor.eps new file mode 100644 index 00000000000..58225c727d9 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTProcessor.eps @@ -0,0 +1,239 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 67.5676 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 7.4 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 5 def +/cols 5 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTProcessor) cw +(AliHLTComponent) cw +(AliHLTLogging) cw +(AliHLTPHOSDDLDecoderComponent) cw +(AliHLTPHOSHistogramProducerComponent) cw +(AliHLTPHOSModuleMergerComponent) cw +(AliHLTPHOSRawAnalyzerComponent) cw +(AliHLTPHOSRcuHistogramProducerComponent) cw +(AliHLTPHOSRawAnalyzerCrudeComponent) cw +(AliHLTPHOSRawAnalyzerPeakFinderComponent) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTProcessor) 2 2 box + (AliHLTComponent) 2 3 box + (AliHLTLogging) 2 4 box + (AliHLTPHOSDDLDecoderComponent) 0 1 box + (AliHLTPHOSHistogramProducerComponent) 1 1 box + (AliHLTPHOSModuleMergerComponent) 2 1 box + (AliHLTPHOSRawAnalyzerComponent) 3 1 box + (AliHLTPHOSRcuHistogramProducerComponent) 4 1 box + (AliHLTPHOSRawAnalyzerCrudeComponent) 2.5 0 box + (AliHLTPHOSRawAnalyzerPeakFinderComponent) 3.5 0 box + +% ----- relations ----- + +solid +0 2 2 out +solid +1 2 3 in +solid +0 2 3 out +solid +1 2 4 in +solid +1 2 1.25 out +solid +0 4 2 conn +solid +0 0 1.75 in +solid +0 1 1.75 in +solid +0 2 1.75 in +solid +0 3 1.75 in +solid +1 3 0.25 out +solid +2.5 3.5 1 conn +solid +0 4 1.75 in +solid +0 2.5 0.75 in +solid +0 3.5 0.75 in diff --git a/HLT/PHOS/latex/classAliHLTProcessor.tex b/HLT/PHOS/latex/classAliHLTProcessor.tex new file mode 100644 index 00000000000..229b6ac7646 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTProcessor.tex @@ -0,0 +1,220 @@ +\section{Ali\-HLTProcessor Class Reference} +\label{classAliHLTProcessor}\index{AliHLTProcessor@{AliHLTProcessor}} +{\tt \#include $<$Ali\-HLTProcessor.h$>$} + +Inheritance diagram for Ali\-HLTProcessor::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=1.89189cm]{classAliHLTProcessor} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Base class of HLT data analysis components. The class provides a common interface for the implementation of HLT data analysis components. The child class must implement the functions:\begin{itemize} +\item {\bf Do\-Init}{\rm (p.\,\pageref{classAliHLTComponent_b5})} (optional)\item {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTComponent_b6})} (optional)\item {\bf Do\-Event}{\rm (p.\,\pageref{classAliHLTProcessor_d0})}\item {\bf Get\-Component\-ID}{\rm (p.\,\pageref{classAliHLTComponent_a9})}\item {\bf Get\-Input\-Data\-Types}{\rm (p.\,\pageref{classAliHLTComponent_a10})}\item {\bf Get\-Output\-Data\-Type}{\rm (p.\,\pageref{classAliHLTComponent_a11})}\item {\bf Get\-Output\-Data\-Size}{\rm (p.\,\pageref{classAliHLTComponent_a12})}\item {\bf Spawn}{\rm (p.\,\pageref{classAliHLTComponent_a13})} \end{itemize} + + + + +Definition at line 32 of file Ali\-HLTProcessor.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTProcessor} () +\item +virtual {\bf $\sim$Ali\-HLTProcessor} () +\item +int {\bf Init} ({\bf Ali\-HLTComponent\-Environment} $\ast$environ, void $\ast$environ\-Param, int argc, const char $\ast$$\ast$argv) +\item +int {\bf Deinit} () +\item +int {\bf Do\-Processing} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\&edd) +\item +{\bf TComponent\-Type} {\bf Get\-Component\-Type} () +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +virtual int {\bf Do\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} \&size, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \&output\-Blocks) +\item +virtual int {\bf Do\-Event} (const {\bf Ali\-HLTComponent\-Event\-Data} \&evt\-Data, {\bf Ali\-HLTComponent\-Trigger\-Data} \&trig\-Data) +\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTProcessor@{Ali\-HLTProcessor}!AliHLTProcessor@{AliHLTProcessor}} +\index{AliHLTProcessor@{AliHLTProcessor}!AliHLTProcessor@{Ali\-HLTProcessor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTProcessor::Ali\-HLTProcessor ()}\label{classAliHLTProcessor_a0} + + +standard constructor \index{AliHLTProcessor@{Ali\-HLTProcessor}!~AliHLTProcessor@{$\sim$AliHLTProcessor}} +\index{~AliHLTProcessor@{$\sim$AliHLTProcessor}!AliHLTProcessor@{Ali\-HLTProcessor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTProcessor::$\sim${\bf Ali\-HLTProcessor} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTProcessor_a1} + + +standard destructor + +Definition at line 43 of file Ali\-HLTProcessor.cxx. + +\footnotesize\begin{verbatim}44 { +45 // see header file for class documentation +46 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTProcessor@{Ali\-HLTProcessor}!Deinit@{Deinit}} +\index{Deinit@{Deinit}!AliHLTProcessor@{Ali\-HLTProcessor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTProcessor::Deinit ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTProcessor_a3} + + +Clean-up function to terminate data processing. Clean-up of common data structures after data processing. The call is redirected to the internal method {\bf Do\-Deinit}{\rm (p.\,\pageref{classAliHLTComponent_b6})} which can be overridden by the child class. + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a5})}. + +Reimplemented in {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a5})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a5})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a5})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_a5})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a3})}. + +Definition at line 56 of file Ali\-HLTProcessor.cxx. + +References Ali\-HLTComponent::Deinit(). + +\footnotesize\begin{verbatim}57 { +58 // see header file for class documentation +59 int iResult=0; +60 iResult=AliHLTComponent::Deinit(); +61 return iResult; +62 } +\end{verbatim}\normalsize + + +\index{AliHLTProcessor@{Ali\-HLTProcessor}!DoEvent@{DoEvent}} +\index{DoEvent@{DoEvent}!AliHLTProcessor@{Ali\-HLTProcessor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTProcessor::Do\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data})\hspace{0.3cm}{\tt [private, virtual]}}\label{classAliHLTProcessor_d1} + + +The high-level data processing method. This is the default processing method; the method is called if no low level {\bf Do\-Event}{\rm (p.\,\pageref{classAliHLTProcessor_d0})} method is overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em trig\-Data}]trigger data structure \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 89 of file Ali\-HLTProcessor.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}90 { +91 HLTFatal("no processing method implemented"); +92 return -ENOSYS; +93 } +\end{verbatim}\normalsize + + +\index{AliHLTProcessor@{Ali\-HLTProcessor}!DoEvent@{DoEvent}} +\index{DoEvent@{DoEvent}!AliHLTProcessor@{Ali\-HLTProcessor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTProcessor::Do\-Event (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks})\hspace{0.3cm}{\tt [private, virtual]}}\label{classAliHLTProcessor_d0} + + +The low-level data processing method for the component. This is the custom processing method and can be overloaded by the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em evt\-Data}]event data structure \item[{\em blocks}]input data block descriptors \item[{\em trig\-Data}]trigger data structure \item[{\em output\-Ptr}]pointer to target buffer \item[{\em size}]{\em input\/}: size of target buffer {\em output\/}:size of produced data \item[{\em output\-Blocks}]list to receive output block descriptors \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Reimplemented in {\bf Ali\-HLTPHOSDDLDecoder\-Component} {\rm (p.\,\pageref{classAliHLTPHOSDDLDecoderComponent_a15})}, {\bf Ali\-HLTPHOSHistogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSHistogramProducerComponent_a7})}, {\bf Ali\-HLTPHOSModule\-Merger\-Component} {\rm (p.\,\pageref{classAliHLTPHOSModuleMergerComponent_a7})}, {\bf Ali\-HLTPHOSRaw\-Analyzer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRawAnalyzerComponent_d0})}, and {\bf Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component} {\rm (p.\,\pageref{classAliHLTPHOSRcuHistogramProducerComponent_a5})}. + +Definition at line 77 of file Ali\-HLTProcessor.cxx. + +Referenced by Do\-Processing(). + +\footnotesize\begin{verbatim}83 { +84 // we just forward to the high level method, all other parameters already +85 // have been stored internally +86 return DoEvent(evtData, trigData); +87 } +\end{verbatim}\normalsize + + +\index{AliHLTProcessor@{Ali\-HLTProcessor}!DoProcessing@{DoProcessing}} +\index{DoProcessing@{DoProcessing}!AliHLTProcessor@{Ali\-HLTProcessor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTProcessor::Do\-Processing (const {\bf Ali\-HLTComponent\-Event\-Data} \& {\em evt\-Data}, const {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\-Trigger\-Data} \& {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} \& {\em size}, vector$<$ {\bf Ali\-HLTComponent\-Block\-Data} $>$ \& {\em output\-Blocks}, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$\& {\em edd})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTProcessor_a4} + + +Event processing function. The method is called by the framework to process one event. After preparation of data structures. The call is redirected to Do\-Event. \begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a7})}. + +Definition at line 64 of file Ali\-HLTProcessor.cxx. + +References Do\-Event(). + +\footnotesize\begin{verbatim}69 { +70 // see header file for class documentation +71 int iResult=0; +72 iResult=DoEvent(evtData, blocks, trigData, outputPtr, size, outputBlocks); +73 edd = NULL; +74 return iResult; +75 } +\end{verbatim}\normalsize + + +\index{AliHLTProcessor@{Ali\-HLTProcessor}!GetComponentType@{GetComponentType}} +\index{GetComponentType@{GetComponentType}!AliHLTProcessor@{Ali\-HLTProcessor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf TComponent\-Type} Ali\-HLTProcessor::Get\-Component\-Type ()\hspace{0.3cm}{\tt [inline, virtual]}}\label{classAliHLTProcessor_a5} + + +Return {\bf Ali\-HLTComponent::k\-Processor}{\rm (p.\,\pageref{classAliHLTComponent_w9w2})} type as component type. \begin{Desc} +\item[Returns:]component type id \end{Desc} + + +Implements {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a8})}. + +Definition at line 64 of file Ali\-HLTProcessor.h. + +\footnotesize\begin{verbatim}64 { return AliHLTComponent::kProcessor;} +\end{verbatim}\normalsize + + +\index{AliHLTProcessor@{Ali\-HLTProcessor}!Init@{Init}} +\index{Init@{Init}!AliHLTProcessor@{Ali\-HLTProcessor}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTProcessor::Init ({\bf Ali\-HLTComponent\-Environment} $\ast$ {\em environ}, void $\ast$ {\em environ\-Param}, int {\em argc}, const char $\ast$$\ast$ {\em argv})\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTProcessor_a2} + + +Init function to prepare data processing. Initialization of common data structures for a sequence of events. The call is redirected to the internal method {\bf Do\-Init}{\rm (p.\,\pageref{classAliHLTComponent_b5})} which can be overridden by the child class.\par + During Init also the environment structure is passed to the component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em environ}]environment pointer with environment dependend function calls \item[{\em environ\-Param}]additionel parameter for function calls, the pointer is passed as it is \item[{\em argc}]size of the argument array \item[{\em argv}]agument array for component initialization \end{description} +\end{Desc} + + +Reimplemented from {\bf Ali\-HLTComponent} {\rm (p.\,\pageref{classAliHLTComponent_a4})}. + +Definition at line 48 of file Ali\-HLTProcessor.cxx. + +References Ali\-HLTComponent::Init(). + +\footnotesize\begin{verbatim}49 { +50 // see header file for class documentation +51 int iResult=0; +52 iResult=AliHLTComponent::Init(environ, environParam, argc, argv); +53 return iResult; +54 } +\end{verbatim}\normalsize + + + + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTProcessor.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTProcessor.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTSystem.eps b/HLT/PHOS/latex/classAliHLTSystem.eps new file mode 100644 index 00000000000..df7eb4c98f4 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTSystem.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 388.35 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.2875 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTSystem) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTSystem) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTSystem.tex b/HLT/PHOS/latex/classAliHLTSystem.tex new file mode 100644 index 00000000000..3eb2b21be0b --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTSystem.tex @@ -0,0 +1,1425 @@ +\section{Ali\-HLTSystem Class Reference} +\label{classAliHLTSystem}\index{AliHLTSystem@{AliHLTSystem}} +{\tt \#include $<$Ali\-HLTSystem.h$>$} + +Inheritance diagram for Ali\-HLTSystem::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTSystem} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +Main class for the HLT integration into Ali\-Root. The class handles a list of configurations. Configurations are translated into task lists which can be executed. + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 43 of file Ali\-HLTSystem.h.\subsection*{Public Types} +\begin{CompactItemize} +\item +enum {\bf Ali\-HLTSystem\-State\_\-t} \{ \par +{\bf k\-Uninitialized} = 0x0, +{\bf k\-Libraries\-Loaded} = 0x1, +{\bf k\-Configuration\-Loaded} = 0x2, +{\bf k\-Task\-List\-Created} = 0x4, +\par +{\bf k\-Ready} = 0x7, +{\bf k\-Running} = 0x8, +{\bf k\-Error} = 0x1000 + \} +\end{CompactItemize} +\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTSystem} () +\item +{\bf Ali\-HLTSystem} (const {\bf Ali\-HLTSystem} \&) +\item +{\bf Ali\-HLTSystem} \& {\bf operator=} (const {\bf Ali\-HLTSystem} \&) +\item +virtual {\bf $\sim$Ali\-HLTSystem} () +\item +int {\bf Add\-Configuration} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf) +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +int {\bf Insert\-Configuration} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf, {\bf Ali\-HLTConfiguration} $\ast$p\-Prec) +\item +int {\bf Delete\-Configuration} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf) +\item +int {\bf Build\-Task\-List} (const char $\ast$p\-Conf) +\item +int {\bf Build\-Task\-List} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf) +\item +int {\bf Clean\-Task\-List} () +\item +int {\bf Insert\-Task} ({\bf Ali\-HLTTask} $\ast$p\-Task) +\item +{\bf Ali\-HLTTask} $\ast$ {\bf Find\-Task} (const char $\ast$id) +\item +void {\bf Print\-Task\-List} () +\item +int {\bf Run} (Int\_\-t i\-Nof\-Events=1) +\item +int {\bf Init\-Tasks} () +\item +int {\bf Init\-Benchmarking} (TObj\-Array $\ast$p\-Stopwatches) +\item +int {\bf Start\-Tasks} () +\item +int {\bf Process\-Tasks} (Int\_\-t event\-No) +\item +int {\bf Stop\-Tasks} () +\item +int {\bf Deinit\-Tasks} () +\item +int {\bf Reconstruct} (int nof\-Events, Ali\-Run\-Loader $\ast$run\-Loader, Ali\-Raw\-Reader $\ast$raw\-Reader=NULL) +\item +int {\bf Fill\-ESD} (int event\-No, Ali\-Run\-Loader $\ast$run\-Loader, Ali\-ESD $\ast$esd) +\item +int {\bf Load\-Component\-Libraries} (const char $\ast$libs) +\item +void $\ast$ {\bf Find\-Dynamic\-Symbol} (const char $\ast$library, const char $\ast$symbol) +\item +int {\bf Configure} (Ali\-Run\-Loader $\ast$runloader=NULL) +\item +int {\bf Reset} (int b\-Force=0) +\item +int {\bf Load\-Configurations} (Ali\-Run\-Loader $\ast$runloader=NULL) +\item +int {\bf Build\-Task\-Lists\-From\-Top\-Configurations} (Ali\-Run\-Loader $\ast$runloader=NULL) +\item +int {\bf Check\-Status} (int flag) +\item +int {\bf Get\-Status\-Flags} () +\end{CompactItemize} +\subsection*{Static Public Member Functions} +\begin{CompactItemize} +\item +void $\ast$ {\bf Alloc\-Memory} (void $\ast$param, unsigned long size) +\end{CompactItemize} +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTComponent\-Handler} $\ast$ {\bf fp\-Component\-Handler} +\item +{\bf Ali\-HLTConfiguration\-Handler} $\ast$ {\bf fp\-Configuration\-Handler} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +int {\bf Set\-Status\-Flags} (int flags) +\item +int {\bf Clear\-Status\-Flags} (int flags) +\item +{\bf Class\-Def} ({\bf Ali\-HLTSystem}, 2) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +TList {\bf f\-Task\-List} +\item +int {\bf f\-State} +\end{CompactItemize} +\subsection*{Static Private Attributes} +\begin{CompactItemize} +\item +int {\bf fg\-Nof\-Instances} = 0 +\end{CompactItemize} + + +\subsection{Member Enumeration Documentation} +\index{AliHLTSystem@{Ali\-HLTSystem}!AliHLTSystemState_t@{AliHLTSystemState\_\-t}} +\index{AliHLTSystemState_t@{AliHLTSystemState\_\-t}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf Ali\-HLTSystem::Ali\-HLTSystem\-State\_\-t}}\label{classAliHLTSystem_w7} + + +\begin{Desc} +\item[Enumeration values: ]\par +\begin{description} +\index{kUninitialized@{kUninitialized}!AliHLTSystem@{AliHLTSystem}}\index{AliHLTSystem@{AliHLTSystem}!kUninitialized@{kUninitialized}}\item[{\em +k\-Uninitialized\label{classAliHLTSystem_w7w0} +}]\index{kLibrariesLoaded@{kLibrariesLoaded}!AliHLTSystem@{AliHLTSystem}}\index{AliHLTSystem@{AliHLTSystem}!kLibrariesLoaded@{kLibrariesLoaded}}\item[{\em +k\-Libraries\-Loaded\label{classAliHLTSystem_w7w1} +}]\index{kConfigurationLoaded@{kConfigurationLoaded}!AliHLTSystem@{AliHLTSystem}}\index{AliHLTSystem@{AliHLTSystem}!kConfigurationLoaded@{kConfigurationLoaded}}\item[{\em +k\-Configuration\-Loaded\label{classAliHLTSystem_w7w2} +}]\index{kTaskListCreated@{kTaskListCreated}!AliHLTSystem@{AliHLTSystem}}\index{AliHLTSystem@{AliHLTSystem}!kTaskListCreated@{kTaskListCreated}}\item[{\em +k\-Task\-List\-Created\label{classAliHLTSystem_w7w3} +}]\index{kReady@{kReady}!AliHLTSystem@{AliHLTSystem}}\index{AliHLTSystem@{AliHLTSystem}!kReady@{kReady}}\item[{\em +k\-Ready\label{classAliHLTSystem_w7w4} +}]\index{kRunning@{kRunning}!AliHLTSystem@{AliHLTSystem}}\index{AliHLTSystem@{AliHLTSystem}!kRunning@{kRunning}}\item[{\em +k\-Running\label{classAliHLTSystem_w7w5} +}]\index{kError@{kError}!AliHLTSystem@{AliHLTSystem}}\index{AliHLTSystem@{AliHLTSystem}!kError@{kError}}\item[{\em +k\-Error\label{classAliHLTSystem_w7w6} +}]\end{description} +\end{Desc} + + + +Definition at line 278 of file Ali\-HLTSystem.h. + +\footnotesize\begin{verbatim}278 { +279 kUninitialized = 0x0, +280 kLibrariesLoaded = 0x1, +281 kConfigurationLoaded = 0x2, +282 kTaskListCreated = 0x4, +283 kReady = 0x7, +284 kRunning = 0x8, +285 kError = 0x1000 +286 }; +\end{verbatim}\normalsize + + + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTSystem@{Ali\-HLTSystem}!AliHLTSystem@{AliHLTSystem}} +\index{AliHLTSystem@{AliHLTSystem}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTSystem::Ali\-HLTSystem ()}\label{classAliHLTSystem_a0} + + +default constructor \index{AliHLTSystem@{Ali\-HLTSystem}!AliHLTSystem@{AliHLTSystem}} +\index{AliHLTSystem@{AliHLTSystem}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTSystem::Ali\-HLTSystem (const {\bf Ali\-HLTSystem} \&)}\label{classAliHLTSystem_a1} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 87 of file Ali\-HLTSystem.cxx. + +References fg\-Nof\-Instances, HLTFatal, and HLTWarning. + +\footnotesize\begin{verbatim}88 : +89 AliHLTLogging(), +90 fpComponentHandler(NULL), +91 fpConfigurationHandler(NULL), +92 fTaskList(), +93 fState(0) +94 { +95 // see header file for class documentation +96 if (fgNofInstances++>0) +97 HLTWarning("multiple instances of AliHLTSystem, you should not use more than one at a time"); +98 +99 HLTFatal("copy constructor untested"); +100 } + +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!~AliHLTSystem@{$\sim$AliHLTSystem}} +\index{~AliHLTSystem@{$\sim$AliHLTSystem}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTSystem::$\sim${\bf Ali\-HLTSystem} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTSystem_a3} + + +destructor + +Definition at line 109 of file Ali\-HLTSystem.cxx. + +References Clean\-Task\-List(), fg\-Nof\-Instances, fp\-Component\-Handler, fp\-Configuration\-Handler, and Ali\-HLTConfiguration::Global\-Deinit(). + +\footnotesize\begin{verbatim}110 { +111 // see header file for class documentation +112 fgNofInstances--; +113 CleanTaskList(); +114 AliHLTConfiguration::GlobalDeinit(fpConfigurationHandler); +115 if (fpConfigurationHandler) { +116 delete fpConfigurationHandler; +117 } +118 fpConfigurationHandler=NULL; +119 +120 if (fpComponentHandler) { +121 delete fpComponentHandler; +122 } +123 fpComponentHandler=NULL; +124 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTSystem@{Ali\-HLTSystem}!AddConfiguration@{AddConfiguration}} +\index{AddConfiguration@{AddConfiguration}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Add\-Configuration ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf})}\label{classAliHLTSystem_a4} + + +transient + +Add a configuration to the end of the list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]pointer to configuration to add \end{description} +\end{Desc} + + +Definition at line 128 of file Ali\-HLTSystem.cxx. + +\footnotesize\begin{verbatim}129 { +130 // see header file for class documentation +131 int iResult=0; +132 if (pConf) { +133 } else { +134 iResult=-EINVAL; +135 } +136 return iResult; +137 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!AllocMemory@{AllocMemory}} +\index{AllocMemory@{AllocMemory}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void $\ast$ Ali\-HLTSystem::Alloc\-Memory (void $\ast$ {\em param}, unsigned long {\em size})\hspace{0.3cm}{\tt [static]}}\label{classAliHLTSystem_e0} + + +The memory allocation function for components. This function is part of the running environment of the components. + +Definition at line 528 of file Ali\-HLTSystem.cxx. + +\footnotesize\begin{verbatim}529 { +530 // see header file for class documentation +531 if (param==NULL) { +532 // get rid of 'unused parameter' warning +533 } +534 return (void*)new char[size]; +535 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!BuildTaskList@{BuildTaskList}} +\index{BuildTaskList@{BuildTaskList}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Build\-Task\-List ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf})}\label{classAliHLTSystem_a8} + + +Build task list from a configuration object. This method is kept for backward compatibility. Use the version with the configuration name. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]pointer to configuration to build the task list from \end{description} +\end{Desc} + + +Definition at line 186 of file Ali\-HLTSystem.cxx. + +References Build\-Task\-List(), Find\-Task(), Ali\-HLTConfiguration::Follow\-Dependency(), f\-Task\-List, Ali\-HLTTask::Get\-Conf(), Ali\-HLTConfiguration::Get\-First\-Source(), Ali\-HLTTask::Get\-Name(), Ali\-HLTConfiguration::Get\-Name(), Ali\-HLTConfiguration::Get\-Next\-Source(), HLTError, Insert\-Task(), Ali\-HLTTask::Print\-Dependency\-Tree(), and Ali\-HLTConfiguration::Sources\-Resolved(). + +\footnotesize\begin{verbatim}187 { +188 // see header file for class documentation +189 int iResult=0; +190 if (pConf) { +191 AliHLTTask* pTask=NULL; +192 if ((pTask=FindTask(pConf->GetName()))!=NULL) { +193 if (pTask->GetConf()!=pConf) { +194 HLTError("configuration missmatch, there is already a task with configuration name \"%s\", but it is different. Most likely configuration %p is not registered properly", pConf->GetName(), pConf); +195 iResult=-EEXIST; +196 pTask=NULL; +197 } +198 } else if (pConf->SourcesResolved(1)!=1) { +199 HLTError("configuration \"%s\" has unresolved sources, aborting ...", pConf->GetName()); +200 iResult=-ENOLINK; +201 } else { +202 pTask=new AliHLTTask(pConf); +203 if (pTask==NULL) { +204 iResult=-ENOMEM; +205 } +206 } +207 if (pTask) { +208 // check for circular dependencies +209 if ((iResult=pConf->FollowDependency(pConf->GetName()))>0) { +210 HLTError("detected circular dependency for configuration \"%s\"", pTask->GetName()); +211 pTask->PrintDependencyTree(pTask->GetName(), 1/*use the configuration list*/); +212 HLTError("aborted ..."); +213 iResult=-ELOOP; +214 } +215 if (iResult>=0) { +216 // check whether all dependencies are already in the task list +217 // create the missing ones +218 // this step is an iterative process which calls this function again for the missing +219 // configurations, in order to avoid the currently processed task to be created +220 // again it is added to the list temporarily and removed afterwards +221 // This is of high importance to preserve the order of the tasks. Furthermore, the +222 // InsertTask method has to be used in order to set all the cross links right +223 fTaskList.Add(pTask); +224 AliHLTConfiguration* pDep=pConf->GetFirstSource(); +225 while (pDep!=NULL && iResult>=0) { +226 if (FindTask(pDep->GetName())==NULL) { +227 iResult=BuildTaskList(pDep); +228 } +229 pDep=pConf->GetNextSource(); +230 } +231 // remove the temporarily added task +232 fTaskList.Remove(pTask); +233 +234 // insert the task and set the cross-links +235 if (iResult>=0) { +236 iResult=InsertTask(pTask); +237 } +238 } else { +239 delete pTask; +240 pTask=NULL; +241 } +242 } +243 } else { +244 iResult=-EINVAL; +245 } +246 return iResult; +247 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!BuildTaskList@{BuildTaskList}} +\index{BuildTaskList@{BuildTaskList}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Build\-Task\-List (const char $\ast$ {\em p\-Conf})}\label{classAliHLTSystem_a7} + + +Build a task list This method is used to build the tasks from the 'master' configuration objects which are added to the HLT system handler. This is an iterative process since the task might depend upon other configurations. For each configuration object which has not yet been converted into a task, the method will be called iteratively. Finally, after building all tasks which the current one depends on have been created, the task is inserted to the list of tasks with the Insert\-Task method. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]configuration name/id \end{description} +\end{Desc} + + +Definition at line 164 of file Ali\-HLTSystem.cxx. + +References Ali\-HLTConfiguration\-Handler::Find\-Configuration(), fp\-Configuration\-Handler, and HLTError. + +Referenced by Build\-Task\-List(), and Build\-Task\-Lists\-From\-Top\-Configurations(). + +\footnotesize\begin{verbatim}165 { +166 // see header file for class documentation +167 int iResult=0; +168 if (id) { +169 if (fpConfigurationHandler) { +170 AliHLTConfiguration* pConf=fpConfigurationHandler->FindConfiguration(id); +171 if (pConf) { +172 iResult=BuildTaskList(pConf); +173 } else { +174 HLTError("unknown configuration \"%s\"", id); +175 iResult=-EEXIST; +176 } +177 } else { +178 iResult=-EFAULT; +179 } +180 } else { +181 iResult=-EINVAL; +182 } +183 return iResult; +184 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!BuildTaskListsFromTopConfigurations@{BuildTaskListsFromTopConfigurations}} +\index{BuildTaskListsFromTopConfigurations@{BuildTaskListsFromTopConfigurations}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL})}\label{classAliHLTSystem_a27} + + +Get the top configurations of all agents and build the task lists. \begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 665 of file Ali\-HLTSystem.cxx. + +References Build\-Task\-List(), Check\-Status(), Ali\-HLTConfiguration\-Handler::Find\-Configuration(), fp\-Configuration\-Handler, Ali\-HLTModule\-Agent::Get\-First\-Agent(), Ali\-HLTModule\-Agent::Get\-Local\-Rec\-Configurations(), Ali\-HLTModule\-Agent::Get\-Next\-Agent(), HLTDebug, HLTError, HLTWarning, k\-Configuration\-Loaded, k\-Running, k\-Task\-List\-Created, and Set\-Status\-Flags(). + +Referenced by Configure(). + +\footnotesize\begin{verbatim}666 { +667 // see header file for class documentation +668 if (CheckStatus(kRunning)) { +669 HLTError("HLT system in running state, can not configure"); +670 return -EBUSY; +671 } +672 if (!CheckStatus(kConfigurationLoaded)) { +673 HLTWarning("configurations not yet loaded"); +674 return 0; +675 } +676 +677 int iResult=0; +678 AliHLTModuleAgent* pAgent=AliHLTModuleAgent::GetFirstAgent(); +679 while (pAgent && iResult>=0) { +680 TString tops=pAgent->GetLocalRecConfigurations(runloader); +681 HLTDebug("top configurations for agent %s (%p): %s", pAgent->GetName(), pAgent, tops.Data()); +682 TObjArray* pTokens=tops.Tokenize(" "); +683 if (pTokens) { +684 int iEntries=pTokens->GetEntries(); +685 for (int i=0; i=0; i++) { +686 const char* pCID=((TObjString*)pTokens->At(i))->GetString().Data(); +687 AliHLTConfiguration* pConf=fpConfigurationHandler->FindConfiguration(pCID); +688 if (pConf) { +689 iResult=BuildTaskList(pConf); +690 } else { +691 HLTWarning("can not find top configuration %s", pCID); +692 } +693 } +694 delete pTokens; +695 } +696 +697 pAgent=AliHLTModuleAgent::GetNextAgent(); +698 } +699 if (iResult>=0) SetStatusFlags(kTaskListCreated); +700 +701 return iResult; +702 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!CheckStatus@{CheckStatus}} +\index{CheckStatus@{CheckStatus}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Check\-Status (int {\em flag})}\label{classAliHLTSystem_a28} + + +Check status of the system. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em flag}]Ali\-HLTSystem\-State\_\-t value to check for \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]1 if set, 0 if not \end{Desc} + + +Definition at line 704 of file Ali\-HLTSystem.cxx. + +References f\-State, and k\-Uninitialized. + +Referenced by Build\-Task\-Lists\-From\-Top\-Configurations(), Configure(), Load\-Configurations(), Reconstruct(), and Reset(). + +\footnotesize\begin{verbatim}705 { +706 // see header file for class documentation +707 if (flag==kUninitialized && flag==fState) return 1; +708 if ((fState&flag)==flag) return 1; +709 return 0; +710 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTSystem::Class\-Def ({\bf Ali\-HLTSystem}, 2)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTSystem_d2} + + +\index{AliHLTSystem@{Ali\-HLTSystem}!CleanTaskList@{CleanTaskList}} +\index{CleanTaskList@{CleanTaskList}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Clean\-Task\-List ()}\label{classAliHLTSystem_a9} + + +Clean the list of tasks and delete all the task objects. + +Definition at line 249 of file Ali\-HLTSystem.cxx. + +References f\-Task\-List. + +Referenced by Reset(), and $\sim$Ali\-HLTSystem(). + +\footnotesize\begin{verbatim}250 { +251 // see header file for class documentation +252 int iResult=0; +253 TObjLink* lnk=NULL; +254 while ((lnk=fTaskList.LastLink())!=NULL) { +255 delete (lnk->GetObject()); +256 fTaskList.Remove(lnk); +257 } +258 return iResult; +259 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!ClearStatusFlags@{ClearStatusFlags}} +\index{ClearStatusFlags@{ClearStatusFlags}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Clear\-Status\-Flags (int {\em flags})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTSystem_d1} + + +clear status flags. + +Definition at line 725 of file Ali\-HLTSystem.cxx. + +References f\-State. + +Referenced by Configure(), Load\-Component\-Libraries(), Reset(), and Run(). + +\footnotesize\begin{verbatim}726 { +727 // see header file for class documentation +728 fState&=~flags; +729 return fState; +730 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!Configure@{Configure}} +\index{Configure@{Configure}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Configure (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL})}\label{classAliHLTSystem_a24} + + +Prepare the HLT system for running.\begin{itemize} +\item module agents are requested to register configurations\item task lists are built from the top configurations of the modules \begin{Desc} +\item[Returns:]neg. error code if failed \par + -EBUSY system is in k\-Running state \par + \end{Desc} +\end{itemize} + + +Definition at line 604 of file Ali\-HLTSystem.cxx. + +References Build\-Task\-Lists\-From\-Top\-Configurations(), Ali\-HLTLogging::Check\-Filter(), Check\-Status(), Clear\-Status\-Flags(), HLTError, k\-Configuration\-Loaded, k\-Error, k\-HLTLog\-Debug, k\-Running, k\-Task\-List\-Created, Load\-Configurations(), Ali\-HLTModule\-Agent::Print\-Status(), and Set\-Status\-Flags(). + +\footnotesize\begin{verbatim}605 { +606 // see header file for class documentation +607 int iResult=0; +608 if (CheckStatus(kRunning)) { +609 HLTError("HLT system in running state, can not configure"); +610 return -EBUSY; +611 } +612 if (CheckFilter(kHLTLogDebug)) +613 AliHLTModuleAgent::PrintStatus(); +614 ClearStatusFlags(kConfigurationLoaded|kTaskListCreated); +615 iResult=LoadConfigurations(runloader); +616 if (iResult>=0) { +617 SetStatusFlags(kConfigurationLoaded); +618 iResult=BuildTaskListsFromTopConfigurations(runloader); +619 if (iResult>=0) { +620 SetStatusFlags(kTaskListCreated); +621 } +622 } +623 if (iResult<0) SetStatusFlags(kError); +624 +625 return iResult; +626 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!DeinitTasks@{DeinitTasks}} +\index{DeinitTasks@{DeinitTasks}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Deinit\-Tasks ()}\label{classAliHLTSystem_a19} + + +De-init all tasks from the list. The {\bf Ali\-HLTTask::Deinit}{\rm (p.\,\pageref{classAliHLTTask_a6})} method is called for each task, the components will be deleted. \begin{Desc} +\item[Returns:]neg error code if failed \end{Desc} + + +Definition at line 511 of file Ali\-HLTSystem.cxx. + +References Ali\-HLTTask::Deinit(), and f\-Task\-List. + +Referenced by Run(). + +\footnotesize\begin{verbatim}512 { +513 // see header file for class documentation +514 int iResult=0; +515 TObjLink *lnk=fTaskList.FirstLink(); +516 while (lnk && iResult>=0) { +517 TObject* obj=lnk->GetObject(); +518 if (obj) { +519 AliHLTTask* pTask=(AliHLTTask*)obj; +520 iResult=pTask->Deinit(); +521 } else { +522 } +523 lnk = lnk->Next(); +524 } +525 return iResult; +526 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!DeleteConfiguration@{DeleteConfiguration}} +\index{DeleteConfiguration@{DeleteConfiguration}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Delete\-Configuration ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf})}\label{classAliHLTSystem_a6} + + +Remove a configuration from the list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]pointer to configuration to delete \end{description} +\end{Desc} + + +Definition at line 153 of file Ali\-HLTSystem.cxx. + +\footnotesize\begin{verbatim}154 { +155 // see header file for class documentation +156 int iResult=0; +157 if (pConf) { +158 } else { +159 iResult=-EINVAL; +160 } +161 return iResult; +162 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!FillESD@{FillESD}} +\index{FillESD@{FillESD}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Fill\-ESD (int {\em event\-No}, Ali\-Run\-Loader $\ast$ {\em run\-Loader}, Ali\-ESD $\ast$ {\em esd})}\label{classAliHLTSystem_a21} + + +Fill ESD for one event. To be called by the Ali\-HLTReconstructor plugin during the event loop and Fill\-ESD method of the Ali\-Root reconstruction. This method is called on event basis, and thus must copy the previously reconstructed data of the event from the 'ESD' recorder. The Fill\-ESD method of all active Ali\-HLTOffline\-Data\-Sink's is called. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em event\-No}]current event no (Note: this event number is just a processing counter and is not related to the nature/ origin of the event \item[{\em run\-Loader}]the Ali\-Root runloader \item[{\em esd}]an Ali\-ESD instance \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 558 of file Ali\-HLTSystem.cxx. + +References Ali\-HLTOffline\-Interface::Fill\-Component\-ESDs(), HLTError, and HLTInfo. + +\footnotesize\begin{verbatim}559 { +560 // see header file for class documentation +561 int iResult=0; +562 if (runLoader) { +563 HLTInfo("Event %d: Run Loader %p, ESD %p", eventNo, runLoader, esd); +564 iResult=AliHLTOfflineInterface::FillComponentESDs(eventNo, runLoader, esd); +565 } else { +566 HLTError("missing run loader/ESD instance(s)"); +567 iResult=-EINVAL; +568 } +569 return iResult; +570 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!FindDynamicSymbol@{FindDynamicSymbol}} +\index{FindDynamicSymbol@{FindDynamicSymbol}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void $\ast$ Ali\-HLTSystem::Find\-Dynamic\-Symbol (const char $\ast$ {\em library}, const char $\ast$ {\em symbol})}\label{classAliHLTSystem_a23} + + +Find a symbol in a dynamically loaded library. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em library}]library \item[{\em symbol}]the symbol to find \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]void pointer to function \end{Desc} + + +Definition at line 732 of file Ali\-HLTSystem.cxx. + +References Ali\-HLTComponent\-Handler::Find\-Symbol(), and fp\-Component\-Handler. + +\footnotesize\begin{verbatim}733 { +734 if (fpComponentHandler==NULL) return NULL; +735 return fpComponentHandler->FindSymbol(library, symbol); +736 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!FindTask@{FindTask}} +\index{FindTask@{FindTask}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTTask} $\ast$ Ali\-HLTSystem::Find\-Task (const char $\ast$ {\em id})}\label{classAliHLTSystem_a11} + + +Find a task with an id. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]CONFIGURATION id (not a COMPONENT id!) \end{description} +\end{Desc} + + +Definition at line 299 of file Ali\-HLTSystem.cxx. + +References f\-Task\-List. + +Referenced by Build\-Task\-List(). + +\footnotesize\begin{verbatim}300 { +301 // see header file for class documentation +302 AliHLTTask* pTask=NULL; +303 if (id) { +304 pTask=(AliHLTTask*)fTaskList.FindObject(id); +305 } +306 return pTask; +307 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!GetStatusFlags@{GetStatusFlags}} +\index{GetStatusFlags@{GetStatusFlags}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Get\-Status\-Flags ()}\label{classAliHLTSystem_a29} + + +Get the current status. \begin{Desc} +\item[Returns:]status flags of {\bf Ali\-HLTSystem\-State\_\-t}{\rm (p.\,\pageref{classAliHLTSystem_w7})} \end{Desc} + + +Definition at line 712 of file Ali\-HLTSystem.cxx. + +Referenced by Reconstruct(). + +\footnotesize\begin{verbatim}713 { +714 // see header file for class documentation +715 return fState; +716 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!InitBenchmarking@{InitBenchmarking}} +\index{InitBenchmarking@{InitBenchmarking}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Init\-Benchmarking (TObj\-Array $\ast$ {\em p\-Stopwatches})}\label{classAliHLTSystem_a15} + + +Init the stopwatches for all tasks. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Stopwatches}]object array of stopwatches, for types \end{description} +\end{Desc} +\begin{Desc} +\item[See also:]{\bf Ali\-HLTComponent::Ali\-HLTStopwatch\-Type}{\rm (p.\,\pageref{classAliHLTComponent_w10})} \end{Desc} +\begin{Desc} +\item[Returns:]neg error code if failed \end{Desc} + + +Definition at line 406 of file Ali\-HLTSystem.cxx. + +References f\-Task\-List, Ali\-HLTTask::Get\-Component(), Ali\-HLTComponent::Get\-Component\-Type(), HLTWarning, Ali\-HLTComponent::Set\-Stopwatch(), and Ali\-HLTComponent::Set\-Stopwatches(). + +Referenced by Run(). + +\footnotesize\begin{verbatim}407 { +408 // see header file for class documentation +409 if (pStopwatches==NULL) return -EINVAL; +410 +411 int iResult=0; +412 TObjLink *lnk=fTaskList.FirstLink(); +413 while (lnk && iResult>=0) { +414 TObject* obj=lnk->GetObject(); +415 if (obj) { +416 AliHLTTask* pTask=(AliHLTTask*)obj; +417 AliHLTComponent* pComp=NULL; +418 if (iResult>=0 && (pComp=pTask->GetComponent())!=NULL) { +419 switch (pComp->GetComponentType()) { +420 case AliHLTComponent::kProcessor: +421 pComp->SetStopwatches(pStopwatches); +422 break; +423 case AliHLTComponent::kSource: +424 { +425 // this switch determines whether the time consumption of the +426 // AliHLTComponent base methods should be counted to the input +427 // stopwatch or base stopwatch. +428 //int inputBase=(int)AliHLTComponent::kSWBase; +429 int inputBase=(int)AliHLTComponent::kSWInput; +430 pComp->SetStopwatch(pStopwatches->At(inputBase), AliHLTComponent::kSWBase); +431 pComp->SetStopwatch(pStopwatches->At((int)AliHLTComponent::kSWInput), AliHLTComponent::kSWDA); +432 } +433 break; +434 case AliHLTComponent::kSink: +435 { +436 // this switch determines whether the time consumption of the +437 // AliHLTComponent base methods should be counted to the output +438 // stopwatch or base stopwatch. +439 //int outputBase=(int)AliHLTComponent::kSWBase; +440 int outputBase=(int)AliHLTComponent::kSWOutput; +441 pComp->SetStopwatch(pStopwatches->At(outputBase), AliHLTComponent::kSWBase); +442 pComp->SetStopwatch(pStopwatches->At((int)AliHLTComponent::kSWOutput), AliHLTComponent::kSWDA); +443 } +444 break; +445 default: +446 HLTWarning("unknown component type %d", (int)pComp->GetComponentType()); +447 } +448 } +449 } else { +450 } +451 lnk = lnk->Next(); +452 } +453 return iResult; +454 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!InitTasks@{InitTasks}} +\index{InitTasks@{InitTasks}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Init\-Tasks ()}\label{classAliHLTSystem_a14} + + +Init all tasks from the list. The {\bf Ali\-HLTTask::Init}{\rm (p.\,\pageref{classAliHLTTask_a5})} method is called for each task, the components will be created. \begin{Desc} +\item[Returns:]neg error code if failed \end{Desc} + + +Definition at line 383 of file Ali\-HLTSystem.cxx. + +References fp\-Component\-Handler, f\-Task\-List, HLTWarning, and Ali\-HLTTask::Init(). + +Referenced by Run(). + +\footnotesize\begin{verbatim}384 { +385 // see header file for class documentation +386 int iResult=0; +387 TObjLink *lnk=fTaskList.FirstLink(); +388 if (lnk==NULL) { +389 HLTWarning("Task list is empty, aborting ..."); +390 return -ENOENT; +391 } +392 while (lnk && iResult>=0) { +393 TObject* obj=lnk->GetObject(); +394 if (obj) { +395 AliHLTTask* pTask=(AliHLTTask*)obj; +396 iResult=pTask->Init(NULL, fpComponentHandler); +397 } else { +398 } +399 lnk = lnk->Next(); +400 } +401 if (iResult<0) { +402 } +403 return iResult; +404 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!InsertConfiguration@{InsertConfiguration}} +\index{InsertConfiguration@{InsertConfiguration}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Insert\-Configuration ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf}, {\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Prec})}\label{classAliHLTSystem_a5} + + +Insert a configuration to the end of the list after the specified configuration. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]pointer to configuration to insert \item[{\em p\-Prec}]pointer to configuration to insert the new one after \end{description} +\end{Desc} + + +Definition at line 139 of file Ali\-HLTSystem.cxx. + +\footnotesize\begin{verbatim}140 { +141 // see header file for class documentation +142 int iResult=0; +143 if (pConf) { +144 if (pPrec) { +145 // find the position +146 } +147 } else { +148 iResult=-EINVAL; +149 } +150 return iResult; +151 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!InsertTask@{InsertTask}} +\index{InsertTask@{InsertTask}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Insert\-Task ({\bf Ali\-HLTTask} $\ast$ {\em p\-Task})}\label{classAliHLTSystem_a10} + + +Insert a task to the task list. The method first checks whether all dependencies are resolved (i.e. exist already in the task list). During this iteration the cross links between the tasks are set as well. If all dependencies are resolved, the task is added at the end of the list. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Task}]pointer to task to add \end{description} +\end{Desc} + + +Definition at line 261 of file Ali\-HLTSystem.cxx. + +References Ali\-HLTTask::Check\-Dependencies(), Ali\-HLTTask::Depends(), f\-Task\-List, Ali\-HLTTask::Get\-Name(), HLTDebug, HLTError, Ali\-HLTTask::Set\-Dependency(), and Ali\-HLTTask::Set\-Target(). + +Referenced by Build\-Task\-List(). + +\footnotesize\begin{verbatim}262 { +263 // see header file for class documentation +264 int iResult=0; +265 TObjLink *lnk = NULL; +266 if ((iResult=pTask->CheckDependencies())>0) +267 lnk=fTaskList.FirstLink(); +268 while (lnk && iResult>0) { +269 AliHLTTask* pCurr = (AliHLTTask*)lnk->GetObject(); +270 //HLTDebug("checking \"%s\"", pCurr->GetName()); +271 iResult=pTask->Depends(pCurr); +272 if (iResult>0) { +273 iResult=pTask->SetDependency(pCurr); +274 pCurr->SetTarget(pTask); +275 HLTDebug("set dependency \"%s\" for configuration \"%s\"", pCurr->GetName(), pTask->GetName()); +276 } +277 if (pCurr->Depends(pTask)) { +278 // circular dependency +279 HLTError("circular dependency: can not resolve dependencies for configuration \"%s\"", pTask->GetName()); +280 iResult=-ELOOP; +281 } else if ((iResult=pTask->CheckDependencies())>0) { +282 lnk = lnk->Next(); +283 } +284 } +285 if (iResult==0) { +286 if (lnk) { +287 fTaskList.AddAfter(lnk, pTask); +288 } else { +289 fTaskList.AddFirst(pTask); +290 } +291 HLTDebug("task \"%s\" (%p) inserted (size %d)", pTask->GetName(), pTask, sizeof(AliHLTTask)); +292 } else if (iResult>0) { +293 HLTError("can not resolve dependencies for configuration \"%s\" (%d unresolved)", pTask->GetName(), iResult); +294 iResult=-ENOLINK; +295 } +296 return iResult; +297 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!LoadComponentLibraries@{LoadComponentLibraries}} +\index{LoadComponentLibraries@{LoadComponentLibraries}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Load\-Component\-Libraries (const char $\ast$ {\em libs})}\label{classAliHLTSystem_a22} + + +Load component libraries. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em libs}]string of blank separated library names \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 572 of file Ali\-HLTSystem.cxx. + +References Clear\-Status\-Flags(), fp\-Component\-Handler, HLTFatal, k\-Libraries\-Loaded, Ali\-HLTComponent\-Handler::Load\-Library(), and Set\-Status\-Flags(). + +Referenced by Load\-Configurations(). + +\footnotesize\begin{verbatim}573 { +574 // see header file for class documentation +575 int iResult=0; +576 if (libraries) { +577 if (fpComponentHandler) { +578 TString libs(libraries); +579 TObjArray* pTokens=libs.Tokenize(" "); +580 if (pTokens) { +581 int iEntries=pTokens->GetEntries(); +582 for (int i=0; i=0; i++) { +583 iResult=fpComponentHandler->LoadLibrary((((TObjString*)pTokens->At(i))->GetString()).Data()); +584 } +585 delete pTokens; +586 } +587 if (iResult>=0) { +588 SetStatusFlags(kLibrariesLoaded); +589 } else { +590 // lets see if we need this, probably not +591 //fpComponentHandler->UnloadLibraries(); +592 ClearStatusFlags(kLibrariesLoaded); +593 } +594 } else { +595 iResult=-EFAULT; +596 HLTFatal("no component handler available"); +597 } +598 } else { +599 iResult=-EINVAL; +600 } +601 return iResult; +602 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!LoadConfigurations@{LoadConfigurations}} +\index{LoadConfigurations@{LoadConfigurations}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Load\-Configurations (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL})}\label{classAliHLTSystem_a26} + + +Load the configurations specified by the module agents. The run\-Loader is passed to the agent and allows configuration selection. \begin{Desc} +\item[Returns:]neg. error code if failed \end{Desc} + + +Definition at line 641 of file Ali\-HLTSystem.cxx. + +References Check\-Status(), Ali\-HLTModule\-Agent::Create\-Configurations(), fp\-Configuration\-Handler, Ali\-HLTModule\-Agent::Get\-First\-Agent(), Ali\-HLTModule\-Agent::Get\-Next\-Agent(), Ali\-HLTModule\-Agent::Get\-Required\-Component\-Libraries(), HLTDebug, HLTError, k\-Running, and Load\-Component\-Libraries(). + +Referenced by Configure(). + +\footnotesize\begin{verbatim}642 { +643 // see header file for class documentation +644 if (CheckStatus(kRunning)) { +645 HLTError("HLT system in running state, can not configure"); +646 return -EBUSY; +647 } +648 int iResult=0; +649 AliHLTModuleAgent* pAgent=AliHLTModuleAgent::GetFirstAgent(); +650 while (pAgent && iResult>=0) { +651 const char* deplibs=pAgent->GetRequiredComponentLibraries(); +652 if (deplibs) { +653 HLTDebug("load libraries \'%s\' for agent %s (%p)", deplibs, pAgent->GetName(), pAgent); +654 iResult=LoadComponentLibraries(deplibs); +655 } +656 if (iResult>=0) { +657 HLTDebug("load configurations for agent %s (%p)", pAgent->GetName(), pAgent); +658 pAgent->CreateConfigurations(fpConfigurationHandler, runloader); +659 pAgent=AliHLTModuleAgent::GetNextAgent(); +660 } +661 } +662 return iResult; +663 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTSystem} \& Ali\-HLTSystem::operator= (const {\bf Ali\-HLTSystem} \&)}\label{classAliHLTSystem_a2} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 102 of file Ali\-HLTSystem.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}103 { +104 // see header file for class documentation +105 HLTFatal("assignment operator untested"); +106 return *this; +107 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!PrintTaskList@{PrintTaskList}} +\index{PrintTaskList@{PrintTaskList}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTSystem::Print\-Task\-List ()}\label{classAliHLTSystem_a12} + + +Print the task list. + +Definition at line 309 of file Ali\-HLTSystem.cxx. + +References f\-Task\-List, HLTLog\-Keyword, HLTMessage, and Ali\-HLTTask::Print\-Status(). + +\footnotesize\begin{verbatim}310 { +311 // see header file for class documentation +312 HLTLogKeyword("task list"); +313 TObjLink *lnk = NULL; +314 HLTMessage("Task List"); +315 lnk=fTaskList.FirstLink(); +316 while (lnk) { +317 TObject* obj=lnk->GetObject(); +318 if (obj) { +319 HLTMessage(" %s - status:", obj->GetName()); +320 AliHLTTask* pTask=(AliHLTTask*)obj; +321 pTask->PrintStatus(); +322 } else { +323 } +324 lnk = lnk->Next(); +325 } +326 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!ProcessTasks@{ProcessTasks}} +\index{ProcessTasks@{ProcessTasks}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Process\-Tasks (Int\_\-t {\em event\-No})}\label{classAliHLTSystem_a17} + + +Process task list. The {\bf Ali\-HLTTask::Process\-Task}{\rm (p.\,\pageref{classAliHLTTask_a20})} method is called for each task. \begin{Desc} +\item[Returns:]neg error code if failed \end{Desc} + + +Definition at line 475 of file Ali\-HLTSystem.cxx. + +References f\-Task\-List, Ali\-HLTTask::Get\-Name(), HLTDebug, and Ali\-HLTTask::Process\-Task(). + +Referenced by Run(). + +\footnotesize\begin{verbatim}476 { +477 // see header file for class documentation +478 int iResult=0; +479 HLTDebug("processing event no %d", eventNo); +480 TObjLink *lnk=fTaskList.FirstLink(); +481 while (lnk && iResult>=0) { +482 TObject* obj=lnk->GetObject(); +483 if (obj) { +484 AliHLTTask* pTask=(AliHLTTask*)obj; +485 iResult=pTask->ProcessTask(eventNo); +486 HLTDebug("task %s finnished (%d)", pTask->GetName(), iResult); +487 } else { +488 } +489 lnk = lnk->Next(); +490 } +491 return iResult; +492 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!Reconstruct@{Reconstruct}} +\index{Reconstruct@{Reconstruct}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Reconstruct (int {\em nof\-Events}, Ali\-Run\-Loader $\ast$ {\em run\-Loader}, Ali\-Raw\-Reader $\ast$ {\em raw\-Reader} = {\tt NULL})}\label{classAliHLTSystem_a20} + + +Reconstruction inside Ali\-Root. To be called by the Ali\-HLTReconstructor plugin during the Local\-Reconstruction step of the Ali\-Root reconstruction. The latter means that all events are reconstructed at once, the event loop is internally implemented. In contrast to that, the Fill\-ESD method is called event by event. This requires an 'ESD' recorder at the end of the HLT chain, in order to have the reconstructed events available for the Fill\-ESD loop. The 'run\-Loader' and 'raw\-Reader' parameters are set to all active Ali\-HLTOffline\-Data\-Source's and the HLT chain is processed for the given number of events. If the raw\-Reader is NULL, reconstruction is done on simulated data, from real data if a Raw\-Reader is specified. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em nof\-Events}]number of events \item[{\em run\-Loader}]the Ali\-Root runloader \item[{\em raw\-Reader}]the Ali\-Root Raw\-Reader \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]number of reconstructed events, neg. error code if failed \end{Desc} + + +Definition at line 537 of file Ali\-HLTSystem.cxx. + +References Check\-Status(), Get\-Status\-Flags(), HLTError, HLTInfo, k\-Ready, Run(), and Ali\-HLTOffline\-Interface::Set\-Params\-To\-Components(). + +\footnotesize\begin{verbatim}539 { +540 // see header file for class documentation +541 int iResult=0; +542 if (runLoader) { +543 HLTInfo("Run Loader %p, Raw Reader %p , %d events", runLoader, rawReader, nofEvents); +544 if (CheckStatus(kReady)) { +545 if ((iResult=AliHLTOfflineInterface::SetParamsToComponents(runLoader, rawReader))>=0) { +546 iResult=Run(nofEvents); +547 } +548 } else { +549 HLTError("wrong state %#x, required flags %#x", GetStatusFlags(), kReady); +550 } +551 } else { +552 HLTError("missing run loader instance"); +553 iResult=-EINVAL; +554 } +555 return iResult; +556 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!Reset@{Reset}} +\index{Reset@{Reset}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Reset (int {\em b\-Force} = {\tt 0})}\label{classAliHLTSystem_a25} + + +Reset the HLT system. Reset is not possible while the system is in running state. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em b\-Force}]force the reset \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]neg. error code if failed \par + -EBUSY system is in k\-Running state \par + \end{Desc} + + +Definition at line 628 of file Ali\-HLTSystem.cxx. + +References Check\-Status(), Clean\-Task\-List(), Clear\-Status\-Flags(), HLTError, k\-Running, and k\-Uninitialized. + +\footnotesize\begin{verbatim}629 { +630 // see header file for class documentation +631 int iResult=0; +632 if (!bForce && CheckStatus(kRunning)) { +633 HLTError("HLT system in running state, can not configure"); +634 return -EBUSY; +635 } +636 CleanTaskList(); +637 ClearStatusFlags(~kUninitialized); +638 return iResult; +639 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!Run@{Run}} +\index{Run@{Run}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Run (Int\_\-t {\em i\-Nof\-Events} = {\tt 1})}\label{classAliHLTSystem_a13} + + +Run the task list. The method checks whether the task list has already been build. If not, or the configuration list has been changed, the {\bf Build\-Task\-List}{\rm (p.\,\pageref{classAliHLTSystem_a7})} method is scalled All tasks of the list will be subsequently processed for each event. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em i\-Nof\-Events}]number of events \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]number of reconstructed events, neg error code if failed \end{Desc} + + +Definition at line 328 of file Ali\-HLTSystem.cxx. + +References Clear\-Status\-Flags(), Deinit\-Tasks(), HLTError, HLTInfo, Init\-Benchmarking(), Init\-Tasks(), k\-Running, Process\-Tasks(), Set\-Status\-Flags(), Start\-Tasks(), and Stop\-Tasks(). + +Referenced by Reconstruct(). + +\footnotesize\begin{verbatim}329 { +330 // see header file for class documentation +331 int iResult=0; +332 int iCount=0; +333 SetStatusFlags(kRunning); +334 TStopwatch StopwatchBase; StopwatchBase.Reset(); +335 TStopwatch StopwatchDA; StopwatchDA.Reset(); +336 TStopwatch StopwatchInput; StopwatchInput.Reset(); +337 TStopwatch StopwatchOutput; StopwatchOutput.Reset(); +338 TObjArray Stopwatches; +339 Stopwatches.AddAt(&StopwatchBase, (int)AliHLTComponent::kSWBase); +340 Stopwatches.AddAt(&StopwatchDA, (int)AliHLTComponent::kSWDA); +341 Stopwatches.AddAt(&StopwatchInput, (int)AliHLTComponent::kSWInput); +342 Stopwatches.AddAt(&StopwatchOutput, (int)AliHLTComponent::kSWOutput); +343 if ((iResult=InitTasks())>=0 && (iResult=InitBenchmarking(&Stopwatches))>=0) { +344 if ((iResult=StartTasks())>=0) { +345 for (int i=0; i=0; i++) { +346 iResult=ProcessTasks(i); +347 if (iResult>=0) { +348 HLTInfo("Event %d successfully finished (%d)", i, iResult); +349 iResult=0; +350 iCount++; +351 } else { +352 HLTError("Processing of event %d failed (%d)", i, iResult); +353 // TODO: define different running modes to either ignore errors in +354 // event processing or not +355 // currently ignored +356 //iResult=0; +357 } +358 } +359 StopTasks(); +360 } else { +361 HLTError("can not start task list"); +362 } +363 DeinitTasks(); +364 } else if (iResult!=-ENOENT) { +365 HLTError("can not initialize task list"); +366 } +367 if (iResult>=0) { +368 iResult=iCount; +369 HLTInfo("HLT statistics:\n" +370 " base: R:%.3fs C:%.3fs\n" +371 " input: R:%.3fs C:%.3fs\n" +372 " output: R:%.3fs C:%.3fs\n" +373 " event processing : R:%.3fs C:%.3fs" +374 , StopwatchBase.RealTime(),StopwatchBase.CpuTime() +375 , StopwatchInput.RealTime(),StopwatchInput.CpuTime() +376 , StopwatchOutput.RealTime(),StopwatchOutput.CpuTime() +377 , StopwatchDA.RealTime(),StopwatchDA.CpuTime()); +378 } +379 ClearStatusFlags(kRunning); +380 return iResult; +381 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!SetStatusFlags@{SetStatusFlags}} +\index{SetStatusFlags@{SetStatusFlags}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Set\-Status\-Flags (int {\em flags})\hspace{0.3cm}{\tt [private]}}\label{classAliHLTSystem_d0} + + +Set status flags. + +Definition at line 718 of file Ali\-HLTSystem.cxx. + +References f\-State. + +Referenced by Build\-Task\-Lists\-From\-Top\-Configurations(), Configure(), Load\-Component\-Libraries(), and Run(). + +\footnotesize\begin{verbatim}719 { +720 // see header file for class documentation +721 fState|=flags; +722 return fState; +723 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!StartTasks@{StartTasks}} +\index{StartTasks@{StartTasks}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Start\-Tasks ()}\label{classAliHLTSystem_a16} + + +Start task list. The {\bf Ali\-HLTTask::Start\-Run}{\rm (p.\,\pageref{classAliHLTTask_a18})} method is called for each task, the components will be prepared for event processing. \begin{Desc} +\item[Returns:]neg error code if failed \end{Desc} + + +Definition at line 456 of file Ali\-HLTSystem.cxx. + +References f\-Task\-List, and Ali\-HLTTask::Start\-Run(). + +Referenced by Run(). + +\footnotesize\begin{verbatim}457 { +458 // see header file for class documentation +459 int iResult=0; +460 TObjLink *lnk=fTaskList.FirstLink(); +461 while (lnk && iResult>=0) { +462 TObject* obj=lnk->GetObject(); +463 if (obj) { +464 AliHLTTask* pTask=(AliHLTTask*)obj; +465 iResult=pTask->StartRun(); +466 } else { +467 } +468 lnk = lnk->Next(); +469 } +470 if (iResult<0) { +471 } +472 return iResult; +473 } +\end{verbatim}\normalsize + + +\index{AliHLTSystem@{Ali\-HLTSystem}!StopTasks@{StopTasks}} +\index{StopTasks@{StopTasks}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTSystem::Stop\-Tasks ()}\label{classAliHLTSystem_a18} + + +Stop task list. The {\bf Ali\-HLTTask::End\-Run}{\rm (p.\,\pageref{classAliHLTTask_a19})} method is called for each task, the components will be cleaned after event processing. \begin{Desc} +\item[Returns:]neg error code if failed \end{Desc} + + +Definition at line 494 of file Ali\-HLTSystem.cxx. + +References Ali\-HLTTask::End\-Run(), and f\-Task\-List. + +Referenced by Run(). + +\footnotesize\begin{verbatim}495 { +496 // see header file for class documentation +497 int iResult=0; +498 TObjLink *lnk=fTaskList.FirstLink(); +499 while (lnk && iResult>=0) { +500 TObject* obj=lnk->GetObject(); +501 if (obj) { +502 AliHLTTask* pTask=(AliHLTTask*)obj; +503 iResult=pTask->EndRun(); +504 } else { +505 } +506 lnk = lnk->Next(); +507 } +508 return iResult; +509 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTSystem@{Ali\-HLTSystem}!fgNofInstances@{fgNofInstances}} +\index{fgNofInstances@{fgNofInstances}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTSystem::fg\-Nof\-Instances} = 0\hspace{0.3cm}{\tt [static, private]}}\label{classAliHLTSystem_v0} + + +the number of instances of Ali\-HLTSystem + +Definition at line 126 of file Ali\-HLTSystem.cxx. + +Referenced by Ali\-HLTSystem(), and $\sim$Ali\-HLTSystem().\index{AliHLTSystem@{Ali\-HLTSystem}!fpComponentHandler@{fpComponentHandler}} +\index{fpComponentHandler@{fpComponentHandler}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Handler}$\ast$ {\bf Ali\-HLTSystem::fp\-Component\-Handler}}\label{classAliHLTSystem_o0} + + +Pointer to an instance of {\bf Ali\-HLTComponent\-Handler}{\rm (p.\,\pageref{classAliHLTComponentHandler})}. + +Definition at line 57 of file Ali\-HLTSystem.h. + +Referenced by Find\-Dynamic\-Symbol(), Init\-Tasks(), Load\-Component\-Libraries(), and $\sim$Ali\-HLTSystem().\index{AliHLTSystem@{Ali\-HLTSystem}!fpConfigurationHandler@{fpConfigurationHandler}} +\index{fpConfigurationHandler@{fpConfigurationHandler}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration\-Handler}$\ast$ {\bf Ali\-HLTSystem::fp\-Configuration\-Handler}}\label{classAliHLTSystem_o1} + + +transient + +Pointer to an instance of {\bf Ali\-HLTConfiguration\-Handler}{\rm (p.\,\pageref{classAliHLTConfigurationHandler})}. + +Definition at line 62 of file Ali\-HLTSystem.h. + +Referenced by Build\-Task\-List(), Build\-Task\-Lists\-From\-Top\-Configurations(), Load\-Configurations(), and $\sim$Ali\-HLTSystem().\index{AliHLTSystem@{Ali\-HLTSystem}!fState@{fState}} +\index{fState@{fState}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTSystem::f\-State}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTSystem_r1} + + +state of the object + +Definition at line 324 of file Ali\-HLTSystem.h. + +Referenced by Check\-Status(), Clear\-Status\-Flags(), and Set\-Status\-Flags().\index{AliHLTSystem@{Ali\-HLTSystem}!fTaskList@{fTaskList}} +\index{fTaskList@{fTaskList}!AliHLTSystem@{Ali\-HLTSystem}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TList {\bf Ali\-HLTSystem::f\-Task\-List}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTSystem_r0} + + +list of tasks + +Definition at line 318 of file Ali\-HLTSystem.h. + +Referenced by Build\-Task\-List(), Clean\-Task\-List(), Deinit\-Tasks(), Find\-Task(), Init\-Benchmarking(), Init\-Tasks(), Insert\-Task(), Print\-Task\-List(), Process\-Tasks(), Start\-Tasks(), and Stop\-Tasks(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTSystem.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTSystem.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/classAliHLTTask.eps b/HLT/PHOS/latex/classAliHLTTask.eps new file mode 100644 index 00000000000..2791059e103 --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTTask.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 388.35 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.2875 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text `arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col `arg1' to `arg2' of row `arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(AliHLTTask) cw +(AliHLTLogging) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (AliHLTTask) 0 0 box + (AliHLTLogging) 0 1 box + +% ----- relations ----- + +solid +0 0 0 out +solid +1 0 1 in diff --git a/HLT/PHOS/latex/classAliHLTTask.tex b/HLT/PHOS/latex/classAliHLTTask.tex new file mode 100644 index 00000000000..a89140ad4ef --- /dev/null +++ b/HLT/PHOS/latex/classAliHLTTask.tex @@ -0,0 +1,1311 @@ +\section{Ali\-HLTTask Class Reference} +\label{classAliHLTTask}\index{AliHLTTask@{AliHLTTask}} +{\tt \#include $<$Ali\-HLTTask.h$>$} + +Inheritance diagram for Ali\-HLTTask::\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2cm]{classAliHLTTask} +\end{center} +\end{figure} + + +\subsection{Detailed Description} +A task collects all the information which is necessary to process a certain step in the HLT data processing chain.\begin{itemize} +\item the instance of the component the task object creates and deletes the component object\item the data buffer which receives the result of the component and provides the data to other tasks/components\item a list of all dependencies\item a list of consumers\item the task object holds an external pointer to the configuration object; {\bf Note:} the configuration object must exist through the existence of the task object!!!\end{itemize} + + +\begin{Desc} +\item[Note:]This class is only used for the {\bf HLT integration into Ali\-Root}{\rm (p.\,\pageref{group__alihlt__system})}. \end{Desc} + + + + +Definition at line 46 of file Ali\-HLTTask.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTTask} () +\item +{\bf Ali\-HLTTask} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf) +\item +{\bf Ali\-HLTTask} (const {\bf Ali\-HLTTask} \&) +\item +{\bf Ali\-HLTTask} \& {\bf operator=} (const {\bf Ali\-HLTTask} \&) +\item +virtual {\bf $\sim$Ali\-HLTTask} () +\item +int {\bf Init} ({\bf Ali\-HLTConfiguration} $\ast$p\-Conf, {\bf Ali\-HLTComponent\-Handler} $\ast$p\-CH) +\item +int {\bf Deinit} () +\item +const char $\ast$ {\bf Get\-Name} () const +\item +{\bf Ali\-HLTConfiguration} $\ast$ {\bf Get\-Conf} () const +\item +{\bf Ali\-HLTComponent} $\ast$ {\bf Get\-Component} () const +\item +{\bf Ali\-HLTTask} $\ast$ {\bf Find\-Dependency} (const char $\ast$id) +\item +int {\bf Set\-Dependency} ({\bf Ali\-HLTTask} $\ast$p\-Dep) +\item +int {\bf Unset\-Dependency} ({\bf Ali\-HLTTask} $\ast$p\-Dep) +\item +int {\bf Check\-Dependencies} () +\item +int {\bf Depends} ({\bf Ali\-HLTTask} $\ast$p\-Task) +\item +{\bf Ali\-HLTTask} $\ast$ {\bf Find\-Target} (const char $\ast$id) +\item +int {\bf Set\-Target} ({\bf Ali\-HLTTask} $\ast$p\-Dep) +\item +int {\bf Unset\-Target} ({\bf Ali\-HLTTask} $\ast$p\-Target) +\item +int {\bf Start\-Run} () +\item +int {\bf End\-Run} () +\item +int {\bf Process\-Task} (Int\_\-t event\-No) +\item +int {\bf Get\-Nof\-Matching\-Data\-Blocks} (const {\bf Ali\-HLTTask} $\ast$p\-Consumer\-Task) const +\item +int {\bf Get\-Nof\-Matching\-Data\-Types} (const {\bf Ali\-HLTTask} $\ast$p\-Consumer\-Task) const +\item +int {\bf Subscribe} (const {\bf Ali\-HLTTask} $\ast$p\-Consumer\-Task, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$array\-Block\-Desc, int i\-Array\-Size) +\item +int {\bf Release} ({\bf Ali\-HLTComponent\-Block\-Data} $\ast$p\-Block\-Desc, const {\bf Ali\-HLTTask} $\ast$p\-Consumer\-Task) +\item +void {\bf Print\-Status} () +\item +int {\bf Follow\-Dependency} (const char $\ast$id, TList $\ast$p\-Tgt\-List=NULL) +\item +void {\bf Print\-Dependency\-Tree} (const char $\ast$id, int b\-Mode=0) +\item +int {\bf Get\-Nof\-Sources} () const +\end{CompactItemize} +\subsection*{Private Member Functions} +\begin{CompactItemize} +\item +{\bf Class\-Def} ({\bf Ali\-HLTTask}, 1) +\end{CompactItemize} +\subsection*{Private Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTConfiguration} $\ast$ {\bf fp\-Configuration} +\item +{\bf Ali\-HLTComponent} $\ast$ {\bf fp\-Component} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +{\bf Ali\-HLTData\-Buffer} $\ast$ {\bf fp\-Data\-Buffer} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +TList {\bf f\-List\-Targets} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\item +TList {\bf f\-List\-Dependencies} +\item +{\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\bf fp\-Block\-Data\-Array} +\item +int {\bf f\-Block\-Data\-Array\-Size} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTTask@{Ali\-HLTTask}!AliHLTTask@{AliHLTTask}} +\index{AliHLTTask@{AliHLTTask}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTTask::Ali\-HLTTask ()}\label{classAliHLTTask_a0} + + +standard constructor \index{AliHLTTask@{Ali\-HLTTask}!AliHLTTask@{AliHLTTask}} +\index{AliHLTTask@{AliHLTTask}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTTask::Ali\-HLTTask ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf})}\label{classAliHLTTask_a1} + + +constructor \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]pointer to configuration descriptor \end{description} +\end{Desc} + + +Definition at line 436 of file Ali\-HLTConfiguration.cxx. + +\footnotesize\begin{verbatim}437 : +438 fpConfiguration(pConf), +439 fpComponent(NULL), +440 fpDataBuffer(NULL), +441 fListTargets(), +442 fListDependencies(), +443 fpBlockDataArray(NULL), +444 fBlockDataArraySize(0) +445 { +446 // see header file for function documentation +447 } + +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!AliHLTTask@{AliHLTTask}} +\index{AliHLTTask@{AliHLTTask}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTTask::Ali\-HLTTask (const {\bf Ali\-HLTTask} \&)}\label{classAliHLTTask_a2} + + +not a valid copy constructor, defined according to effective C++ style + +Definition at line 449 of file Ali\-HLTConfiguration.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}450 : +451 TObject(), +452 AliHLTLogging(), +453 fpConfiguration(NULL), +454 fpComponent(NULL), +455 fpDataBuffer(NULL), +456 fListTargets(), +457 fListDependencies(), +458 fpBlockDataArray(NULL), +459 fBlockDataArraySize(0) +460 { +461 HLTFatal("copy constructor untested"); +462 } + +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!~AliHLTTask@{$\sim$AliHLTTask}} +\index{~AliHLTTask@{$\sim$AliHLTTask}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTTask::$\sim${\bf Ali\-HLTTask} ()\hspace{0.3cm}{\tt [virtual]}}\label{classAliHLTTask_a4} + + +destructor + +Definition at line 471 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Dependencies, f\-List\-Targets, fp\-Block\-Data\-Array, fp\-Component, Unset\-Dependency(), and Unset\-Target(). + +\footnotesize\begin{verbatim}472 { +473 TObjLink* lnk=fListDependencies.FirstLink(); +474 +475 while (lnk!=NULL) { +476 AliHLTTask* pTask=(AliHLTTask*)lnk->GetObject(); +477 pTask->UnsetTarget(this); +478 lnk=lnk->Next(); +479 } +480 lnk=fListTargets.FirstLink(); +481 +482 while (lnk!=NULL) { +483 AliHLTTask* pTask=(AliHLTTask*)lnk->GetObject(); +484 pTask->UnsetDependency(this); +485 lnk=lnk->Next(); +486 } +487 +488 if (fpComponent) delete fpComponent; +489 fpComponent=NULL; +490 if (fpBlockDataArray) delete[] fpBlockDataArray; +491 fpBlockDataArray=NULL; +492 } +\end{verbatim}\normalsize + + + + +\subsection{Member Function Documentation} +\index{AliHLTTask@{Ali\-HLTTask}!CheckDependencies@{CheckDependencies}} +\index{CheckDependencies@{CheckDependencies}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Check\-Dependencies ()}\label{classAliHLTTask_a13} + + +Return number of unresolved dependencies. Iterate through all the configurations the task depends on and check whether a corresponding task is available in the list. \begin{Desc} +\item[Returns:]number of unresolved dependencies \end{Desc} + + +Definition at line 666 of file Ali\-HLTConfiguration.cxx. + +References Find\-Dependency(), fp\-Configuration, Ali\-HLTConfiguration::Get\-First\-Source(), Ali\-HLTConfiguration::Get\-Name(), and Ali\-HLTConfiguration::Get\-Next\-Source(). + +Referenced by Ali\-HLTSystem::Insert\-Task(). + +\footnotesize\begin{verbatim}667 { +668 // see header file for function documentation +669 int iResult=0; +670 AliHLTConfiguration* pSrc=fpConfiguration->GetFirstSource(); +671 while (pSrc) { +672 if (FindDependency(pSrc->GetName())==NULL) { +673 //HLTDebug("dependency \"%s\" unresolved", pSrc->GetName()); +674 iResult++; +675 } +676 pSrc=fpConfiguration->GetNextSource(); +677 } +678 return iResult; +679 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!ClassDef@{ClassDef}} +\index{ClassDef@{ClassDef}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTTask::Class\-Def ({\bf Ali\-HLTTask}, 1)\hspace{0.3cm}{\tt [private]}}\label{classAliHLTTask_d0} + + +\index{AliHLTTask@{Ali\-HLTTask}!Deinit@{Deinit}} +\index{Deinit@{Deinit}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Deinit ()}\label{classAliHLTTask_a6} + + +De-Initialize the task. Final cleanup after the run. The {\bf Ali\-HLTComponent::Deinit}{\rm (p.\,\pageref{classAliHLTComponent_a5})} method of the component is called. The analysis component is deleted. + +Definition at line 532 of file Ali\-HLTConfiguration.cxx. + +References Ali\-HLTComponent::Deinit(), fp\-Component, Get\-Component(), Get\-Name(), and HLTWarning. + +Referenced by Ali\-HLTSystem::Deinit\-Tasks(). + +\footnotesize\begin{verbatim}533 { +534 // see header file for function documentation +535 int iResult=0; +536 AliHLTComponent* pComponent=GetComponent(); +537 fpComponent=NULL; +538 if (pComponent) { +539 //HLTDebug("delete component %s (%p)", pComponent->GetComponentID(), pComponent); +540 pComponent->Deinit(); +541 delete pComponent; +542 } else { +543 HLTWarning("task %s (%p) doesn't seem to be in initialized", GetName(), this); +544 } +545 return iResult; +546 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!Depends@{Depends}} +\index{Depends@{Depends}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Depends ({\bf Ali\-HLTTask} $\ast$ {\em p\-Task})}\label{classAliHLTTask_a14} + + +Check whether the current task depends on the task p\-Task. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Task}]pointer to Task descriptor \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]1 the current task depends on p\-Task \par + 0 no dependency \par + neg. error code if failed \end{Desc} + + +Definition at line 682 of file Ali\-HLTConfiguration.cxx. + +References fp\-Configuration, Get\-Name(), and Ali\-HLTConfiguration::Get\-Source(). + +Referenced by Ali\-HLTSystem::Insert\-Task(). + +\footnotesize\begin{verbatim}683 { +684 // see header file for function documentation +685 int iResult=0; +686 if (pTask) { +687 if (fpConfiguration) { +688 iResult=fpConfiguration->GetSource(pTask->GetName())!=NULL; +689 if (iResult>0) { +690 //HLTDebug("task \"%s\" depends on \"%s\"", GetName(), pTask->GetName()); +691 } else { +692 //HLTDebug("task \"%s\" independend of \"%s\"", GetName(), pTask->GetName()); +693 } +694 } else { +695 iResult=-EFAULT; +696 } +697 } else { +698 iResult=-EINVAL; +699 } +700 return iResult; +701 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!EndRun@{EndRun}} +\index{EndRun@{EndRun}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::End\-Run ()}\label{classAliHLTTask_a19} + + +Clean-up the task after event processing. The method cleans up internal structures. + +Definition at line 812 of file Ali\-HLTConfiguration.cxx. + +References f\-Block\-Data\-Array\-Size, fp\-Block\-Data\-Array, fp\-Data\-Buffer, Get\-Name(), and HLTWarning. + +Referenced by Ali\-HLTSystem::Stop\-Tasks(). + +\footnotesize\begin{verbatim}813 { +814 // see header file for function documentation +815 int iResult=0; +816 if (fpBlockDataArray) { +817 fBlockDataArraySize=0; +818 delete [] fpBlockDataArray; +819 fpBlockDataArray=0; +820 } else { +821 HLTWarning("task %s (%p) doesn't seem to be in running mode", GetName(), this); +822 } +823 if (fpDataBuffer) { +824 AliHLTDataBuffer* pBuffer=fpDataBuffer; +825 fpDataBuffer=NULL; +826 delete pBuffer; +827 } +828 return iResult; +829 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!FindDependency@{FindDependency}} +\index{FindDependency@{FindDependency}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTTask} $\ast$ Ali\-HLTTask::Find\-Dependency (const char $\ast$ {\em id})}\label{classAliHLTTask_a10} + + +Find a dependency with a certain {\em name id\/}. Searches in the list of dependencies for a task. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]the id of the {\bf CONFIGURATION}\par + {\bf NOTE:} the id does NOT specify a COMPONENT \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to task \end{Desc} + + +Definition at line 568 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Dependencies. + +Referenced by Check\-Dependencies(), Print\-Status(), and Set\-Dependency(). + +\footnotesize\begin{verbatim}569 { +570 // see header file for function documentation +571 AliHLTTask* pTask=NULL; +572 if (id) { +573 pTask=(AliHLTTask*)fListDependencies.FindObject(id); +574 } +575 return pTask; +576 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!FindTarget@{FindTarget}} +\index{FindTarget@{FindTarget}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTTask} $\ast$ Ali\-HLTTask::Find\-Target (const char $\ast$ {\em id})}\label{classAliHLTTask_a15} + + +Find a target with a certain id. Tasks which depend on the current task are referred to be {\em targets\/}. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]configuration id to search for \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]pointer to task instance \end{Desc} + + +Definition at line 703 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Targets. + +Referenced by Set\-Target(). + +\footnotesize\begin{verbatim}704 { +705 // see header file for function documentation +706 AliHLTTask* pTask=NULL; +707 if (id) { +708 pTask=(AliHLTTask*)fListTargets.FindObject(id); +709 } +710 return pTask; +711 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!FollowDependency@{FollowDependency}} +\index{FollowDependency@{FollowDependency}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Follow\-Dependency (const char $\ast$ {\em id}, TList $\ast$ {\em p\-Tgt\-List} = {\tt NULL})}\label{classAliHLTTask_a26} + + +Search task dependency list recursively to find a dependency. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]id of the task to search for \item[{\em p\-Tgt\-List}](optional) target list to receive dependency tree \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]0 if not found, $>$0 found in the n-th level, dependency list in the target list \end{Desc} + + +Definition at line 578 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Dependencies. + +Referenced by Print\-Dependency\-Tree(). + +\footnotesize\begin{verbatim}579 { +580 // see header file for function documentation +581 int iResult=0; +582 if (id) { +583 AliHLTTask* pDep=NULL; +584 if ((pDep=(AliHLTTask*)fListDependencies.FindObject(id))!=NULL) { +585 if (pTgtList) pTgtList->Add(pDep); +586 iResult++; +587 } else { +588 TObjLink* lnk=fListDependencies.FirstLink(); +589 while (lnk && iResult==0) { +590 pDep=(AliHLTTask*)lnk->GetObject(); +591 if (pDep) { +592 if ((iResult=pDep->FollowDependency(id, pTgtList))>0) { +593 if (pTgtList) pTgtList->AddFirst(pDep); +594 iResult++; +595 } +596 } else { +597 iResult=-EFAULT; +598 } +599 lnk=lnk->Next(); +600 } +601 } +602 } else { +603 iResult=-EINVAL; +604 } +605 return iResult; +606 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!GetComponent@{GetComponent}} +\index{GetComponent@{GetComponent}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent} $\ast$ Ali\-HLTTask::Get\-Component () const}\label{classAliHLTTask_a9} + + +Return pointer to component, which the task internally holds. {\bf Never delete this object!!!} \begin{Desc} +\item[Returns:]instance of the component \end{Desc} + + +Definition at line 562 of file Ali\-HLTConfiguration.cxx. + +Referenced by Deinit(), Get\-Nof\-Matching\-Data\-Blocks(), Get\-Nof\-Matching\-Data\-Types(), Ali\-HLTSystem::Init\-Benchmarking(), Print\-Status(), Process\-Task(), Release(), Start\-Run(), and Subscribe(). + +\footnotesize\begin{verbatim}563 { +564 // see header file for function documentation +565 return fpComponent; +566 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!GetConf@{GetConf}} +\index{GetConf@{GetConf}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration} $\ast$ Ali\-HLTTask::Get\-Conf () const}\label{classAliHLTTask_a8} + + +Return pointer to configuration. The tasks holds internally the configuration object. \begin{Desc} +\item[Returns:]pointer to configuration \end{Desc} + + +Definition at line 556 of file Ali\-HLTConfiguration.cxx. + +Referenced by Ali\-HLTSystem::Build\-Task\-List(). + +\footnotesize\begin{verbatim}557 { +558 // see header file for function documentation +559 return fpConfiguration; +560 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!GetName@{GetName}} +\index{GetName@{GetName}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTTask::Get\-Name () const}\label{classAliHLTTask_a7} + + +Get the name of the object. This is an overridden TObject function in order to return the configuration name instead of the class name. Enables use of TList standard functions. \begin{Desc} +\item[Returns:]name of the configuration \end{Desc} + + +Definition at line 548 of file Ali\-HLTConfiguration.cxx. + +References fp\-Configuration, and Ali\-HLTConfiguration::Get\-Name(). + +Referenced by Ali\-HLTSystem::Build\-Task\-List(), Deinit(), Depends(), End\-Run(), Init(), Ali\-HLTSystem::Insert\-Task(), Print\-Dependency\-Tree(), Print\-Status(), Process\-Task(), Ali\-HLTSystem::Process\-Tasks(), Set\-Dependency(), Set\-Target(), and Start\-Run(). + +\footnotesize\begin{verbatim}549 { +550 // see header file for function documentation +551 if (fpConfiguration) +552 return fpConfiguration->GetName(); +553 return TObject::GetName(); +554 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!GetNofMatchingDataBlocks@{GetNofMatchingDataBlocks}} +\index{GetNofMatchingDataBlocks@{GetNofMatchingDataBlocks}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Get\-Nof\-Matching\-Data\-Blocks (const {\bf Ali\-HLTTask} $\ast$ {\em p\-Consumer\-Task}) const}\label{classAliHLTTask_a21} + + +Determine the number of matching data block between the component and the data buffer of a consumer component. It checks which data types from the list of input data types of the consumer component can be provided by data blocks of the current component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer\-Task}]the task which subscribes to the data \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]number of matching data blocks \end{Desc} + + +Definition at line 959 of file Ali\-HLTConfiguration.cxx. + +References Ali\-HLTData\-Buffer::Find\-Matching\-Data\-Blocks(), fp\-Data\-Buffer, Get\-Component(), and HLTFatal. + +Referenced by Process\-Task(). + +\footnotesize\begin{verbatim}960 { +961 // see header file for function documentation +962 int iResult=0; +963 if (pConsumerTask) { +964 if (fpDataBuffer) { +965 iResult=fpDataBuffer->FindMatchingDataBlocks(pConsumerTask->GetComponent(), NULL); +966 } else { +967 HLTFatal("internal data buffer missing"); +968 iResult=-EFAULT; +969 } +970 } else { +971 iResult=-EINVAL; +972 } +973 return iResult; +974 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!GetNofMatchingDataTypes@{GetNofMatchingDataTypes}} +\index{GetNofMatchingDataTypes@{GetNofMatchingDataTypes}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Get\-Nof\-Matching\-Data\-Types (const {\bf Ali\-HLTTask} $\ast$ {\em p\-Consumer\-Task}) const}\label{classAliHLTTask_a22} + + +Determine the number of matching data types between the component and a consumer component. It checks which data types from the list of input data types of the consumer component can be provided by the current component. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer\-Task}]the task which subscribes to the data \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]number of matching data types \end{Desc} + + +Definition at line 976 of file Ali\-HLTConfiguration.cxx. + +References Ali\-HLTComponent::Find\-Matching\-Data\-Types(), Get\-Component(), HLTError, and HLTFatal. + +Referenced by Start\-Run(). + +\footnotesize\begin{verbatim}977 { +978 // see header file for function documentation +979 int iResult=0; +980 if (pConsumerTask) { +981 AliHLTComponent* pComponent=GetComponent(); +982 if (!pComponent) { +983 // init ? +984 HLTError("component not initialized"); +985 iResult=-EFAULT; +986 } +987 if (pComponent) { +988 iResult=pComponent->FindMatchingDataTypes(pConsumerTask->GetComponent(), NULL); +989 } else { +990 HLTFatal("task initialization failed"); +991 iResult=-EFAULT; +992 } +993 } else { +994 iResult=-EINVAL; +995 } +996 return iResult; +997 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!GetNofSources@{GetNofSources}} +\index{GetNofSources@{GetNofSources}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Get\-Nof\-Sources () const\hspace{0.3cm}{\tt [inline]}}\label{classAliHLTTask_a28} + + +Get number of source tasks. \begin{Desc} +\item[Returns:]number of source tasks \end{Desc} + + +Definition at line 269 of file Ali\-HLTTask.h. + +References f\-List\-Dependencies. + +\footnotesize\begin{verbatim}269 {return fListDependencies.GetSize();} +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!Init@{Init}} +\index{Init@{Init}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Init ({\bf Ali\-HLTConfiguration} $\ast$ {\em p\-Conf}, {\bf Ali\-HLTComponent\-Handler} $\ast$ {\em p\-CH})}\label{classAliHLTTask_a5} + + +Initialize the task. The task is initialized with a configuration descriptor. It needs a component handler instance to create the analysis component. The component is created and initialized. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Conf}]pointer to configuration descriptor, can be NULL if it was already provided to the constructor \item[{\em p\-CH}]the HLT component handler \end{description} +\end{Desc} + + +Definition at line 494 of file Ali\-HLTConfiguration.cxx. + +References Ali\-HLTComponent\-Handler::Create\-Component(), fp\-Component, fp\-Configuration, Ali\-HLTConfiguration::Get\-Arguments(), Ali\-HLTConfiguration::Get\-Component\-ID(), Ali\-HLTConfiguration::Get\-Name(), Get\-Name(), HLTError, and HLTWarning. + +Referenced by Ali\-HLTSystem::Init\-Tasks(). + +\footnotesize\begin{verbatim}495 { +496 // see header file for function documentation +497 int iResult=0; +498 if (fpConfiguration!=NULL && pConf!=NULL && fpConfiguration!=pConf) { +499 HLTWarning("overriding existing reference to configuration object %p (%s) by %p", +500 fpConfiguration, GetName(), pConf); +501 } +502 if (pConf!=NULL) fpConfiguration=pConf; +503 if (fpConfiguration) { +504 if (pCH) { +505 int argc=0; +506 const char** argv=NULL; +507 if ((iResult=fpConfiguration->GetArguments(&argv))>=0) { +508 argc=iResult; // just to make it clear +509 // TODO: we have to think about the optional environment parameter, +510 // currently just set to NULL. +511 iResult=pCH->CreateComponent(fpConfiguration->GetComponentID(), NULL, argc, argv, fpComponent); +512 if (fpComponent || iResult<=0) { +513 //HLTDebug("component %s (%p) created", fpComponent->GetComponentID(), fpComponent); +514 } else { +515 HLTError("can not find component \"%s\" (%d)", fpConfiguration->GetComponentID(), iResult); +516 } +517 } else { +518 HLTError("can not get argument list for configuration %s (%s)", fpConfiguration->GetName(), fpConfiguration->GetComponentID()); +519 iResult=-EINVAL; +520 } +521 } else { +522 HLTError("component handler instance needed for task initialization"); +523 iResult=-EINVAL; +524 } +525 } else { +526 HLTError("configuration object instance needed for task initialization"); +527 iResult=-EINVAL; +528 } +529 return iResult; +530 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!operator=@{operator=}} +\index{operator=@{operator=}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTTask} \& Ali\-HLTTask::operator= (const {\bf Ali\-HLTTask} \&)}\label{classAliHLTTask_a3} + + +not a valid assignment op, but defined according to effective C++ style + +Definition at line 464 of file Ali\-HLTConfiguration.cxx. + +References HLTFatal. + +\footnotesize\begin{verbatim}465 { +466 // see header file for function documentation +467 HLTFatal("assignment operator untested"); +468 return *this; +469 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!PrintDependencyTree@{PrintDependencyTree}} +\index{PrintDependencyTree@{PrintDependencyTree}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTTask::Print\-Dependency\-Tree (const char $\ast$ {\em id}, int {\em b\-Mode} = {\tt 0})}\label{classAliHLTTask_a27} + + +Print the tree for a certain dependency either from the task or configuration list. Each task posseses two \char`\"{}link lists\char`\"{}: The configurations are the origin of the task list. In case of an error during the built of the task list, the dependencies for the task list might be incomplete. In this case the configurations can give infomation on the error reason. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em id}]id of the dependency to search for \item[{\em b\-Mode}]0 (default) from task dependency list, \par + 1 from configuration list \end{description} +\end{Desc} + + +Definition at line 608 of file Ali\-HLTConfiguration.cxx. + +References Follow\-Dependency(), Ali\-HLTConfiguration::Follow\-Dependency(), fp\-Configuration, Get\-Name(), HLTLog\-Keyword, and HLTMessage. + +Referenced by Ali\-HLTSystem::Build\-Task\-List(). + +\footnotesize\begin{verbatim}609 { +610 // see header file for function documentation +611 HLTLogKeyword("task dependencies"); +612 int iResult=0; +613 TList tgtList; +614 if (bFromConfiguration) { +615 if (fpConfiguration) +616 iResult=fpConfiguration->FollowDependency(id, &tgtList); +617 else +618 iResult=-EFAULT; +619 } else +620 iResult=FollowDependency(id, &tgtList); +621 if (iResult>0) { +622 HLTMessage(" task \"%s\": dependency level %d ", GetName(), iResult); +623 TObjLink* lnk=tgtList.FirstLink(); +624 int i=iResult; +625 char* pSpace = new char[iResult+1]; +626 if (pSpace) { +627 memset(pSpace, 32, iResult); +628 pSpace[i]=0; +629 while (lnk) { +630 TObject* obj=lnk->GetObject(); +631 HLTMessage(" %s^-- %s ", &pSpace[i--], obj->GetName()); +632 lnk=lnk->Next(); +633 } +634 delete [] pSpace; +635 } else { +636 iResult=-ENOMEM; +637 } +638 } +639 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!PrintStatus@{PrintStatus}} +\index{PrintStatus@{PrintStatus}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTTask::Print\-Status ()}\label{classAliHLTTask_a25} + + +Print the status of the task with component, dependencies and targets. + +Definition at line 1033 of file Ali\-HLTConfiguration.cxx. + +References Find\-Dependency(), f\-List\-Targets, fp\-Configuration, Get\-Component(), Ali\-HLTComponent::Get\-Component\-ID(), Ali\-HLTConfiguration::Get\-First\-Source(), Get\-Name(), Ali\-HLTConfiguration::Get\-Name(), Ali\-HLTConfiguration::Get\-Next\-Source(), HLTLog\-Keyword, and HLTMessage. + +Referenced by Ali\-HLTSystem::Print\-Task\-List(). + +\footnotesize\begin{verbatim}1034 { +1035 // see header file for function documentation +1036 HLTLogKeyword("task properties"); +1037 AliHLTComponent* pComponent=GetComponent(); +1038 if (pComponent) { +1039 HLTMessage(" component: %s (%p)", pComponent->GetComponentID(), pComponent); +1040 } else { +1041 HLTMessage(" no component set!"); +1042 } +1043 if (fpConfiguration) { +1044 AliHLTConfiguration* pSrc=fpConfiguration->GetFirstSource(); +1045 while (pSrc) { +1046 const char* pQualifier="unresolved"; +1047 if (FindDependency(pSrc->GetName())) +1048 pQualifier="resolved"; +1049 HLTMessage(" source: %s (%s)", pSrc->GetName(), pQualifier); +1050 pSrc=fpConfiguration->GetNextSource(); +1051 } +1052 TObjLink* lnk = fListTargets.FirstLink(); +1053 while (lnk) { +1054 TObject *obj = lnk->GetObject(); +1055 HLTMessage(" target: %s", obj->GetName()); +1056 lnk = lnk->Next(); +1057 } +1058 } else { +1059 HLTMessage(" task \"%s\" not initialized", GetName()); +1060 } +1061 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!ProcessTask@{ProcessTask}} +\index{ProcessTask@{ProcessTask}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Process\-Task (Int\_\-t {\em event\-No})}\label{classAliHLTTask_a20} + + +Process the task. If all dependencies are resolved the tasks subscribes to the data of all source tasks, builds the block descriptor and calls the {\bf Ali\-HLTComponent::Process\-Event}{\rm (p.\,\pageref{classAliHLTComponent_a6})} method of the component, after processing, the data blocks are released. \par + The {\bf Start\-Run}{\rm (p.\,\pageref{classAliHLTTask_a18})} method must be called before. + +Definition at line 831 of file Ali\-HLTConfiguration.cxx. + +References Ali\-HLTUInt32\_\-t, Ali\-HLTUInt8\_\-t, Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt, f\-Block\-Data\-Array\-Size, Ali\-HLTComponent\-Event\-Data::f\-Event\-ID, Ali\-HLTComponent::Fill\-Event\-Data(), f\-List\-Dependencies, fp\-Block\-Data\-Array, fp\-Component, fp\-Data\-Buffer, Ali\-HLTComponent\-Block\-Data::f\-Size, Get\-Component(), Ali\-HLTComponent::Get\-Component\-ID(), Ali\-HLTComponent::Get\-Component\-Type(), Get\-Name(), Get\-Nof\-Matching\-Data\-Blocks(), Ali\-HLTComponent::Get\-Output\-Data\-Size(), Ali\-HLTData\-Buffer::Get\-Target\-Buffer(), HLTDebug, HLTError, HLTFatal, Ali\-HLTComponent::Process\-Event(), Release(), Ali\-HLTData\-Buffer::Reset(), Ali\-HLTData\-Buffer::Set\-Segments(), and Subscribe(). + +Referenced by Ali\-HLTSystem::Process\-Tasks(). + +\footnotesize\begin{verbatim}832 { +833 // see header file for function documentation +834 int iResult=0; +835 AliHLTComponent* pComponent=GetComponent(); +836 if (pComponent && fpDataBuffer) { +837 HLTDebug("Processing task %s (%p) fpDataBuffer %p", GetName(), this, fpDataBuffer); +838 fpDataBuffer->Reset(); +839 int iSourceDataBlock=0; +840 int iInputDataVolume=0; +841 +842 int iNofInputDataBlocks=0; +843 /* TODO: the assumption of only one output data type per component is the current constraint +844 * later it should be checked how many output blocks of the source component match the input +845 * data types of the consumer component (GetNofMatchingDataBlocks). If one assumes that a +846 * certain output block is always been produced, the initialization could be done in the +847 * StartRun. Otherwise the fpBlockDataArray has to be adapted each time. +848 */ +849 iNofInputDataBlocks=fListDependencies.GetSize(); // one block per source +850 // is not been used since the allocation was done in StartRun, but check the size +851 if (iNofInputDataBlocks>fBlockDataArraySize) { +852 HLTError("block data array too small"); +853 } +854 +855 AliHLTTask* pSrcTask=NULL; +856 TList subscribedTaskList; +857 TObjLink* lnk=fListDependencies.FirstLink(); +858 +859 // subscribe to all source tasks +860 while (lnk && iResult>=0) { +861 pSrcTask=(AliHLTTask*)lnk->GetObject(); +862 if (pSrcTask) { +863 int iMatchingDB=pSrcTask->GetNofMatchingDataBlocks(this); +864 if (iMatchingDB<=fBlockDataArraySize-iSourceDataBlock) { +865 if (fpBlockDataArray) { +866 if ((iResult=pSrcTask->Subscribe(this, &fpBlockDataArray[iSourceDataBlock],fBlockDataArraySize-iSourceDataBlock))>0) { +867 for (int i=0; iGetName(), pSrcTask); +875 iResult=0; +876 } else { +877 HLTError("Task %s (%p): subscription to task %s (%p) failed with error %d", GetName(), this, pSrcTask->GetName(), pSrcTask, iResult); +878 iResult=-EFAULT; +879 } +880 } else { +881 HLTFatal("Task %s (%p): BlockData array not allocated", GetName(), this); +882 iResult=-EFAULT; +883 } +884 } else { +885 HLTFatal("Task %s (%p): too little space in data block array for subscription to task %s (%p)", GetName(), this, pSrcTask->GetName(), pSrcTask); +886 HLTDebug("#data types=%d, array size=%d, current index=%d", iMatchingDB, fBlockDataArraySize, iSourceDataBlock); +887 iResult=-EFAULT; +888 } +889 } else { +890 HLTFatal("fatal internal error in ROOT list handling"); +891 iResult=-EFAULT; +892 } +893 lnk=lnk->Next(); +894 } +895 +896 // process the event +897 if (iResult>=0) { +898 long unsigned int iConstBase=0; +899 double fInputMultiplier=0; +900 if (pComponent->GetComponentType()!=AliHLTComponent::kSink) +901 pComponent->GetOutputDataSize(iConstBase, fInputMultiplier); +902 int iOutputDataSize=int(fInputMultiplier*iInputDataVolume) + iConstBase; +903 //HLTDebug("task %s: reqired output size %d", GetName(), iOutputDataSize); +904 AliHLTUInt8_t* pTgtBuffer=NULL; +905 if (iOutputDataSize>0) pTgtBuffer=fpDataBuffer->GetTargetBuffer(iOutputDataSize); +906 //HLTDebug("provided raw buffer %p", pTgtBuffer); +907 AliHLTComponentEventData evtData; +908 AliHLTComponent::FillEventData(evtData); +909 evtData.fEventID=(AliHLTEventID_t)eventNo; +910 evtData.fBlockCnt=iSourceDataBlock; +911 AliHLTComponentTriggerData trigData; +912 AliHLTUInt32_t size=iOutputDataSize; +913 AliHLTUInt32_t outputBlockCnt=0; +914 AliHLTComponentBlockData* outputBlocks=NULL; +915 AliHLTComponentEventDoneData* edd; +916 if (pTgtBuffer!=NULL || iOutputDataSize==0) { +917 iResult=pComponent->ProcessEvent(evtData, fpBlockDataArray, trigData, pTgtBuffer, size, outputBlockCnt, outputBlocks, edd); +918 HLTDebug("task %s: component %s ProcessEvent finnished (%d): size=%d blocks=%d", GetName(), pComponent->GetComponentID(), iResult, size, outputBlockCnt); +919 if (iResult>=0 && pTgtBuffer) { +920 iResult=fpDataBuffer->SetSegments(pTgtBuffer, outputBlocks, outputBlockCnt); +921 delete [] outputBlocks; outputBlocks=NULL; outputBlockCnt=0; +922 } +923 } else { +924 HLTError("task %s: no target buffer available", GetName()); +925 iResult=-EFAULT; +926 } +927 } +928 +929 // now release all buffers which we have subscribed to +930 iSourceDataBlock=0; +931 lnk=subscribedTaskList.FirstLink(); +932 while (lnk) { +933 pSrcTask=(AliHLTTask*)lnk->GetObject(); +934 if (pSrcTask) { +935 int iTempRes=0; +936 if ((iTempRes=pSrcTask->Release(&fpBlockDataArray[iSourceDataBlock], this))>=0) { +937 HLTDebug("Task %s (%p) successfully released task %s (%p)", GetName(), this, pSrcTask->GetName(), pSrcTask); +938 } else { +939 HLTError("Task %s (%p): realease of task %s (%p) failed with error %d", GetName(), this, pSrcTask->GetName(), pSrcTask, iTempRes); +940 } +941 } else { +942 HLTFatal("task %s (%p): internal error in ROOT list handling", GetName(), this); +943 if (iResult>=0) iResult=-EFAULT; +944 } +945 subscribedTaskList.Remove(lnk); +946 lnk=subscribedTaskList.FirstLink(); +947 iSourceDataBlock++; +948 } +949 if (subscribedTaskList.GetSize()>0) { +950 HLTError("task %s (%p): could not release all data buffers", GetName(), this); +951 } +952 } else { +953 HLTError("task %s (%p): internal failure (not initialized component %p, data buffer %p)", GetName(), this, fpComponent, fpDataBuffer); +954 iResult=-EFAULT; +955 } +956 return iResult; +957 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!Release@{Release}} +\index{Release@{Release}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Release ({\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em p\-Block\-Desc}, const {\bf Ali\-HLTTask} $\ast$ {\em p\-Consumer\-Task})}\label{classAliHLTTask_a24} + + +Release a block descriptor. Notification from consumer task. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Block\-Desc}]descriptor of the data segment \item[{\em p\-Consumer\-Task}]the task which subscribed to the data \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]: $>$0 if success, negative error code if failed \end{Desc} + + +Definition at line 1016 of file Ali\-HLTConfiguration.cxx. + +References fp\-Data\-Buffer, Get\-Component(), HLTFatal, and Ali\-HLTData\-Buffer::Release(). + +Referenced by Process\-Task(). + +\footnotesize\begin{verbatim}1017 { +1018 // see header file for function documentation +1019 int iResult=0; +1020 if (pConsumerTask && pBlockDesc) { +1021 if (fpDataBuffer) { +1022 iResult=fpDataBuffer->Release(pBlockDesc, pConsumerTask->GetComponent()); +1023 } else { +1024 HLTFatal("internal data buffer missing"); +1025 iResult=-EFAULT; +1026 } +1027 } else { +1028 iResult=-EINVAL; +1029 } +1030 return iResult; +1031 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!SetDependency@{SetDependency}} +\index{SetDependency@{SetDependency}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Set\-Dependency ({\bf Ali\-HLTTask} $\ast$ {\em p\-Dep})}\label{classAliHLTTask_a11} + + +Add a dependency for the task. The task maintains a list of other tasks it depends on. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Dep}]pointer to a task descriptor \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]0 if suceeded, neg error code if failed \par + -EEXIST : the dependencie exists already \end{Desc} + + +Definition at line 641 of file Ali\-HLTConfiguration.cxx. + +References Find\-Dependency(), f\-List\-Dependencies, and Get\-Name(). + +Referenced by Ali\-HLTSystem::Insert\-Task(). + +\footnotesize\begin{verbatim}642 { +643 // see header file for function documentation +644 int iResult=0; +645 if (pDep) { +646 if (FindDependency(pDep->GetName())==NULL) { +647 fListDependencies.Add(pDep); +648 } else { +649 iResult=-EEXIST; +650 } +651 } else { +652 iResult=-EINVAL; +653 } +654 return iResult; +655 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!SetTarget@{SetTarget}} +\index{SetTarget@{SetTarget}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Set\-Target ({\bf Ali\-HLTTask} $\ast$ {\em p\-Dep})}\label{classAliHLTTask_a16} + + +Insert task into target list. The target list specifies all the tasks which depend on the current task. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Dep}]pointer task object \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]$>$=0 if succeeded, neg. error code if failed \end{Desc} + + +Definition at line 713 of file Ali\-HLTConfiguration.cxx. + +References Find\-Target(), f\-List\-Targets, and Get\-Name(). + +Referenced by Ali\-HLTSystem::Insert\-Task(). + +\footnotesize\begin{verbatim}714 { +715 // see header file for function documentation +716 int iResult=0; +717 if (pTgt) { +718 if (FindTarget(pTgt->GetName())==NULL) { +719 fListTargets.Add(pTgt); +720 } else { +721 iResult=-EEXIST; +722 } +723 } else { +724 iResult=-EINVAL; +725 } +726 return iResult; +727 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!StartRun@{StartRun}} +\index{StartRun@{StartRun}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Start\-Run ()}\label{classAliHLTTask_a18} + + +Prepare the task for event processing. The method initializes the Data Buffer and calls the {\bf Ali\-HLTComponent::Init}{\rm (p.\,\pageref{classAliHLTComponent_a4})} method of the component.\par + The {\bf Process\-Task}{\rm (p.\,\pageref{classAliHLTTask_a20})} method can be called an arbitrary number of times as soon as the task is in {\em running\/} mode. + +Definition at line 735 of file Ali\-HLTConfiguration.cxx. + +References f\-Block\-Data\-Array\-Size, f\-List\-Dependencies, f\-List\-Targets, fp\-Block\-Data\-Array, fp\-Data\-Buffer, Get\-Component(), Get\-Name(), Get\-Nof\-Matching\-Data\-Types(), HLTDebug, HLTError, HLTFatal, HLTWarning, and Ali\-HLTData\-Buffer::Set\-Consumer(). + +Referenced by Ali\-HLTSystem::Start\-Tasks(). + +\footnotesize\begin{verbatim}736 { +737 // see header file for function documentation +738 int iResult=0; +739 int iNofInputDataBlocks=0; +740 AliHLTComponent* pComponent=GetComponent(); +741 if (pComponent) { +742 // determine the number of input data blocks provided from the source tasks +743 TObjLink* lnk=fListDependencies.FirstLink(); +744 while (lnk && iResult>=0) { +745 AliHLTTask* pSrcTask=(AliHLTTask*)lnk->GetObject(); +746 if (pSrcTask) { +747 if ((iResult=pSrcTask->GetNofMatchingDataTypes(this))>0) { +748 iNofInputDataBlocks+=iResult; +749 } else if (iResult==0) { +750 HLTWarning("source task %s (%p) does not provide any matching data type for task %s (%p)", pSrcTask->GetName(), pSrcTask, GetName(), this); +751 } else { +752 HLTError("task %s (%p): error getting matching data types for source task %s (%p)", GetName(), this, pSrcTask->GetName(), pSrcTask); +753 iResult=-EFAULT; +754 } +755 } +756 lnk=lnk->Next(); +757 } +758 if (iResult>=0) { +759 if (fpBlockDataArray) { +760 HLTWarning("block data array for task %s (%p) was not cleaned", GetName(), this); +761 delete [] fpBlockDataArray; +762 fpBlockDataArray=NULL; +763 fBlockDataArraySize=0; +764 } +765 +766 // component init +767 // the initialization of the component is done by the ComponentHandler after creation +768 // of the component. +769 //iResult=Init( AliHLTComponentEnvironment* environ, void* environ_param, int argc, const char** argv ); +770 +771 // allocate internal task variables for bookkeeping aso. +772 // we allocate the BlockData array with at least one member +773 if (iNofInputDataBlocks==0) iNofInputDataBlocks=1; +774 fpBlockDataArray=new AliHLTComponentBlockData[iNofInputDataBlocks]; +775 if (fpBlockDataArray) { +776 fBlockDataArraySize=iNofInputDataBlocks; +777 } else { +778 HLTError("memory allocation failed"); +779 iResult=-ENOMEM; +780 } +781 +782 // allocate the data buffer, which controls the output buffer and subscriptions +783 if (iResult>=0) { +784 fpDataBuffer=new AliHLTDataBuffer; +785 if (fpDataBuffer!=NULL) { +786 HLTDebug("created data buffer %p for task %s (%p)", fpDataBuffer, GetName(), this); +787 TObjLink* lnk=fListTargets.FirstLink(); +788 while (lnk && iResult>=0) { +789 AliHLTTask* pTgtTask=(AliHLTTask*)lnk->GetObject(); +790 if (pTgtTask) { +791 if ((iResult=fpDataBuffer->SetConsumer(pTgtTask->GetComponent()))>=0) { +792 } +793 } else { +794 break; +795 iResult=-EFAULT; +796 } +797 lnk=lnk->Next(); +798 } +799 } else { +800 HLTFatal("can not create data buffer object, memory allocation failed"); +801 iResult=-ENOMEM; +802 } +803 } +804 } +805 } else { +806 HLTError("task %s (%p) does not have a component", GetName(), this); +807 iResult=-EFAULT; +808 } +809 return iResult; +810 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!Subscribe@{Subscribe}} +\index{Subscribe@{Subscribe}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Subscribe (const {\bf Ali\-HLTTask} $\ast$ {\em p\-Consumer\-Task}, {\bf Ali\-HLTComponent\-Block\-Data} $\ast$ {\em array\-Block\-Desc}, int {\em i\-Array\-Size})}\label{classAliHLTTask_a23} + + +Subscribe to the data of a source task. The function prepares the block descriptors for subsequent use with the {\bf Ali\-HLTComponent::Process\-Event}{\rm (p.\,\pageref{classAliHLTComponent_a6})} method, the method prepares all block descriptors which match the input data type of the consumer the function returns the number of blocks which would be prepared in case the target array is big enough. \begin{Desc} +\item[Parameters:] +\begin{description} +\item[{\em p\-Consumer\-Task}]the task which subscribes to the data \item[{\em array\-Block\-Desc}]pointer to block descriptor to be filled \item[{\em i\-Array\-Size}]size of the block descriptor array \end{description} +\end{Desc} +\begin{Desc} +\item[Returns:]number of matching data blocks, negative error code if failed \end{Desc} + + +Definition at line 999 of file Ali\-HLTConfiguration.cxx. + +References fp\-Data\-Buffer, Get\-Component(), HLTFatal, and Ali\-HLTData\-Buffer::Subscribe(). + +Referenced by Process\-Task(). + +\footnotesize\begin{verbatim}1000 { +1001 // see header file for function documentation +1002 int iResult=0; +1003 if (pConsumerTask) { +1004 if (fpDataBuffer) { +1005 iResult=fpDataBuffer->Subscribe(pConsumerTask->GetComponent(), pBlockDesc, iArraySize); +1006 } else { +1007 HLTFatal("internal data buffer missing"); +1008 iResult=-EFAULT; +1009 } +1010 } else { +1011 iResult=-EINVAL; +1012 } +1013 return iResult; +1014 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!UnsetDependency@{UnsetDependency}} +\index{UnsetDependency@{UnsetDependency}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Unset\-Dependency ({\bf Ali\-HLTTask} $\ast$ {\em p\-Dep})}\label{classAliHLTTask_a12} + + +Clear a dependency. The ROOT TList touches the object which is in the list, even though it shouldn't care about. Thats why all lists have to be cleared before objects are deleted. + +Definition at line 657 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Dependencies, fp\-Configuration, and Ali\-HLTConfiguration::Invalidate\-Sources(). + +Referenced by $\sim$Ali\-HLTTask(). + +\footnotesize\begin{verbatim}658 { +659 fListDependencies.Remove(pDep); +660 if (fpConfiguration) { +661 fpConfiguration->InvalidateSources(); +662 } +663 return 0; +664 } +\end{verbatim}\normalsize + + +\index{AliHLTTask@{Ali\-HLTTask}!UnsetTarget@{UnsetTarget}} +\index{UnsetTarget@{UnsetTarget}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTTask::Unset\-Target ({\bf Ali\-HLTTask} $\ast$ {\em p\-Target})}\label{classAliHLTTask_a17} + + +Clear a target. The ROOT TList touches the object which is in the list, even though it shouldn't care about. Thats why all lists have to be cleared before objects are deleted. + +Definition at line 729 of file Ali\-HLTConfiguration.cxx. + +References f\-List\-Targets. + +Referenced by $\sim$Ali\-HLTTask(). + +\footnotesize\begin{verbatim}730 { +731 fListTargets.Remove(pTarget); +732 return 0; +733 } +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTTask@{Ali\-HLTTask}!fBlockDataArraySize@{fBlockDataArraySize}} +\index{fBlockDataArraySize@{fBlockDataArraySize}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf Ali\-HLTTask::f\-Block\-Data\-Array\-Size}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTTask_r6} + + +transient + +size of the block data array + +Definition at line 290 of file Ali\-HLTTask.h. + +Referenced by End\-Run(), Process\-Task(), and Start\-Run().\index{AliHLTTask@{Ali\-HLTTask}!fListDependencies@{fListDependencies}} +\index{fListDependencies@{fListDependencies}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TList {\bf Ali\-HLTTask::f\-List\-Dependencies}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTTask_r4} + + +the list of sources (tasks upon which the current one depends) + +Definition at line 281 of file Ali\-HLTTask.h. + +Referenced by Find\-Dependency(), Follow\-Dependency(), Get\-Nof\-Sources(), Process\-Task(), Set\-Dependency(), Start\-Run(), Unset\-Dependency(), and $\sim$Ali\-HLTTask().\index{AliHLTTask@{Ali\-HLTTask}!fListTargets@{fListTargets}} +\index{fListTargets@{fListTargets}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}TList {\bf Ali\-HLTTask::f\-List\-Targets}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTTask_r3} + + +transient + +the list of targets (tasks which depend upon the current one) + +Definition at line 279 of file Ali\-HLTTask.h. + +Referenced by Find\-Target(), Print\-Status(), Set\-Target(), Start\-Run(), Unset\-Target(), and $\sim$Ali\-HLTTask().\index{AliHLTTask@{Ali\-HLTTask}!fpBlockDataArray@{fpBlockDataArray}} +\index{fpBlockDataArray@{fpBlockDataArray}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Block\-Data}$\ast$ {\bf Ali\-HLTTask::fp\-Block\-Data\-Array}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTTask_r5} + + +block data array to be passed as argument to the {\bf Ali\-HLTComponent::Process\-Event}{\rm (p.\,\pageref{classAliHLTComponent_a6})} method. Filled through subscription to source tasks ({\bf Subscribe}{\rm (p.\,\pageref{classAliHLTTask_a23})}). + +Definition at line 288 of file Ali\-HLTTask.h. + +Referenced by End\-Run(), Process\-Task(), Start\-Run(), and $\sim$Ali\-HLTTask().\index{AliHLTTask@{Ali\-HLTTask}!fpComponent@{fpComponent}} +\index{fpComponent@{fpComponent}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent}$\ast$ {\bf Ali\-HLTTask::fp\-Component}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTTask_r1} + + +transient + +the component described by this task (created and deleted internally) + +Definition at line 275 of file Ali\-HLTTask.h. + +Referenced by Deinit(), Init(), Process\-Task(), and $\sim$Ali\-HLTTask().\index{AliHLTTask@{Ali\-HLTTask}!fpConfiguration@{fpConfiguration}} +\index{fpConfiguration@{fpConfiguration}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTConfiguration}$\ast$ {\bf Ali\-HLTTask::fp\-Configuration}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTTask_r0} + + +the configuration descriptor (external pointer) + +Definition at line 273 of file Ali\-HLTTask.h. + +Referenced by Check\-Dependencies(), Depends(), Get\-Name(), Init(), Print\-Dependency\-Tree(), Print\-Status(), and Unset\-Dependency().\index{AliHLTTask@{Ali\-HLTTask}!fpDataBuffer@{fpDataBuffer}} +\index{fpDataBuffer@{fpDataBuffer}!AliHLTTask@{Ali\-HLTTask}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTData\-Buffer}$\ast$ {\bf Ali\-HLTTask::fp\-Data\-Buffer}\hspace{0.3cm}{\tt [private]}}\label{classAliHLTTask_r2} + + +transient + +the data buffer for the component processing + +Definition at line 277 of file Ali\-HLTTask.h. + +Referenced by End\-Run(), Get\-Nof\-Matching\-Data\-Blocks(), Process\-Task(), Release(), Start\-Run(), and Subscribe(). + +The documentation for this class was generated from the following files:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTTask.h}\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTConfiguration.cxx}\end{CompactItemize} diff --git a/HLT/PHOS/latex/dir_000000.tex b/HLT/PHOS/latex/dir_000000.tex new file mode 100644 index 00000000000..a0dcd923fa5 --- /dev/null +++ b/HLT/PHOS/latex/dir_000000.tex @@ -0,0 +1,155 @@ +\section{/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/ Directory Reference} +\label{dir_000000}\index{/home/perthi/cern/aliroot/AliRoot_head020507/HLT/BASE/ Directory Reference@{/home/perthi/cern/aliroot/AliRoot\_\-head020507/HLT/BASE/ Directory Reference}} + + +\subsection*{Files} +\begin{CompactItemize} +\item +file {\bf Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx} +\begin{CompactList}\small\item\em Pure C interface to the Ali\-Root HLT component handler. \item\end{CompactList} + +\item +file {\bf Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h} +\begin{CompactList}\small\item\em Pure C interface to the Ali\-Root HLT component handler. \item\end{CompactList} + +\item +file {\bf Ali\-HLTComponent.cxx} +\begin{CompactList}\small\item\em Base class implementation for HLT components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTComponent.h} +\begin{CompactList}\small\item\em Base class declaration for HLT components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTComponent\-Handler.cxx} +\begin{CompactList}\small\item\em Implementation of HLT component handler. \item\end{CompactList} + +\item +file {\bf Ali\-HLTComponent\-Handler.h} +\begin{CompactList}\small\item\em Global handling of HLT processing components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTConfiguration.cxx} +\begin{CompactList}\small\item\em Implementation of HLT configuration handler. \item\end{CompactList} + +\item +file {\bf Ali\-HLTConfiguration.h} +\begin{CompactList}\small\item\em Base class and handling of HLT configurations. \item\end{CompactList} + +\item +file {\bf Ali\-HLTConfiguration\-Handler.h} +\begin{CompactList}\small\item\em Global handling of HLT configurations. \item\end{CompactList} + +\item +file {\bf Ali\-HLTConsumer\-Descriptor.cxx} +\begin{CompactList}\small\item\em Helper class to describe a consumer component. \item\end{CompactList} + +\item +file {\bf Ali\-HLTConsumer\-Descriptor.h} +\begin{CompactList}\small\item\em Helper class to describe a consumer component. \item\end{CompactList} + +\item +file {\bf Ali\-HLTData\-Buffer.cxx} +\begin{CompactList}\small\item\em Handling of Data Buffers for HLT components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTData\-Buffer.h} +\begin{CompactList}\small\item\em Handling of Data Buffers for HLT components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTData\-Sink.cxx} +\begin{CompactList}\small\item\em Base class implementation for HLT data source components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTData\-Sink.h} +\begin{CompactList}\small\item\em Base class declaration for HLT data sink components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTData\-Source.cxx} +\begin{CompactList}\small\item\em Base class implementation for HLT data source components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTData\-Source.h} +\begin{CompactList}\small\item\em Base class declaration for HLT data source components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTData\-Types.h} +\begin{CompactList}\small\item\em Data type declaration for the HLT module. \item\end{CompactList} + +\item +file {\bf Ali\-HLTDefinitions.h} +\begin{CompactList}\small\item\em Definitions for the HLT module. \item\end{CompactList} + +\item +file {\bf Ali\-HLTLogging.cxx} +\begin{CompactList}\small\item\em Implementation of HLT logging primitives. \item\end{CompactList} + +\item +file {\bf Ali\-HLTLogging.h} +\begin{CompactList}\small\item\em HLT module logging primitives. \item\end{CompactList} + +\item +file {\bf Ali\-HLTMessage.cxx} +\begin{CompactList}\small\item\em Serialization of Root objects in the ALICE HLT. \item\end{CompactList} + +\item +file {\bf Ali\-HLTMessage.h} +\begin{CompactList}\small\item\em Serialization of Root objects in the ALICE HLT. \item\end{CompactList} + +\item +file {\bf Ali\-HLTModule\-Agent.cxx} +\begin{CompactList}\small\item\em Agent helper class for component libraries. \item\end{CompactList} + +\item +file {\bf Ali\-HLTModule\-Agent.h} +\begin{CompactList}\small\item\em Agent helper class for component libraries. \item\end{CompactList} + +\item +file {\bf Ali\-HLTOffline\-Data\-Sink.cxx} +\begin{CompactList}\small\item\em Ali\-Root data sink component base class. \item\end{CompactList} + +\item +file {\bf Ali\-HLTOffline\-Data\-Sink.h} +\begin{CompactList}\small\item\em Ali\-Root data sink component base class. \item\end{CompactList} + +\item +file {\bf Ali\-HLTOffline\-Data\-Source.cxx} +\begin{CompactList}\small\item\em Ali\-Root data source component base class. \item\end{CompactList} + +\item +file {\bf Ali\-HLTOffline\-Data\-Source.h} +\begin{CompactList}\small\item\em Ali\-Root data sink component base class. \item\end{CompactList} + +\item +file {\bf Ali\-HLTOffline\-Interface.cxx} +\begin{CompactList}\small\item\em the HLT interface to Ali\-Root \item\end{CompactList} + +\item +file {\bf Ali\-HLTOffline\-Interface.h} +\begin{CompactList}\small\item\em the HLT interface to Ali\-Root \item\end{CompactList} + +\item +file {\bf Ali\-HLTProcessor.cxx} +\begin{CompactList}\small\item\em Base class implementation for HLT analysis components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTProcessor.h} +\begin{CompactList}\small\item\em Base class declaration for HLT analysis components. \item\end{CompactList} + +\item +file {\bf Ali\-HLTStd\-Includes.h} +\item +file {\bf Ali\-HLTSystem.cxx} +\begin{CompactList}\small\item\em Implementation of HLT module management. \item\end{CompactList} + +\item +file {\bf Ali\-HLTSystem.h} +\begin{CompactList}\small\item\em Global HLT module management and Ali\-Root integration. \item\end{CompactList} + +\item +file {\bf Ali\-HLTTask.h} +\begin{CompactList}\small\item\em base class for HLT tasks \item\end{CompactList} + +\item +file {\bf HLTbase\-Link\-Def.h} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/dir_000001.tex b/HLT/PHOS/latex/dir_000001.tex new file mode 100644 index 00000000000..3a09d8ab44f --- /dev/null +++ b/HLT/PHOS/latex/dir_000001.tex @@ -0,0 +1,17 @@ +\section{Online\-Display/ Directory Reference} +\label{dir_000001}\index{OnlineDisplay/ Directory Reference@{OnlineDisplay/ Directory Reference}} + + +\subsection*{Files} +\begin{CompactItemize} +\item +file {\bf Ali\-HLTPHOSGet\-Event\-Button.cxx} +\item +file {\bf Ali\-HLTPHOSGet\-Event\-Button.h} +\item +file {\bf Ali\-HLTPHOSOnline\-Display.cxx} +\item +file {\bf Ali\-HLTPHOSOnline\-Display.h} +\item +file {\bf main.cxx} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/dirs.tex b/HLT/PHOS/latex/dirs.tex new file mode 100644 index 00000000000..ec3b52fc8ef --- /dev/null +++ b/HLT/PHOS/latex/dirs.tex @@ -0,0 +1,5 @@ +\section{Ali\-HLTPHOS Directories} +This directory hierarchy is sorted roughly, but not completely, alphabetically:\begin{CompactList} +\item \contentsline{section}{BASE}{\pageref{dir_000000}}{} +\item \contentsline{section}{Online\-Display}{\pageref{dir_000001}}{} +\end{CompactList} diff --git a/HLT/PHOS/latex/group__alihlt__component.tex b/HLT/PHOS/latex/group__alihlt__component.tex new file mode 100644 index 00000000000..4e0ad0ac98e --- /dev/null +++ b/HLT/PHOS/latex/group__alihlt__component.tex @@ -0,0 +1,20 @@ +\section{Component handling of the HLT module} +\label{group__alihlt__component}\index{Component handling of the HLT module@{Component handling of the HLT module}} + + +\subsection{Detailed Description} +This section describes the the component handling for the HLT module. + +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTComponent} +\item +class {\bf Ali\-HLTComponent\-Handler} +\item +class {\bf Ali\-HLTData\-Sink} +\item +class {\bf Ali\-HLTData\-Source} +\item +class {\bf Ali\-HLTProcessor} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/group__alihlt__system.tex b/HLT/PHOS/latex/group__alihlt__system.tex new file mode 100644 index 00000000000..7c54e692636 --- /dev/null +++ b/HLT/PHOS/latex/group__alihlt__system.tex @@ -0,0 +1,30 @@ +\section{HLT integration into Ali\-Root} +\label{group__alihlt__system}\index{HLT integration into AliRoot@{HLT integration into AliRoot}} + + +\subsection{Detailed Description} +This section describes the HLT integration into Ali\-Root. + +\subsection*{Classes} +\begin{CompactItemize} +\item +class {\bf Ali\-HLTConfiguration} +\begin{CompactList}\small\item\em Description of HLT processing chains. \item\end{CompactList}\item +class {\bf Ali\-HLTConfiguration\-Handler} +\begin{CompactList}\small\item\em Global Handling of HLT configurations. \item\end{CompactList}\item +class {\bf Ali\-HLTConsumer\-Descriptor} +\begin{CompactList}\small\item\em Helper class to describe a consumer component. \item\end{CompactList}\item +class {\bf Ali\-HLTData\-Buffer} +\begin{CompactList}\small\item\em Handling of data buffers for the HLT. \item\end{CompactList}\item +class {\bf Ali\-HLTModule\-Agent} +\begin{CompactList}\small\item\em Agent helper class for HLT sub modules, e.g. PHOS, TPC, Trigger. \item\end{CompactList}\item +class {\bf Ali\-HLTOffline\-Data\-Sink} +\item +class {\bf Ali\-HLTOffline\-Data\-Source} +\item +class {\bf Ali\-HLTOffline\-Interface} +\item +class {\bf Ali\-HLTSystem} +\item +class {\bf Ali\-HLTTask} +\end{CompactItemize} diff --git a/HLT/PHOS/latex/group__alihlt__wrapper__interface.tex b/HLT/PHOS/latex/group__alihlt__wrapper__interface.tex new file mode 100644 index 00000000000..f3f7b429f3b --- /dev/null +++ b/HLT/PHOS/latex/group__alihlt__wrapper__interface.tex @@ -0,0 +1,256 @@ +\section{The HLT wrapper interface} +\label{group__alihlt__wrapper__interface}\index{The HLT wrapper interface@{The HLT wrapper interface}} + + +\subsection{Detailed Description} +The wrapper interface is a pure C interface which allows to use the analysis components in external applications. The interface is utilized to bind the analysis code to the Pub\-Sub framework. + + + +\subsection*{Typedefs} +\begin{CompactItemize} +\item +typedef void $\ast$ {\bf Ali\-HLTComponent\-Handle} +\end{CompactItemize} +\subsection*{Functions} +\begin{CompactItemize} +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Init\-System} ({\bf Ali\-HLTComponent\-Environment} $\ast$environ) +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Deinit\-System} () +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Load\-Library} (const char $\ast$library\-Path) +\item +int {\bf Ali\-HLT\_\-C\_\-Component\_\-Unload\-Library} (const char $\ast$library\-Path) +\item +int {\bf Ali\-HLT\_\-C\_\-Create\-Component} (const char $\ast$component\-Type, void $\ast$environ\_\-param, int argc, const char $\ast$$\ast$argv, {\bf Ali\-HLTComponent\-Handle} $\ast$handle) +\item +void {\bf Ali\-HLT\_\-C\_\-Destroy\-Component} ({\bf Ali\-HLTComponent\-Handle}) +\item +int {\bf Ali\-HLT\_\-C\_\-Process\-Event} ({\bf Ali\-HLTComponent\-Handle} handle, const {\bf Ali\-HLTComponent\_\-Event\-Data} $\ast$evt\-Data, const {\bf Ali\-HLTComponent\_\-Block\-Data} $\ast$blocks, {\bf Ali\-HLTComponent\_\-Trigger\-Data} $\ast$trig\-Data, {\bf Ali\-HLTUInt8\_\-t} $\ast$output\-Ptr, {\bf Ali\-HLTUInt32\_\-t} $\ast$size, {\bf Ali\-HLTUInt32\_\-t} $\ast$output\-Block\-Cnt, {\bf Ali\-HLTComponent\_\-Block\-Data} $\ast$$\ast$output\-Blocks, {\bf Ali\-HLTComponent\_\-Event\-Done\-Data} $\ast$$\ast$edd) +\item +int {\bf Ali\-HLT\_\-C\_\-Get\-Output\-Data\-Type} ({\bf Ali\-HLTComponent\-Handle}, {\bf Ali\-HLTComponent\_\-Data\-Type} $\ast$data\-Type) +\item +int {\bf Ali\-HLT\_\-C\_\-Get\-Output\-Size} ({\bf Ali\-HLTComponent\-Handle}, unsigned long $\ast$const\-Base, double $\ast$input\-Multiplier) +\end{CompactItemize} +\subsection*{Variables} +\begin{CompactItemize} +\item +const {\bf Ali\-HLTComponent\-Handle} {\bf k\-Empty\-HLTComponent\-Handle} = 0 +\end{CompactItemize} + + +\subsection{Typedef Documentation} +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLTComponentHandle@{AliHLTComponentHandle}} +\index{AliHLTComponentHandle@{AliHLTComponentHandle}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef void$\ast$ {\bf Ali\-HLTComponent\-Handle}}\label{group__alihlt__wrapper__interface_ga0} + + + + +Definition at line 49 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h. + +\subsection{Function Documentation} +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_Component_DeinitSystem@{AliHLT\_\-C\_\-Component\_\-DeinitSystem}} +\index{AliHLT_C_Component_DeinitSystem@{AliHLT\_\-C\_\-Component\_\-DeinitSystem}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLT\_\-C\_\-Component\_\-Deinit\-System ()}\label{group__alihlt__wrapper__interface_ga3} + + + + +Definition at line 51 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References g\-Component\-Handler\_\-C. + +\footnotesize\begin{verbatim}52 { +53 if ( gComponentHandler_C ) +54 { +55 delete gComponentHandler_C; +56 gComponentHandler_C = NULL; +57 } +58 return 0; +59 } +\end{verbatim}\normalsize + + +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_Component_InitSystem@{AliHLT\_\-C\_\-Component\_\-InitSystem}} +\index{AliHLT_C_Component_InitSystem@{AliHLT\_\-C\_\-Component\_\-InitSystem}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLT\_\-C\_\-Component\_\-Init\-System ({\bf Ali\-HLTComponent\-Environment} $\ast$ {\em environ})}\label{group__alihlt__wrapper__interface_ga2} + + + + +Definition at line 37 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References Ali\-HLTComponent\-Handler::Announce\-Version(), g\-Component\-Handler\_\-C, and Ali\-HLTLogging::Init\-Ali\-Log\-Trap(). + +\footnotesize\begin{verbatim}38 { +39 if ( gComponentHandler_C ) +40 { +41 return EINPROGRESS; +42 } +43 gComponentHandler_C = new AliHLTComponentHandler(environ); +44 if ( !gComponentHandler_C ) +45 return EFAULT; +46 gComponentHandler_C->InitAliLogTrap(gComponentHandler_C); +47 gComponentHandler_C->AnnounceVersion(); +48 return 0; +49 } +\end{verbatim}\normalsize + + +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_Component_LoadLibrary@{AliHLT\_\-C\_\-Component\_\-LoadLibrary}} +\index{AliHLT_C_Component_LoadLibrary@{AliHLT\_\-C\_\-Component\_\-LoadLibrary}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLT\_\-C\_\-Component\_\-Load\-Library (const char $\ast$ {\em library\-Path})}\label{group__alihlt__wrapper__interface_ga4} + + + + +Definition at line 61 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References g\-Component\-Handler\_\-C, and Ali\-HLTComponent\-Handler::Load\-Library(). + +\footnotesize\begin{verbatim}62 { +63 if ( !gComponentHandler_C ) +64 return ENXIO; +65 return gComponentHandler_C->LoadLibrary( libraryPath ); +66 } +\end{verbatim}\normalsize + + +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_Component_UnloadLibrary@{AliHLT\_\-C\_\-Component\_\-UnloadLibrary}} +\index{AliHLT_C_Component_UnloadLibrary@{AliHLT\_\-C\_\-Component\_\-UnloadLibrary}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLT\_\-C\_\-Component\_\-Unload\-Library (const char $\ast$ {\em library\-Path})}\label{group__alihlt__wrapper__interface_ga5} + + + + +Definition at line 68 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References g\-Component\-Handler\_\-C, and Ali\-HLTComponent\-Handler::Unload\-Library(). + +\footnotesize\begin{verbatim}69 { +70 if ( !gComponentHandler_C ) +71 return ENXIO; +72 return gComponentHandler_C->UnloadLibrary( libraryPath ); +73 } +\end{verbatim}\normalsize + + +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_CreateComponent@{AliHLT\_\-C\_\-CreateComponent}} +\index{AliHLT_C_CreateComponent@{AliHLT\_\-C\_\-CreateComponent}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLT\_\-C\_\-Create\-Component (const char $\ast$ {\em component\-Type}, void $\ast$ {\em environ\_\-param}, int {\em argc}, const char $\ast$$\ast$ {\em argv}, {\bf Ali\-HLTComponent\-Handle} $\ast$ {\em handle})}\label{group__alihlt__wrapper__interface_ga6} + + + + +Definition at line 75 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References Ali\-HLTComponent\-Handler::Create\-Component(), and g\-Component\-Handler\_\-C. + +\footnotesize\begin{verbatim}76 { +77 if ( !gComponentHandler_C ) +78 return ENXIO; +79 AliHLTComponent* comp; +80 int ret = gComponentHandler_C->CreateComponent( componentType, environ_param, argc, argv, comp ); +81 *handle = reinterpret_cast( comp ); +82 return ret; +83 } +\end{verbatim}\normalsize + + +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_DestroyComponent@{AliHLT\_\-C\_\-DestroyComponent}} +\index{AliHLT_C_DestroyComponent@{AliHLT\_\-C\_\-DestroyComponent}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLT\_\-C\_\-Destroy\-Component ({\bf Ali\-HLTComponent\-Handle})}\label{group__alihlt__wrapper__interface_ga7} + + + + +Definition at line 85 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References Ali\-HLTComponent::Deinit(). + +\footnotesize\begin{verbatim}86 { +87 if ( !handle ) +88 return; +89 +90 AliHLTComponent* pComp=reinterpret_cast( handle ); +91 pComp->Deinit(); +92 delete pComp; +93 } +\end{verbatim}\normalsize + + +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_GetOutputDataType@{AliHLT\_\-C\_\-GetOutputDataType}} +\index{AliHLT_C_GetOutputDataType@{AliHLT\_\-C\_\-GetOutputDataType}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLT\_\-C\_\-Get\-Output\-Data\-Type ({\bf Ali\-HLTComponent\-Handle}, {\bf Ali\-HLTComponent\_\-Data\-Type} $\ast$ {\em data\-Type})}\label{group__alihlt__wrapper__interface_ga9} + + + + +Definition at line 107 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References Ali\-HLTComponent\_\-Data\-Type, and Ali\-HLTComponent::Get\-Output\-Data\-Type(). + +\footnotesize\begin{verbatim}108 { +109 if ( !handle ) +110 return ENXIO; +111 AliHLTComponent* comp = reinterpret_cast( handle ); +112 *dataType = comp->GetOutputDataType(); +113 return 0; +114 } +\end{verbatim}\normalsize + + +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_GetOutputSize@{AliHLT\_\-C\_\-GetOutputSize}} +\index{AliHLT_C_GetOutputSize@{AliHLT\_\-C\_\-GetOutputSize}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLT\_\-C\_\-Get\-Output\-Size ({\bf Ali\-HLTComponent\-Handle}, unsigned long $\ast$ {\em const\-Base}, double $\ast$ {\em input\-Multiplier})}\label{group__alihlt__wrapper__interface_ga10} + + + + +Definition at line 116 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References Ali\-HLTComponent::Get\-Output\-Data\-Size(). + +\footnotesize\begin{verbatim}117 { +118 if ( !handle ) +119 return ENXIO; +120 AliHLTComponent* comp = reinterpret_cast( handle ); +121 comp->GetOutputDataSize( *constBase, *inputMultiplier ); +122 return 0; +123 } +\end{verbatim}\normalsize + + +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!AliHLT_C_ProcessEvent@{AliHLT\_\-C\_\-ProcessEvent}} +\index{AliHLT_C_ProcessEvent@{AliHLT\_\-C\_\-ProcessEvent}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLT\_\-C\_\-Process\-Event ({\bf Ali\-HLTComponent\-Handle} {\em handle}, const {\bf Ali\-HLTComponent\_\-Event\-Data} $\ast$ {\em evt\-Data}, const {\bf Ali\-HLTComponent\_\-Block\-Data} $\ast$ {\em blocks}, {\bf Ali\-HLTComponent\_\-Trigger\-Data} $\ast$ {\em trig\-Data}, {\bf Ali\-HLTUInt8\_\-t} $\ast$ {\em output\-Ptr}, {\bf Ali\-HLTUInt32\_\-t} $\ast$ {\em size}, {\bf Ali\-HLTUInt32\_\-t} $\ast$ {\em output\-Block\-Cnt}, {\bf Ali\-HLTComponent\_\-Block\-Data} $\ast$$\ast$ {\em output\-Blocks}, {\bf Ali\-HLTComponent\_\-Event\-Done\-Data} $\ast$$\ast$ {\em edd})}\label{group__alihlt__wrapper__interface_ga8} + + + + +Definition at line 95 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.cxx. + +References Ali\-HLTComponent\_\-Block\-Data, Ali\-HLTComponent\_\-Event\-Data, Ali\-HLTComponent\_\-Event\-Done\-Data, Ali\-HLTComponent\_\-Trigger\-Data, and Ali\-HLTComponent::Process\-Event(). + +\footnotesize\begin{verbatim}100 { +101 if ( !handle ) +102 return ENXIO; +103 AliHLTComponent* comp = reinterpret_cast( handle ); +104 return comp->ProcessEvent( *evtData, blocks, *trigData, outputPtr, *size, *outputBlockCnt, *outputBlocks, *edd ); +105 } +\end{verbatim}\normalsize + + + + +\subsection{Variable Documentation} +\index{alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}!kEmptyHLTComponentHandle@{kEmptyHLTComponentHandle}} +\index{kEmptyHLTComponentHandle@{kEmptyHLTComponentHandle}!alihlt_wrapper_interface@{alihlt\_\-wrapper\_\-interface}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Ali\-HLTComponent\-Handle} {\bf k\-Empty\-HLTComponent\-Handle} = 0}\label{group__alihlt__wrapper__interface_ga1} + + + + +Definition at line 55 of file Ali\-HLT\_\-C\_\-Component\_\-Wrapper\-Interface.h. \ No newline at end of file diff --git a/HLT/PHOS/latex/main_8cxx.tex b/HLT/PHOS/latex/main_8cxx.tex new file mode 100644 index 00000000000..f32fca82b58 --- /dev/null +++ b/HLT/PHOS/latex/main_8cxx.tex @@ -0,0 +1,61 @@ +\section{Online\-Display/main.cxx File Reference} +\label{main_8cxx}\index{OnlineDisplay/main.cxx@{OnlineDisplay/main.cxx}} + + +{\tt \#include \char`\"{}Ali\-HLTPHOSOnline\-Display.h\char`\"{}}\par +{\tt \#include $<$stdexcept$>$}\par +{\tt \#include $<$TSystem.h$>$}\par +{\tt \#include $<$TApplication.h$>$}\par +{\tt \#include \char`\"{}Rtypes.h\char`\"{}}\par +{\tt \#include $<$TString.h$>$}\par +\subsection*{Functions} +\begin{CompactItemize} +\item +int {\bf main} (int argc, char $\ast$$\ast$argv) +\end{CompactItemize} + + +\subsection{Function Documentation} +\index{main.cxx@{main.cxx}!main@{main}} +\index{main@{main}!main.cxx@{main.cxx}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int main (int {\em argc}, char $\ast$$\ast$ {\em argv})}\label{main_8cxx_a0} + + + + +Definition at line 30 of file main.cxx. + +References Ali\-HLTPHOSOnline\-Display::Instance(), and Ali\-HLTPHOSOnline\-Display::Scan\-Arguments(). + +\footnotesize\begin{verbatim}31 { +32 +33 // AliHLTPHOSOnlineDisplay* onlineDisplay = new AliHLTPHOSOnlineDisplay("alice3", 42001); +34 +35 if(!AliHLTPHOSOnlineDisplay::ScanArguments(argc, argv)) +36 { +37 +38 try +39 { +40 TApplication app("app", 0, 0); +41 // AliHLTPHOSOnlineDisplay* phosDisplayPtr = new AliHLTPHOSOnlineDisplay(); +42 // AliHLTPHOSOnlineDisplay* phosDisplayPtr = AliHLTPHOSOnlineDisplay::Instance(); +43 AliHLTPHOSOnlineDisplay::Instance(); +44 app.Run(); +45 } +46 +47 catch (std::exception& e) +48 { +49 // std::cerr << e.what() << std::endl; +50 return 1; +51 } +52 return 0; +53 } +54 else +55 { +56 return -1; +57 } +58 +59 } +\end{verbatim}\normalsize + + diff --git a/HLT/PHOS/latex/modules.tex b/HLT/PHOS/latex/modules.tex new file mode 100644 index 00000000000..feee37be045 --- /dev/null +++ b/HLT/PHOS/latex/modules.tex @@ -0,0 +1,6 @@ +\section{Ali\-HLTPHOS Modules} +Here is a list of all modules:\begin{CompactList} +\item \contentsline{section}{The HLT wrapper interface}{\pageref{group__alihlt__wrapper__interface}}{} +\item \contentsline{section}{Component handling of the HLT module}{\pageref{group__alihlt__component}}{} +\item \contentsline{section}{HLT integration into Ali\-Root}{\pageref{group__alihlt__system}}{} +\end{CompactList} diff --git a/HLT/PHOS/latex/namespaces.tex b/HLT/PHOS/latex/namespaces.tex new file mode 100644 index 00000000000..422813a4ade --- /dev/null +++ b/HLT/PHOS/latex/namespaces.tex @@ -0,0 +1,4 @@ +\section{Ali\-HLTPHOS Namespace List} +Here is a list of all namespaces with brief descriptions:\begin{CompactList} +\item\contentsline{section}{{\bf std} }{\pageref{namespacestd}}{} +\end{CompactList} diff --git a/HLT/PHOS/latex/namespacestd.tex b/HLT/PHOS/latex/namespacestd.tex new file mode 100644 index 00000000000..2cd5b3b61dd --- /dev/null +++ b/HLT/PHOS/latex/namespacestd.tex @@ -0,0 +1,6 @@ +\section{std Namespace Reference} +\label{namespacestd}\index{std@{std}} + + + + diff --git a/HLT/PHOS/latex/structAliHLTComponentBlockData.tex b/HLT/PHOS/latex/structAliHLTComponentBlockData.tex new file mode 100644 index 00000000000..c1727c5d091 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTComponentBlockData.tex @@ -0,0 +1,92 @@ +\section{Ali\-HLTComponent\-Block\-Data Struct Reference} +\label{structAliHLTComponentBlockData}\index{AliHLTComponentBlockData@{AliHLTComponentBlockData}} +{\tt \#include $<$Ali\-HLTData\-Types.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Struct\-Size} +\item +{\bf Ali\-HLTComponent\-Shm\-Data} {\bf f\-Shm\-Key} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Offset} +\item +void $\ast$ {\bf f\-Ptr} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Size} +\item +{\bf Ali\-HLTComponent\-Data\-Type} {\bf f\-Data\-Type} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Specification} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}!fDataType@{fDataType}} +\index{fDataType@{fDataType}!AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTComponent\-Block\-Data::f\-Data\-Type}}\label{structAliHLTComponentBlockData_o5} + + + + +Definition at line 74 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), Ali\-HLTComponent::Fill\-Block\-Data(), Ali\-HLTComponent::Find\-Input\-Block(), Ali\-HLTComponent::Get\-Data\-Type(), Ali\-HLTComponent::Insert\-Output\-Block(), Ali\-HLTComponent::Make\-Output\-Data\-Block\-List(), Ali\-HLTData\-Buffer::Set\-Segments(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}!fOffset@{fOffset}} +\index{fOffset@{fOffset}!AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Block\-Data::f\-Offset}}\label{structAliHLTComponentBlockData_o2} + + + + +Definition at line 71 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), Ali\-HLTComponent::Fill\-Block\-Data(), Ali\-HLTComponent::Insert\-Output\-Block(), Ali\-HLTData\-Buffer::Release(), Ali\-HLTData\-Buffer::Set\-Segments(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}!fPtr@{fPtr}} +\index{fPtr@{fPtr}!AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ {\bf Ali\-HLTComponent\-Block\-Data::f\-Ptr}}\label{structAliHLTComponentBlockData_o3} + + + + +Definition at line 72 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Create\-Input\-Object(), Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), Ali\-HLTComponent::Fill\-Block\-Data(), Ali\-HLTComponent::Insert\-Output\-Block(), Ali\-HLTData\-Buffer::Release(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}!fShmKey@{fShmKey}} +\index{fShmKey@{fShmKey}!AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Shm\-Data} {\bf Ali\-HLTComponent\-Block\-Data::f\-Shm\-Key}}\label{structAliHLTComponentBlockData_o1} + + + + +Definition at line 70 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Fill\-Block\-Data(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}!fSize@{fSize}} +\index{fSize@{fSize}!AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Block\-Data::f\-Size}}\label{structAliHLTComponentBlockData_o4} + + + + +Definition at line 73 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Create\-Input\-Object(), Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), Ali\-HLTComponent::Fill\-Block\-Data(), Ali\-HLTComponent::Insert\-Output\-Block(), Ali\-HLTTask::Process\-Task(), Ali\-HLTData\-Buffer::Release(), Ali\-HLTData\-Buffer::Set\-Segments(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}!fSpecification@{fSpecification}} +\index{fSpecification@{fSpecification}!AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Block\-Data::f\-Specification}}\label{structAliHLTComponentBlockData_o6} + + + + +Definition at line 75 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), Ali\-HLTComponent::Fill\-Block\-Data(), Ali\-HLTComponent::Get\-Specification(), Ali\-HLTComponent::Insert\-Output\-Block(), Ali\-HLTData\-Buffer::Set\-Segments(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}!fStructSize@{fStructSize}} +\index{fStructSize@{fStructSize}!AliHLTComponentBlockData@{Ali\-HLTComponent\-Block\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Block\-Data::f\-Struct\-Size}}\label{structAliHLTComponentBlockData_o0} + + + + +Definition at line 69 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Fill\-Block\-Data(), and Ali\-HLTData\-Buffer::Subscribe(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Types.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTComponentDataType.tex b/HLT/PHOS/latex/structAliHLTComponentDataType.tex new file mode 100644 index 00000000000..ce48ea9d090 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTComponentDataType.tex @@ -0,0 +1,48 @@ +\section{Ali\-HLTComponent\-Data\-Type Struct Reference} +\label{structAliHLTComponentDataType}\index{AliHLTComponentDataType@{AliHLTComponentDataType}} +{\tt \#include $<$Ali\-HLTData\-Types.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Struct\-Size} +\item +char {\bf f\-ID} [{\bf k\-Ali\-HLTComponent\-Data\-Typef\-IDsize}] +\item +char {\bf f\-Origin} [{\bf k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size}] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTComponentDataType@{Ali\-HLTComponent\-Data\-Type}!fID@{fID}} +\index{fID@{fID}!AliHLTComponentDataType@{Ali\-HLTComponent\-Data\-Type}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char {\bf Ali\-HLTComponent\-Data\-Type::f\-ID}[{\bf k\-Ali\-HLTComponent\-Data\-Typef\-IDsize}]}\label{structAliHLTComponentDataType_o1} + + + + +Definition at line 55 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Copy\-Data\-Type(), Ali\-HLTComponent::Data\-Type2Text(), Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Get\-Input\-Data\-Types(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Get\-Input\-Data\-Types(), Ali\-HLTPHOSModule\-Merger\-Component::Get\-Input\-Data\-Types(), Ali\-HLTPHOSHistogram\-Producer\-Component::Get\-Input\-Data\-Types(), Ali\-HLTPHOSFile\-Writer\-Component::Get\-Input\-Data\-Types(), Ali\-HLTPHOSDDLDecoder\-Component::Get\-Input\-Data\-Types(), Ali\-HLTPHOSFile\-Writer::Make\-Filename(), operator!=(), operator==(), Ali\-HLTComponent::Print\-Component\-Data\-Type\-Info(), Ali\-HLTComponent::Print\-Data\-Type\-Content(), and Ali\-HLTComponent::Set\-Data\-Type().\index{AliHLTComponentDataType@{Ali\-HLTComponent\-Data\-Type}!fOrigin@{fOrigin}} +\index{fOrigin@{fOrigin}!AliHLTComponentDataType@{Ali\-HLTComponent\-Data\-Type}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char {\bf Ali\-HLTComponent\-Data\-Type::f\-Origin}[{\bf k\-Ali\-HLTComponent\-Data\-Typef\-Origin\-Size}]}\label{structAliHLTComponentDataType_o2} + + + + +Definition at line 56 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Copy\-Data\-Type(), Ali\-HLTComponent::Data\-Type2Text(), Ali\-HLTPHOSFile\-Writer::Make\-Filename(), operator!=(), operator==(), Ali\-HLTComponent::Print\-Component\-Data\-Type\-Info(), Ali\-HLTComponent::Print\-Data\-Type\-Content(), and Ali\-HLTComponent::Set\-Data\-Type().\index{AliHLTComponentDataType@{Ali\-HLTComponent\-Data\-Type}!fStructSize@{fStructSize}} +\index{fStructSize@{fStructSize}!AliHLTComponentDataType@{Ali\-HLTComponent\-Data\-Type}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Data\-Type::f\-Struct\-Size}}\label{structAliHLTComponentDataType_o0} + + + + +Definition at line 54 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Print\-Component\-Data\-Type\-Info(), and Ali\-HLTComponent::Set\-Data\-Type(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Types.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTComponentEnvironment.tex b/HLT/PHOS/latex/structAliHLTComponentEnvironment.tex new file mode 100644 index 00000000000..2276136b1ec --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTComponentEnvironment.tex @@ -0,0 +1,64 @@ +\section{Ali\-HLTComponent\-Environment Struct Reference} +\label{structAliHLTComponentEnvironment}\index{AliHLTComponentEnvironment@{AliHLTComponentEnvironment}} +{\tt \#include $<$Ali\-HLTData\-Types.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Struct\-Size} +\item +void $\ast$ {\bf f\-Param} +\item +void $\ast$($\ast$ {\bf f\-Alloc\-Memory\-Func} )(void $\ast$param, unsigned long size) +\item +int($\ast$ {\bf f\-Get\-Event\-Done\-Data\-Func} )(void $\ast$param, {\bf Ali\-HLTEvent\-ID\_\-t} event\-ID, unsigned long size, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$$\ast$edd) +\item +{\bf Ali\-HLTfct\-Logging} {\bf f\-Logging\-Func} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}!fAllocMemoryFunc@{fAllocMemoryFunc}} +\index{fAllocMemoryFunc@{fAllocMemoryFunc}!AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$($\ast$ {\bf Ali\-HLTComponent\-Environment::f\-Alloc\-Memory\-Func})(void $\ast$param, unsigned long size)}\label{structAliHLTComponentEnvironment_o2} + + + + +Referenced by Ali\-HLTComponent::Alloc\-Memory(), and Class\-Imp().\index{AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}!fGetEventDoneDataFunc@{fGetEventDoneDataFunc}} +\index{fGetEventDoneDataFunc@{fGetEventDoneDataFunc}!AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int($\ast$ {\bf Ali\-HLTComponent\-Environment::f\-Get\-Event\-Done\-Data\-Func})(void $\ast$param, {\bf Ali\-HLTEvent\-ID\_\-t} event\-ID, unsigned long size, {\bf Ali\-HLTComponent\-Event\-Done\-Data} $\ast$$\ast$edd)}\label{structAliHLTComponentEnvironment_o3} + + + + +Referenced by Ali\-HLTComponent::Get\-Event\-Done\-Data().\index{AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}!fLoggingFunc@{fLoggingFunc}} +\index{fLoggingFunc@{fLoggingFunc}!AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTfct\-Logging} {\bf Ali\-HLTComponent\-Environment::f\-Logging\-Func}}\label{structAliHLTComponentEnvironment_o4} + + + + +Definition at line 103 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent\-Handler::Ali\-HLTComponent\-Handler(), Class\-Imp(), and Ali\-HLTComponent\-Handler::Set\-Environment().\index{AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}!fParam@{fParam}} +\index{fParam@{fParam}!AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ {\bf Ali\-HLTComponent\-Environment::f\-Param}}\label{structAliHLTComponentEnvironment_o1} + + + + +Definition at line 97 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Alloc\-Memory(), Ali\-HLTComponent::Get\-Event\-Done\-Data(), and Ali\-HLTComponent::Init().\index{AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}!fStructSize@{fStructSize}} +\index{fStructSize@{fStructSize}!AliHLTComponentEnvironment@{Ali\-HLTComponent\-Environment}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Environment::f\-Struct\-Size}}\label{structAliHLTComponentEnvironment_o0} + + + + +Definition at line 96 of file Ali\-HLTData\-Types.h. + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Types.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTComponentEventData.tex b/HLT/PHOS/latex/structAliHLTComponentEventData.tex new file mode 100644 index 00000000000..a75e4f03e5e --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTComponentEventData.tex @@ -0,0 +1,66 @@ +\section{Ali\-HLTComponent\-Event\-Data Struct Reference} +\label{structAliHLTComponentEventData}\index{AliHLTComponentEventData@{AliHLTComponentEventData}} +{\tt \#include $<$Ali\-HLTData\-Types.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Struct\-Size} +\item +{\bf Ali\-HLTEvent\-ID\_\-t} {\bf f\-Event\-ID} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Event\-Creation\_\-s} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Event\-Creation\_\-us} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Block\-Cnt} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}!fBlockCnt@{fBlockCnt}} +\index{fBlockCnt@{fBlockCnt}!AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Event\-Data::f\-Block\-Cnt}}\label{structAliHLTComponentEventData_o4} + + + + +Definition at line 36 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Create\-Input\-Object(), Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), Ali\-HLTData\-Source::Do\-Processing(), Ali\-HLTComponent::Find\-Input\-Block(), Ali\-HLTComponent::Get\-Data\-Type(), Ali\-HLTComponent::Get\-Input\-Object(), Ali\-HLTComponent::Get\-Number\-Of\-Input\-Blocks(), Ali\-HLTComponent::Get\-Specification(), and Ali\-HLTTask::Process\-Task().\index{AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}!fEventCreation_s@{fEventCreation\_\-s}} +\index{fEventCreation_s@{fEventCreation\_\-s}!AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Event\-Data::f\-Event\-Creation\_\-s}}\label{structAliHLTComponentEventData_o2} + + + + +Definition at line 34 of file Ali\-HLTData\-Types.h.\index{AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}!fEventCreation_us@{fEventCreation\_\-us}} +\index{fEventCreation_us@{fEventCreation\_\-us}!AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Event\-Data::f\-Event\-Creation\_\-us}}\label{structAliHLTComponentEventData_o3} + + + + +Definition at line 35 of file Ali\-HLTData\-Types.h.\index{AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}!fEventID@{fEventID}} +\index{fEventID@{fEventID}!AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTEvent\-ID\_\-t} {\bf Ali\-HLTComponent\-Event\-Data::f\-Event\-ID}}\label{structAliHLTComponentEventData_o1} + + + + +Definition at line 33 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Process\-Event(), and Ali\-HLTTask::Process\-Task().\index{AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}!fStructSize@{fStructSize}} +\index{fStructSize@{fStructSize}!AliHLTComponentEventData@{Ali\-HLTComponent\-Event\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Event\-Data::f\-Struct\-Size}}\label{structAliHLTComponentEventData_o0} + + + + +Definition at line 32 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Fill\-Event\-Data(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Types.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTComponentEventDoneData.tex b/HLT/PHOS/latex/structAliHLTComponentEventDoneData.tex new file mode 100644 index 00000000000..9d6416e1352 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTComponentEventDoneData.tex @@ -0,0 +1,42 @@ +\section{Ali\-HLTComponent\-Event\-Done\-Data Struct Reference} +\label{structAliHLTComponentEventDoneData}\index{AliHLTComponentEventDoneData@{AliHLTComponentEventDoneData}} +{\tt \#include $<$Ali\-HLTData\-Types.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Struct\-Size} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Data\-Size} +\item +void $\ast$ {\bf f\-Data} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTComponentEventDoneData@{Ali\-HLTComponent\-Event\-Done\-Data}!fData@{fData}} +\index{fData@{fData}!AliHLTComponentEventDoneData@{Ali\-HLTComponent\-Event\-Done\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ {\bf Ali\-HLTComponent\-Event\-Done\-Data::f\-Data}}\label{structAliHLTComponentEventDoneData_o2} + + + + +Definition at line 89 of file Ali\-HLTData\-Types.h.\index{AliHLTComponentEventDoneData@{Ali\-HLTComponent\-Event\-Done\-Data}!fDataSize@{fDataSize}} +\index{fDataSize@{fDataSize}!AliHLTComponentEventDoneData@{Ali\-HLTComponent\-Event\-Done\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Event\-Done\-Data::f\-Data\-Size}}\label{structAliHLTComponentEventDoneData_o1} + + + + +Definition at line 88 of file Ali\-HLTData\-Types.h.\index{AliHLTComponentEventDoneData@{Ali\-HLTComponent\-Event\-Done\-Data}!fStructSize@{fStructSize}} +\index{fStructSize@{fStructSize}!AliHLTComponentEventDoneData@{Ali\-HLTComponent\-Event\-Done\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Event\-Done\-Data::f\-Struct\-Size}}\label{structAliHLTComponentEventDoneData_o0} + + + + +Definition at line 87 of file Ali\-HLTData\-Types.h. + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Types.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTComponentHandler_1_1AliHLTLibHandle.tex b/HLT/PHOS/latex/structAliHLTComponentHandler_1_1AliHLTLibHandle.tex new file mode 100644 index 00000000000..b4c29369a0d --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTComponentHandler_1_1AliHLTLibHandle.tex @@ -0,0 +1,65 @@ +\section{Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle Struct Reference} +\label{structAliHLTComponentHandler_1_1AliHLTLibHandle}\index{AliHLTComponentHandler::AliHLTLibHandle@{AliHLTComponentHandler::AliHLTLibHandle}} + + +\subsection{Detailed Description} +Compount descriptor for component libraries + + + +Definition at line 216 of file Ali\-HLTComponent\-Handler.h.\subsection*{Public Member Functions} +\begin{CompactItemize} +\item +{\bf Ali\-HLTLib\-Handle} () +\end{CompactItemize} +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +void $\ast$ {\bf f\-Handle} +\item +void $\ast$ {\bf f\-Name} +\begin{CompactList}\small\item\em transient \item\end{CompactList}\end{CompactItemize} + + +\subsection{Constructor \& Destructor Documentation} +\index{AliHLTComponentHandler::AliHLTLibHandle@{Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle}!AliHLTLibHandle@{AliHLTLibHandle}} +\index{AliHLTLibHandle@{AliHLTLibHandle}!AliHLTComponentHandler::AliHLTLibHandle@{Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::Ali\-HLTLib\-Handle ()\hspace{0.3cm}{\tt [inline]}}\label{structAliHLTComponentHandler_1_1AliHLTLibHandle_a0} + + + + +Definition at line 217 of file Ali\-HLTComponent\-Handler.h. + +\footnotesize\begin{verbatim}217 : fHandle(NULL), fName(NULL) {} +\end{verbatim}\normalsize + + + + +\subsection{Member Data Documentation} +\index{AliHLTComponentHandler::AliHLTLibHandle@{Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle}!fHandle@{fHandle}} +\index{fHandle@{fHandle}!AliHLTComponentHandler::AliHLTLibHandle@{Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ {\bf Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::f\-Handle}}\label{structAliHLTComponentHandler_1_1AliHLTLibHandle_o0} + + +dlopen handle + +Definition at line 219 of file Ali\-HLTComponent\-Handler.h. + +Referenced by Ali\-HLTComponent\-Handler::Find\-Symbol(), Ali\-HLTComponent\-Handler::Load\-Library(), and Ali\-HLTComponent\-Handler::Unload\-Library().\index{AliHLTComponentHandler::AliHLTLibHandle@{Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle}!fName@{fName}} +\index{fName@{fName}!AliHLTComponentHandler::AliHLTLibHandle@{Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ {\bf Ali\-HLTComponent\-Handler::Ali\-HLTLib\-Handle::f\-Name}}\label{structAliHLTComponentHandler_1_1AliHLTLibHandle_o1} + + +transient + +name of the library, casted to TString$\ast$ before use + +Definition at line 221 of file Ali\-HLTComponent\-Handler.h. + +Referenced by Ali\-HLTComponent\-Handler::Find\-Symbol(), Ali\-HLTComponent\-Handler::Load\-Library(), and Ali\-HLTComponent\-Handler::Unload\-Library(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTComponent\-Handler.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTComponentShmData.tex b/HLT/PHOS/latex/structAliHLTComponentShmData.tex new file mode 100644 index 00000000000..4e59f9f9763 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTComponentShmData.tex @@ -0,0 +1,48 @@ +\section{Ali\-HLTComponent\-Shm\-Data Struct Reference} +\label{structAliHLTComponentShmData}\index{AliHLTComponentShmData@{AliHLTComponentShmData}} +{\tt \#include $<$Ali\-HLTData\-Types.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Struct\-Size} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Shm\-Type} +\item +{\bf Ali\-HLTUInt64\_\-t} {\bf f\-Shm\-ID} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTComponentShmData@{Ali\-HLTComponent\-Shm\-Data}!fShmID@{fShmID}} +\index{fShmID@{fShmID}!AliHLTComponentShmData@{Ali\-HLTComponent\-Shm\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt64\_\-t} {\bf Ali\-HLTComponent\-Shm\-Data::f\-Shm\-ID}}\label{structAliHLTComponentShmData_o2} + + + + +Definition at line 44 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Fill\-Shm\-Data(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTComponentShmData@{Ali\-HLTComponent\-Shm\-Data}!fShmType@{fShmType}} +\index{fShmType@{fShmType}!AliHLTComponentShmData@{Ali\-HLTComponent\-Shm\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Shm\-Data::f\-Shm\-Type}}\label{structAliHLTComponentShmData_o1} + + + + +Definition at line 43 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Fill\-Shm\-Data(), and Ali\-HLTData\-Buffer::Subscribe().\index{AliHLTComponentShmData@{Ali\-HLTComponent\-Shm\-Data}!fStructSize@{fStructSize}} +\index{fStructSize@{fStructSize}!AliHLTComponentShmData@{Ali\-HLTComponent\-Shm\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Shm\-Data::f\-Struct\-Size}}\label{structAliHLTComponentShmData_o0} + + + + +Definition at line 42 of file Ali\-HLTData\-Types.h. + +Referenced by Ali\-HLTComponent::Fill\-Shm\-Data(), and Ali\-HLTData\-Buffer::Subscribe(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Types.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTComponentTriggerData.tex b/HLT/PHOS/latex/structAliHLTComponentTriggerData.tex new file mode 100644 index 00000000000..5d2389fc2d9 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTComponentTriggerData.tex @@ -0,0 +1,42 @@ +\section{Ali\-HLTComponent\-Trigger\-Data Struct Reference} +\label{structAliHLTComponentTriggerData}\index{AliHLTComponentTriggerData@{AliHLTComponentTriggerData}} +{\tt \#include $<$Ali\-HLTData\-Types.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Struct\-Size} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Data\-Size} +\item +void $\ast$ {\bf f\-Data} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTComponentTriggerData@{Ali\-HLTComponent\-Trigger\-Data}!fData@{fData}} +\index{fData@{fData}!AliHLTComponentTriggerData@{Ali\-HLTComponent\-Trigger\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ {\bf Ali\-HLTComponent\-Trigger\-Data::f\-Data}}\label{structAliHLTComponentTriggerData_o2} + + + + +Definition at line 82 of file Ali\-HLTData\-Types.h.\index{AliHLTComponentTriggerData@{Ali\-HLTComponent\-Trigger\-Data}!fDataSize@{fDataSize}} +\index{fDataSize@{fDataSize}!AliHLTComponentTriggerData@{Ali\-HLTComponent\-Trigger\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Trigger\-Data::f\-Data\-Size}}\label{structAliHLTComponentTriggerData_o1} + + + + +Definition at line 81 of file Ali\-HLTData\-Types.h.\index{AliHLTComponentTriggerData@{Ali\-HLTComponent\-Trigger\-Data}!fStructSize@{fStructSize}} +\index{fStructSize@{fStructSize}!AliHLTComponentTriggerData@{Ali\-HLTComponent\-Trigger\-Data}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTComponent\-Trigger\-Data::f\-Struct\-Size}}\label{structAliHLTComponentTriggerData_o0} + + + + +Definition at line 80 of file Ali\-HLTData\-Types.h. + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +/home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTData\-Types.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSDataHeaderStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSDataHeaderStruct.tex new file mode 100644 index 00000000000..55350720b0a --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSDataHeaderStruct.tex @@ -0,0 +1,87 @@ +\section{Ali\-HLTPHOSData\-Header\-Struct Struct Reference} +\label{structAliHLTPHOSDataHeaderStruct}\index{AliHLTPHOSDataHeaderStruct@{AliHLTPHOSDataHeaderStruct}} +{\tt \#include $<$Ali\-HLTPHOSData\-Header\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Size} +\item +{\bf Ali\-HLTComponent\-Data\-Type} {\bf f\-Data\-Type} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Event\-ID} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Algorithm} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Format\-Version} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Future\-Use0} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Future\-Use1} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Future\-Use2} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}!fAlgorithm@{fAlgorithm}} +\index{fAlgorithm@{fAlgorithm}!AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSData\-Header\-Struct::f\-Algorithm}}\label{structAliHLTPHOSDataHeaderStruct_o3} + + +Wich algorithm was uses estimate cellenergies + +Definition at line 11 of file Ali\-HLTPHOSData\-Header\-Struct.h.\index{AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}!fDataType@{fDataType}} +\index{fDataType@{fDataType}!AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTComponent\-Data\-Type} {\bf Ali\-HLTPHOSData\-Header\-Struct::f\-Data\-Type}}\label{structAliHLTPHOSDataHeaderStruct_o1} + + +Data type stored in this file + +Definition at line 9 of file Ali\-HLTPHOSData\-Header\-Struct.h.\index{AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}!fEventID@{fEventID}} +\index{fEventID@{fEventID}!AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSData\-Header\-Struct::f\-Event\-ID}}\label{structAliHLTPHOSDataHeaderStruct_o2} + + +The HLT internal event ID for this event + +Definition at line 10 of file Ali\-HLTPHOSData\-Header\-Struct.h.\index{AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}!fFormatVersion@{fFormatVersion}} +\index{fFormatVersion@{fFormatVersion}!AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSData\-Header\-Struct::f\-Format\-Version}}\label{structAliHLTPHOSDataHeaderStruct_o4} + + +Header format version, currently 1 + +Definition at line 12 of file Ali\-HLTPHOSData\-Header\-Struct.h.\index{AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}!fFutureUse0@{fFutureUse0}} +\index{fFutureUse0@{fFutureUse0}!AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSData\-Header\-Struct::f\-Future\-Use0}}\label{structAliHLTPHOSDataHeaderStruct_o5} + + + + +Definition at line 13 of file Ali\-HLTPHOSData\-Header\-Struct.h.\index{AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}!fFutureUse1@{fFutureUse1}} +\index{fFutureUse1@{fFutureUse1}!AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSData\-Header\-Struct::f\-Future\-Use1}}\label{structAliHLTPHOSDataHeaderStruct_o6} + + + + +Definition at line 14 of file Ali\-HLTPHOSData\-Header\-Struct.h.\index{AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}!fFutureUse2@{fFutureUse2}} +\index{fFutureUse2@{fFutureUse2}!AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSData\-Header\-Struct::f\-Future\-Use2}}\label{structAliHLTPHOSDataHeaderStruct_o7} + + + + +Definition at line 15 of file Ali\-HLTPHOSData\-Header\-Struct.h.\index{AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}!fSize@{fSize}} +\index{fSize@{fSize}!AliHLTPHOSDataHeaderStruct@{Ali\-HLTPHOSData\-Header\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSData\-Header\-Struct::f\-Size}}\label{structAliHLTPHOSDataHeaderStruct_o0} + + +Total size of datablock in bytes, incuding the header + +Definition at line 8 of file Ali\-HLTPHOSData\-Header\-Struct.h. + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSData\-Header\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSModuleCellAccumulatedEnergyDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSModuleCellAccumulatedEnergyDataStruct.tex new file mode 100644 index 00000000000..15a6b2ef171 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSModuleCellAccumulatedEnergyDataStruct.tex @@ -0,0 +1,48 @@ +\section{Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSModuleCellAccumulatedEnergyDataStruct}\index{AliHLTPHOSModuleCellAccumulatedEnergyDataStruct@{AliHLTPHOSModuleCellAccumulatedEnergyDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +Float\_\-t {\bf f\-Accumulated\-Energies} [N\_\-XCOLUMNS\_\-MOD][N\_\-ZROWS\_\-MOD][N\_\-GAINS] +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Hits} [N\_\-XCOLUMNS\_\-MOD][N\_\-ZROWS\_\-MOD][N\_\-GAINS] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSModuleCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct}!fAccumulatedEnergies@{fAccumulatedEnergies}} +\index{fAccumulatedEnergies@{fAccumulatedEnergies}!AliHLTPHOSModuleCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Float\_\-t {\bf Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Accumulated\-Energies}[N\_\-XCOLUMNS\_\-MOD][N\_\-ZROWS\_\-MOD][N\_\-GAINS]}\label{structAliHLTPHOSModuleCellAccumulatedEnergyDataStruct_o1} + + + + +Definition at line 25 of file Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event().\index{AliHLTPHOSModuleCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct}!fHits@{fHits}} +\index{fHits@{fHits}!AliHLTPHOSModuleCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Hits}[N\_\-XCOLUMNS\_\-MOD][N\_\-ZROWS\_\-MOD][N\_\-GAINS]}\label{structAliHLTPHOSModuleCellAccumulatedEnergyDataStruct_o2} + + + + +Definition at line 26 of file Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event().\index{AliHLTPHOSModuleCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSModuleCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Module\-ID}}\label{structAliHLTPHOSModuleCellAccumulatedEnergyDataStruct_o0} + + + + +Definition at line 24 of file Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSModule\-Cell\-Accumulated\-Energy\-Data\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSModuleCellAverageEnergyDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSModuleCellAverageEnergyDataStruct.tex new file mode 100644 index 00000000000..e15f3b5e69d --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSModuleCellAverageEnergyDataStruct.tex @@ -0,0 +1,42 @@ +\section{Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSModuleCellAverageEnergyDataStruct}\index{AliHLTPHOSModuleCellAverageEnergyDataStruct@{AliHLTPHOSModuleCellAverageEnergyDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} {\bf f\-Valid\-Data} [N\_\-MODULES $\ast$N\_\-ROWS\_\-MOD $\ast$N\_\-COLUMNS\_\-MOD $\ast$N\_\-GAINS] +\item +Double\_\-t {\bf f\-Average\-Energies} [N\_\-ROWS\_\-MOD][N\_\-COLUMNS\_\-MOD][N\_\-GAINS] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSModuleCellAverageEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct}!fAverageEnergies@{fAverageEnergies}} +\index{fAverageEnergies@{fAverageEnergies}!AliHLTPHOSModuleCellAverageEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Double\_\-t {\bf Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct::f\-Average\-Energies}[N\_\-ROWS\_\-MOD][N\_\-COLUMNS\_\-MOD][N\_\-GAINS]}\label{structAliHLTPHOSModuleCellAverageEnergyDataStruct_o2} + + + + +Definition at line 25 of file Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct.h.\index{AliHLTPHOSModuleCellAverageEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSModuleCellAverageEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct::f\-Module\-ID}}\label{structAliHLTPHOSModuleCellAverageEnergyDataStruct_o0} + + + + +Definition at line 23 of file Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct.h.\index{AliHLTPHOSModuleCellAverageEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct}!fValidData@{fValidData}} +\index{fValidData@{fValidData}!AliHLTPHOSModuleCellAverageEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} {\bf Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct::f\-Valid\-Data}[N\_\-MODULES $\ast$N\_\-ROWS\_\-MOD $\ast$N\_\-COLUMNS\_\-MOD $\ast$N\_\-GAINS]}\label{structAliHLTPHOSModuleCellAverageEnergyDataStruct_o1} + + + + +Definition at line 24 of file Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct.h. + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSModule\-Cell\-Average\-Energy\-Data\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSModuleCellEnergyDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSModuleCellEnergyDataStruct.tex new file mode 100644 index 00000000000..11e262bbde1 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSModuleCellEnergyDataStruct.tex @@ -0,0 +1,51 @@ +\section{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSModuleCellEnergyDataStruct}\index{AliHLTPHOSModuleCellEnergyDataStruct@{AliHLTPHOSModuleCellEnergyDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +{\bf Ali\-HLTUInt16\_\-t} {\bf f\-Cnt} +\item +{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} {\bf f\-Valid\-Data} [N\_\-MODULES $\ast$N\_\-ROWS\_\-MOD $\ast$N\_\-COLUMNS\_\-MOD $\ast$N\_\-GAINS] +\item +unsigned long {\bf cell\-Energies} [N\_\-ROWS\_\-MOD][N\_\-COLUMNS\_\-MOD][N\_\-GAINS] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSModuleCellEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct}!cellEnergies@{cellEnergies}} +\index{cellEnergies@{cellEnergies}!AliHLTPHOSModuleCellEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned long {\bf Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct::cell\-Energies}[N\_\-ROWS\_\-MOD][N\_\-COLUMNS\_\-MOD][N\_\-GAINS]}\label{structAliHLTPHOSModuleCellEnergyDataStruct_o3} + + + + +Definition at line 27 of file Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct.h.\index{AliHLTPHOSModuleCellEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct}!fCnt@{fCnt}} +\index{fCnt@{fCnt}!AliHLTPHOSModuleCellEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt16\_\-t} {\bf Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct::f\-Cnt}}\label{structAliHLTPHOSModuleCellEnergyDataStruct_o1} + + + + +Definition at line 25 of file Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct.h.\index{AliHLTPHOSModuleCellEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSModuleCellEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct::f\-Module\-ID}}\label{structAliHLTPHOSModuleCellEnergyDataStruct_o0} + + + + +Definition at line 24 of file Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct.h.\index{AliHLTPHOSModuleCellEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct}!fValidData@{fValidData}} +\index{fValidData@{fValidData}!AliHLTPHOSModuleCellEnergyDataStruct@{Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} {\bf Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct::f\-Valid\-Data}[N\_\-MODULES $\ast$N\_\-ROWS\_\-MOD $\ast$N\_\-COLUMNS\_\-MOD $\ast$N\_\-GAINS]}\label{structAliHLTPHOSModuleCellEnergyDataStruct_o2} + + + + +Definition at line 26 of file Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct.h. + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSModule\-Cell\-Energy\-Data\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct.tex new file mode 100644 index 00000000000..14f540eae60 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct.tex @@ -0,0 +1,70 @@ +\section{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct}\index{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-X} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-Z} +\item +float {\bf f\-Accumulated\-Energies} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-Hits} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}!fAccumulatedEnergies@{fAccumulatedEnergies}} +\index{fAccumulatedEnergies@{fAccumulatedEnergies}!AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}float {\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Accumulated\-Energies}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]}\label{structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct_o3} + + + + +Definition at line 27 of file Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRcu\-Histogram\-Producer::Fill\-Energy(), Ali\-HLTPHOSOnline\-Display::Get\-Histogram(), and Ali\-HLTPHOSRcu\-Histogram\-Producer::Init().\index{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}!fHits@{fHits}} +\index{fHits@{fHits}!AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Hits}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]}\label{structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct_o4} + + + + +Definition at line 28 of file Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRcu\-Histogram\-Producer::Fill\-Energy(), Ali\-HLTPHOSOnline\-Display::Get\-Histogram(), and Ali\-HLTPHOSRcu\-Histogram\-Producer::Init().\index{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Module\-ID}}\label{structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct_o0} + + + + +Definition at line 24 of file Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSOnline\-Display::Get\-Histogram(), and Ali\-HLTPHOSRcu\-Histogram\-Producer::Init().\index{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}!fRcuX@{fRcuX}} +\index{fRcuX@{fRcuX}!AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Rcu\-X}}\label{structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct_o1} + + + + +Definition at line 25 of file Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSOnline\-Display::Get\-Histogram(), Ali\-HLTPHOSRcu\-Histogram\-Producer::Init(), and Ali\-HLTPHOSRcu\-Histogram\-Producer::Set\-Rcu\-X().\index{AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}!fRcuZ@{fRcuZ}} +\index{fRcuZ@{fRcuZ}!AliHLTPHOSRcuCellAccumulatedEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct::f\-Rcu\-Z}}\label{structAliHLTPHOSRcuCellAccumulatedEnergyDataStruct_o2} + + + + +Definition at line 26 of file Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSOnline\-Display::Get\-Histogram(), Ali\-HLTPHOSRcu\-Histogram\-Producer::Init(), and Ali\-HLTPHOSRcu\-Histogram\-Producer::Set\-Rcu\-Z(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Cell\-Accumulated\-Energy\-Data\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSRcuCellAverageEnergyDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSRcuCellAverageEnergyDataStruct.tex new file mode 100644 index 00000000000..fb111a0016f --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSRcuCellAverageEnergyDataStruct.tex @@ -0,0 +1,42 @@ +\section{Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSRcuCellAverageEnergyDataStruct}\index{AliHLTPHOSRcuCellAverageEnergyDataStruct@{AliHLTPHOSRcuCellAverageEnergyDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} {\bf f\-Valid\-Data} [N\_\-XCOLUMNS\_\-RCU $\ast$N\_\-ZROWS\_\-RCU $\ast$N\_\-GAINS] +\item +float {\bf f\-Average\-Energies} [N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSRcuCellAverageEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct}!fAverageEnergies@{fAverageEnergies}} +\index{fAverageEnergies@{fAverageEnergies}!AliHLTPHOSRcuCellAverageEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}float {\bf Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct::f\-Average\-Energies}[N\_\-XCOLUMNS\_\-RCU][N\_\-ZROWS\_\-RCU][N\_\-GAINS]}\label{structAliHLTPHOSRcuCellAverageEnergyDataStruct_o2} + + + + +Definition at line 26 of file Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct.h.\index{AliHLTPHOSRcuCellAverageEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSRcuCellAverageEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct::f\-Module\-ID}}\label{structAliHLTPHOSRcuCellAverageEnergyDataStruct_o0} + + + + +Definition at line 24 of file Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct.h.\index{AliHLTPHOSRcuCellAverageEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct}!fValidData@{fValidData}} +\index{fValidData@{fValidData}!AliHLTPHOSRcuCellAverageEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} {\bf Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct::f\-Valid\-Data}[N\_\-XCOLUMNS\_\-RCU $\ast$N\_\-ZROWS\_\-RCU $\ast$N\_\-GAINS]}\label{structAliHLTPHOSRcuCellAverageEnergyDataStruct_o1} + + + + +Definition at line 25 of file Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct.h. + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Cell\-Average\-Energy\-Data\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSRcuCellEnergyDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSRcuCellEnergyDataStruct.tex new file mode 100644 index 00000000000..f025e9e6826 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSRcuCellEnergyDataStruct.tex @@ -0,0 +1,70 @@ +\section{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSRcuCellEnergyDataStruct}\index{AliHLTPHOSRcuCellEnergyDataStruct@{AliHLTPHOSRcuCellEnergyDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +Int\_\-t {\bf f\-Module\-ID} +\item +Int\_\-t {\bf f\-Rcu\-X} +\item +Int\_\-t {\bf f\-Rcu\-Z} +\item +Int\_\-t {\bf f\-Cnt} +\item +{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} {\bf f\-Valid\-Data} [N\_\-ROWS\_\-RCU $\ast$N\_\-COLUMNS\_\-RCU $\ast$N\_\-GAINS] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}!fCnt@{fCnt}} +\index{fCnt@{fCnt}!AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t {\bf Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Cnt}}\label{structAliHLTPHOSRcuCellEnergyDataStruct_o3} + + + + +Definition at line 27 of file Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event().\index{AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t {\bf Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Module\-ID}}\label{structAliHLTPHOSRcuCellEnergyDataStruct_o0} + + + + +Definition at line 24 of file Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event().\index{AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}!fRcuX@{fRcuX}} +\index{fRcuX@{fRcuX}!AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t {\bf Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Rcu\-X}}\label{structAliHLTPHOSRcuCellEnergyDataStruct_o1} + + + + +Definition at line 25 of file Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event().\index{AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}!fRcuZ@{fRcuZ}} +\index{fRcuZ@{fRcuZ}!AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Int\_\-t {\bf Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Rcu\-Z}}\label{structAliHLTPHOSRcuCellEnergyDataStruct_o2} + + + + +Definition at line 26 of file Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event().\index{AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}!fValidData@{fValidData}} +\index{fValidData@{fValidData}!AliHLTPHOSRcuCellEnergyDataStruct@{Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct} {\bf Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct::f\-Valid\-Data}[N\_\-ROWS\_\-RCU $\ast$N\_\-COLUMNS\_\-RCU $\ast$N\_\-GAINS]}\label{structAliHLTPHOSRcuCellEnergyDataStruct_o4} + + + + +Definition at line 29 of file Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Cell\-Energy\-Data\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSRcuChannelDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSRcuChannelDataStruct.tex new file mode 100644 index 00000000000..f2bfe0ef6b2 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSRcuChannelDataStruct.tex @@ -0,0 +1,70 @@ +\section{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSRcuChannelDataStruct}\index{AliHLTPHOSRcuChannelDataStruct@{AliHLTPHOSRcuChannelDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt32\_\-t} {\bf f\-NValid\-Channels} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Module\-ID} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-X} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Rcu\-Z} +\item +{\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct} {\bf f\-Valid\-Data} [512] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}!fModuleID@{fModuleID}} +\index{fModuleID@{fModuleID}!AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Module\-ID}}\label{structAliHLTPHOSRcuChannelDataStruct_o1} + + + + +Definition at line 11 of file Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw().\index{AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}!fNValidChannels@{fNValidChannels}} +\index{fNValidChannels@{fNValidChannels}!AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt32\_\-t} {\bf Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-NValid\-Channels}}\label{structAliHLTPHOSRcuChannelDataStruct_o0} + + + + +Definition at line 9 of file Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw().\index{AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}!fRcuX@{fRcuX}} +\index{fRcuX@{fRcuX}!AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Rcu\-X}}\label{structAliHLTPHOSRcuChannelDataStruct_o2} + + + + +Definition at line 12 of file Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event().\index{AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}!fRcuZ@{fRcuZ}} +\index{fRcuZ@{fRcuZ}!AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Rcu\-Z}}\label{structAliHLTPHOSRcuChannelDataStruct_o3} + + + + +Definition at line 13 of file Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event().\index{AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}!fValidData@{fValidData}} +\index{fValidData@{fValidData}!AliHLTPHOSRcuChannelDataStruct@{Ali\-HLTPHOSRcu\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct} {\bf Ali\-HLTPHOSRcu\-Channel\-Data\-Struct::f\-Valid\-Data}[512]}\label{structAliHLTPHOSRcuChannelDataStruct_o4} + + + + +Definition at line 15 of file Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSRcu\-Channel\-Data\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSValidCellDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSValidCellDataStruct.tex new file mode 100644 index 00000000000..84e50775522 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSValidCellDataStruct.tex @@ -0,0 +1,70 @@ +\section{Ali\-HLTPHOSValid\-Cell\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSValidCellDataStruct}\index{AliHLTPHOSValidCellDataStruct@{AliHLTPHOSValidCellDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Z} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-X} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Gain} +\item +Float\_\-t {\bf f\-Energy} +\item +Float\_\-t {\bf f\-Time} +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}!fEnergy@{fEnergy}} +\index{fEnergy@{fEnergy}!AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Float\_\-t {\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Energy}}\label{structAliHLTPHOSValidCellDataStruct_o3} + + + + +Definition at line 27 of file Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event().\index{AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}!fGain@{fGain}} +\index{fGain@{fGain}!AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Gain}}\label{structAliHLTPHOSValidCellDataStruct_o2} + + + + +Definition at line 26 of file Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event().\index{AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}!fTime@{fTime}} +\index{fTime@{fTime}!AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Float\_\-t {\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Time}}\label{structAliHLTPHOSValidCellDataStruct_o4} + + + + +Definition at line 28 of file Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event().\index{AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}!fX@{fX}} +\index{fX@{fX}!AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-X}}\label{structAliHLTPHOSValidCellDataStruct_o1} + + + + +Definition at line 25 of file Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event().\index{AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}!fZ@{fZ}} +\index{fZ@{fZ}!AliHLTPHOSValidCellDataStruct@{Ali\-HLTPHOSValid\-Cell\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct::f\-Z}}\label{structAliHLTPHOSValidCellDataStruct_o0} + + + + +Definition at line 24 of file Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSRcu\-Histogram\-Producer\-Component::Do\-Event(), Ali\-HLTPHOSRaw\-Analyzer\-Component::Do\-Event(), Ali\-HLTPHOSModule\-Merger\-Component::Do\-Event(), Ali\-HLTPHOSHistogram\-Producer\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSValid\-Cell\-Data\-Struct.h}\end{CompactItemize} diff --git a/HLT/PHOS/latex/structAliHLTPHOSValidChannelDataStruct.tex b/HLT/PHOS/latex/structAliHLTPHOSValidChannelDataStruct.tex new file mode 100644 index 00000000000..bd534e41c91 --- /dev/null +++ b/HLT/PHOS/latex/structAliHLTPHOSValidChannelDataStruct.tex @@ -0,0 +1,70 @@ +\section{Ali\-HLTPHOSValid\-Channel\-Data\-Struct Struct Reference} +\label{structAliHLTPHOSValidChannelDataStruct}\index{AliHLTPHOSValidChannelDataStruct@{AliHLTPHOSValidChannelDataStruct}} +{\tt \#include $<$Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h$>$} + +\subsection*{Public Attributes} +\begin{CompactItemize} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Z} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-X} +\item +{\bf Ali\-HLTUInt8\_\-t} {\bf f\-Gain} +\item +{\bf Ali\-HLTUInt16\_\-t} {\bf f\-NSamples} +\item +Float\_\-t {\bf f\-Channel\-Data} [350] +\end{CompactItemize} + + +\subsection{Member Data Documentation} +\index{AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}!fChannelData@{fChannelData}} +\index{fChannelData@{fChannelData}!AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Float\_\-t {\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Channel\-Data}[350]}\label{structAliHLTPHOSValidChannelDataStruct_o4} + + + + +Definition at line 30 of file Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw().\index{AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}!fGain@{fGain}} +\index{fGain@{fGain}!AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Gain}}\label{structAliHLTPHOSValidChannelDataStruct_o2} + + + + +Definition at line 27 of file Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw().\index{AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}!fNSamples@{fNSamples}} +\index{fNSamples@{fNSamples}!AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt16\_\-t} {\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-NSamples}}\label{structAliHLTPHOSValidChannelDataStruct_o3} + + + + +Definition at line 28 of file Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw().\index{AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}!fX@{fX}} +\index{fX@{fX}!AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-X}}\label{structAliHLTPHOSValidChannelDataStruct_o1} + + + + +Definition at line 26 of file Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw().\index{AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}!fZ@{fZ}} +\index{fZ@{fZ}!AliHLTPHOSValidChannelDataStruct@{Ali\-HLTPHOSValid\-Channel\-Data\-Struct}} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTUInt8\_\-t} {\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct::f\-Z}}\label{structAliHLTPHOSValidChannelDataStruct_o0} + + + + +Definition at line 25 of file Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h. + +Referenced by Ali\-HLTPHOSDDLDecoder\-Component::Do\-Event(), and Ali\-HLTPHOSOnline\-Display::Get\-Next\-Event\-Raw(). + +The documentation for this struct was generated from the following file:\begin{CompactItemize} +\item +{\bf Ali\-HLTPHOSValid\-Channel\-Data\-Struct.h}\end{CompactItemize}