/[PAMELA software]/PamCut/doc/Doxygen/latex/classPamCutCollection.tex
ViewVC logotype

Annotation of /PamCut/doc/Doxygen/latex/classPamCutCollection.tex

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations) (download) (as text)
Fri Sep 25 15:44:20 2009 UTC (15 years, 5 months ago) by pam-fi
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +0 -0 lines
File MIME type: application/x-tex
FILE REMOVED
Removed from repository.

1 pam-fi 1.1 \hypertarget{classPamCutCollection}{
2     \section{PamCutCollection Class Reference}
3     \label{classPamCutCollection}\index{PamCutCollection@{PamCutCollection}}
4     }
5     A class which applies a set of cuts to Pamela data.
6    
7    
8     {\tt \#include $<$PamCutBase.h$>$}
9    
10     Inheritance diagram for PamCutCollection::\begin{figure}[H]
11     \begin{center}
12     \leavevmode
13     \includegraphics[height=5cm]{classPamCutCollection}
14     \end{center}
15     \end{figure}
16     \subsection*{Public Member Functions}
17     \begin{CompactItemize}
18     \item
19     \hyperlink{classPamCutCollection_756d6cc1c69e85a0f76e7674789c5588}{PamCutCollection} (const char $\ast$collectionName)
20     \begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item
21 pam-fi 1.2 \hypertarget{classPamCutCollection_932711c5f613639091adbcd851107b0c}{
22     \hyperlink{classPamCutCollection_932711c5f613639091adbcd851107b0c}{$\sim$PamCutCollection} ()}
23     \label{classPamCutCollection_932711c5f613639091adbcd851107b0c}
24    
25 pam-fi 1.1 \begin{CompactList}\small\item\em Destructor. \item\end{CompactList}\item
26     void \hyperlink{classPamCutCollection_6dc6a92a7ee9243f567a2a244e1e5685}{AddCut} (\hyperlink{classPamCut}{PamCut} \&cut)
27     \begin{CompactList}\small\item\em Adds a cut to the cut collection This routine adds a cut to the collection. These are stored in a vector in the same order they are inserted (the first cut would be element 0, the second cut element 1 and so on). All the references to a \char`\"{}cut number\char`\"{} or \char`\"{}cut index\char`\"{} will refer to this numbering scheme. \item\end{CompactList}\item
28     int \hyperlink{classPamCutCollection_85f04cef7b560a37061391dd397813a7}{Check} (PamLevel2 $\ast$event)
29     \begin{CompactList}\small\item\em The basic selection. \item\end{CompactList}\item
30     int \hyperlink{classPamCutCollection_e7af429a3afef3685cbd5aa076ef96e5}{ApplyCut} (PamLevel2 $\ast$event)
31     \begin{CompactList}\small\item\em Applies the cuts to the current event. \item\end{CompactList}\item
32     \hyperlink{classPamCut}{PamCut} $\ast$ \hyperlink{classPamCutCollection_55e41082749260f5cee2fd53d9fd331b}{GetCut} (unsigned int iCut)
33     \begin{CompactList}\small\item\em Returns a pointer to the iCut-th cut. \item\end{CompactList}\item
34     unsigned int \hyperlink{classPamCutCollection_231f91b82b18cf326a2912b0b515baca}{GetSize} ()
35     \begin{CompactList}\small\item\em The number of cuts contained in the collection. \item\end{CompactList}\item
36     void \hyperlink{classPamCutCollection_982821389af5e585688611d733b3a7b0}{Setup} (PamLevel2 $\ast$events)
37     \begin{CompactList}\small\item\em The pre-analysis task definition. \item\end{CompactList}\item
38     void \hyperlink{classPamCutCollection_15785c75fb13b998422739e741bb5c01}{Finalize} ()
39     \begin{CompactList}\small\item\em The post-analysis task definition. \item\end{CompactList}\item
40     \hyperlink{classPamCutCollection}{PamCutCollection} \& \hyperlink{classPamCutCollection_3fb36e5fb38627f5cbffe6c23cf57d2a}{operator=} (const \hyperlink{classPamCutCollection}{PamCutCollection} \&rightValue)
41     \begin{CompactList}\small\item\em Assignment operator redefinition. The assignment operator replaces the content of the LHS with that of RHS. The net effect would be that the cuts contained in the LHS are exactly the same that are in the RHS. In particular, this means that any modification to one of the cuts will propagate both to the LHS and RHS collections. Also the cut name will be copied, since the implementation invokes \hyperlink{classPamCut_cff560f2c6a663345c81f95df905956e}{PamCut::operator=}. \item\end{CompactList}\end{CompactItemize}
42     \subsection*{Protected Attributes}
43     \begin{CompactItemize}
44     \item
45 pam-fi 1.2 \hypertarget{classPamCutCollection_95f91f4b81f916cb6e120ee4b5bb5403}{
46     std::vector$<$ \hyperlink{classPamCut}{PamCut} $\ast$ $>$ \hyperlink{classPamCutCollection_95f91f4b81f916cb6e120ee4b5bb5403}{\_\-cuts}}
47     \label{classPamCutCollection_95f91f4b81f916cb6e120ee4b5bb5403}
48    
49 pam-fi 1.1 \begin{CompactList}\small\item\em A vector containing pointers to \hyperlink{classPamCut}{PamCut} objects. \item\end{CompactList}\end{CompactItemize}
50    
51    
52     \subsection{Detailed Description}
53     A class which applies a set of cuts to Pamela data.
54    
55     This is a multi-cut class, which inherits from \hyperlink{classPamCut}{PamCut}. Indeed, a multi-cut can be seen as a cut composed by various simpler cuts; hence the interface of \hyperlink{classPamCut}{PamCut} is also functional for \hyperlink{classPamCutCollection}{PamCutCollection}. The \hyperlink{classPamCutCollection_e7af429a3afef3685cbd5aa076ef96e5}{ApplyCut(PamLevel2 $\ast$event)} method is overridden so as all the cuts that compose the \hyperlink{classPamCutCollection}{PamCutCollection} are applied to the events in the same order they are added to the collection. Instead, \hyperlink{classPamCut_047b75499ea4457d60397ee5491adcd4}{Process(PamLevel2 $\ast$events, ULong\_\-t firstEvent, ULong\_\-t lastEvent)} is NOT overridden, since it performs the same task as the one in the base class: it is sufficient to override \hyperlink{classPamCutCollection_85f04cef7b560a37061391dd397813a7}{Check(PamLevel2 $\ast$event)} to replace the single-cut evaluation with a multi-cut evaluation.
56    
57     \subsection{Constructor \& Destructor Documentation}
58     \hypertarget{classPamCutCollection_756d6cc1c69e85a0f76e7674789c5588}{
59     \index{PamCutCollection@{PamCutCollection}!PamCutCollection@{PamCutCollection}}
60     \index{PamCutCollection@{PamCutCollection}!PamCutCollection@{PamCutCollection}}
61     \subsubsection[{PamCutCollection}]{\setlength{\rightskip}{0pt plus 5cm}PamCutCollection::PamCutCollection (const char $\ast$ {\em collectionName})\hspace{0.3cm}{\tt \mbox{[}inline\mbox{]}}}}
62     \label{classPamCutCollection_756d6cc1c69e85a0f76e7674789c5588}
63    
64    
65     Constructor.
66    
67     \begin{Desc}
68     \item[Parameters:]
69     \begin{description}
70     \item[{\em collectionName}]The collection's name. \end{description}
71     \end{Desc}
72    
73    
74     \subsection{Member Function Documentation}
75     \hypertarget{classPamCutCollection_6dc6a92a7ee9243f567a2a244e1e5685}{
76     \index{PamCutCollection@{PamCutCollection}!AddCut@{AddCut}}
77     \index{AddCut@{AddCut}!PamCutCollection@{PamCutCollection}}
78     \subsubsection[{AddCut}]{\setlength{\rightskip}{0pt plus 5cm}void PamCutCollection::AddCut ({\bf PamCut} \& {\em cut})}}
79     \label{classPamCutCollection_6dc6a92a7ee9243f567a2a244e1e5685}
80    
81    
82     Adds a cut to the cut collection This routine adds a cut to the collection. These are stored in a vector in the same order they are inserted (the first cut would be element 0, the second cut element 1 and so on). All the references to a \char`\"{}cut number\char`\"{} or \char`\"{}cut index\char`\"{} will refer to this numbering scheme.
83    
84     \begin{Desc}
85     \item[Parameters:]
86     \begin{description}
87     \item[{\em cut}]The PamCut-derived object to add to the collection. \end{description}
88     \end{Desc}
89 pam-fi 1.2 \hypertarget{classPamCutCollection_e7af429a3afef3685cbd5aa076ef96e5}{
90 pam-fi 1.1 \index{PamCutCollection@{PamCutCollection}!ApplyCut@{ApplyCut}}
91     \index{ApplyCut@{ApplyCut}!PamCutCollection@{PamCutCollection}}
92     \subsubsection[{ApplyCut}]{\setlength{\rightskip}{0pt plus 5cm}int PamCutCollection::ApplyCut (PamLevel2 $\ast$ {\em event})\hspace{0.3cm}{\tt \mbox{[}virtual\mbox{]}}}}
93     \label{classPamCutCollection_e7af429a3afef3685cbd5aa076ef96e5}
94    
95    
96     Applies the cuts to the current event.
97    
98     This routine works pretty much like the redefinition of \hyperlink{classPamCutCollection_85f04cef7b560a37061391dd397813a7}{Check()}, calling \hyperlink{classPamCutCollection_e7af429a3afef3685cbd5aa076ef96e5}{ApplyCut()} (instead of \hyperlink{classPamCutCollection_85f04cef7b560a37061391dd397813a7}{Check()} )for each cut. If a cut fails, it calls \hyperlink{classPamCut_cbb3b507d79f20878fac4392ffa57acb}{OnBad()}, passing the index of the failed cut as the selectionResult argument. If all the cuts are successful, it calls \hyperlink{classPamCut_56021e959232270c12528ddec3062985}{OnGood()}.
99    
100     \begin{Desc}
101     \item[Parameters:]
102     \begin{description}
103     \item[{\em event}]The event to analyze. \end{description}
104     \end{Desc}
105     \begin{Desc}
106     \item[Returns:]same return values as \hyperlink{classPamCutCollection_85f04cef7b560a37061391dd397813a7}{Check()}. \end{Desc}
107    
108    
109     Reimplemented from \hyperlink{classPamCut_132a1a7cf365ff28eca38b7dda1acb7f}{PamCut}.
110    
111 pam-fi 1.2 Reimplemented in \hyperlink{classBlindCutCollection_8d387de8cbc54ff0eab8cff220b49c20}{BlindCutCollection}, \hyperlink{classSmartBlindCollection_1eb231a8a437018bfd966644c7b18ba4}{SmartBlindCollection}, and \hyperlink{classSmartCollection_98213ec078e9b94ea70c72132757da46}{SmartCollection}.\hypertarget{classPamCutCollection_85f04cef7b560a37061391dd397813a7}{
112 pam-fi 1.1 \index{PamCutCollection@{PamCutCollection}!Check@{Check}}
113     \index{Check@{Check}!PamCutCollection@{PamCutCollection}}
114     \subsubsection[{Check}]{\setlength{\rightskip}{0pt plus 5cm}int PamCutCollection::Check (PamLevel2 $\ast$ {\em event})\hspace{0.3cm}{\tt \mbox{[}virtual\mbox{]}}}}
115     \label{classPamCutCollection_85f04cef7b560a37061391dd397813a7}
116    
117    
118     The basic selection.
119    
120     Like in the mother class, this method performs a basic check on the current event: it calls \hyperlink{classPamCutCollection_85f04cef7b560a37061391dd397813a7}{Check()} for each cut previously added with \hyperlink{classPamCutCollection_6dc6a92a7ee9243f567a2a244e1e5685}{AddCut()}, exiting if one of them is not satisfied.
121    
122     \begin{Desc}
123 pam-fi 1.2 \item[Parameters:]
124     \begin{description}
125     \item[{\em event}]The event to analyze. \end{description}
126     \end{Desc}
127     \begin{Desc}
128 pam-fi 1.1 \item[Returns:]the index of the failed cut (range: \mbox{[}0, \#cuts-1\mbox{]}, see \hyperlink{classPamCutCollection_6dc6a92a7ee9243f567a2a244e1e5685}{AddCut()}); \hyperlink{CommonDefs_8h_c857f4b76ae431837cbf61fd74863b6c}{CUTOK} if the event satisfies all the cuts. \end{Desc}
129    
130    
131     Implements \hyperlink{classPamCut_a874600461950d1f2b75ce3938f91cbe}{PamCut}.
132    
133 pam-fi 1.2 Reimplemented in \hyperlink{classBlindCutCollection_016ee86612e57a50f03c8469d3ed9d1f}{BlindCutCollection}.\hypertarget{classPamCutCollection_15785c75fb13b998422739e741bb5c01}{
134 pam-fi 1.1 \index{PamCutCollection@{PamCutCollection}!Finalize@{Finalize}}
135     \index{Finalize@{Finalize}!PamCutCollection@{PamCutCollection}}
136     \subsubsection[{Finalize}]{\setlength{\rightskip}{0pt plus 5cm}void PamCutCollection::Finalize ()\hspace{0.3cm}{\tt \mbox{[}virtual\mbox{]}}}}
137     \label{classPamCutCollection_15785c75fb13b998422739e741bb5c01}
138    
139    
140     The post-analysis task definition.
141    
142     This override of the \hyperlink{classPamCutCollection_15785c75fb13b998422739e741bb5c01}{Finalize()} method calls \hyperlink{classPamCut_fd74c1565552cabe4aced316df803737}{PamCut::Finalize()} and then the \hyperlink{classPamCutCollection_15785c75fb13b998422739e741bb5c01}{Finalize()} method of each cut contained in the collection, in the same order.
143    
144     Reimplemented from \hyperlink{classPamCut_fd74c1565552cabe4aced316df803737}{PamCut}.
145    
146 pam-fi 1.2 Reimplemented in \hyperlink{classSmartCollection_8105730615ad127a482a7fb399695977}{SmartCollection}, \hyperlink{classVerboseBlindCollection_43d6ea7b5ea35c5dbb342e23584b79ee}{VerboseBlindCollection}, and \hyperlink{classVerboseCollection_3fcdf28d50507d772647d4306a78f3cc}{VerboseCollection}.\hypertarget{classPamCutCollection_55e41082749260f5cee2fd53d9fd331b}{
147 pam-fi 1.1 \index{PamCutCollection@{PamCutCollection}!GetCut@{GetCut}}
148     \index{GetCut@{GetCut}!PamCutCollection@{PamCutCollection}}
149     \subsubsection[{GetCut}]{\setlength{\rightskip}{0pt plus 5cm}{\bf PamCut} $\ast$ PamCutCollection::GetCut (unsigned int {\em iCut})}}
150     \label{classPamCutCollection_55e41082749260f5cee2fd53d9fd331b}
151    
152    
153     Returns a pointer to the iCut-th cut.
154    
155     The return value of this method is a pointer to a \hyperlink{classPamCut}{PamCut} object; hence, to use the specific method of derived cuts it must be cast to the proper cut class.
156    
157     \begin{Desc}
158     \item[Parameters:]
159     \begin{description}
160     \item[{\em iCut}]The cut number, defined as the insertion order (from 0 to \#cuts-1, see \hyperlink{classPamCutCollection_6dc6a92a7ee9243f567a2a244e1e5685}{AddCut()}). \end{description}
161     \end{Desc}
162     \begin{Desc}
163     \item[Returns:]pointer to the iCut-th cut; NULL if the specified cut cannot be found or if no cuts are present. \end{Desc}
164 pam-fi 1.2 \hypertarget{classPamCutCollection_231f91b82b18cf326a2912b0b515baca}{
165 pam-fi 1.1 \index{PamCutCollection@{PamCutCollection}!GetSize@{GetSize}}
166     \index{GetSize@{GetSize}!PamCutCollection@{PamCutCollection}}
167     \subsubsection[{GetSize}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int PamCutCollection::GetSize ()}}
168     \label{classPamCutCollection_231f91b82b18cf326a2912b0b515baca}
169    
170    
171     The number of cuts contained in the collection.
172    
173     \begin{Desc}
174     \item[Returns:]The number of cuts \end{Desc}
175 pam-fi 1.2 \hypertarget{classPamCutCollection_3fb36e5fb38627f5cbffe6c23cf57d2a}{
176 pam-fi 1.1 \index{PamCutCollection@{PamCutCollection}!operator=@{operator=}}
177     \index{operator=@{operator=}!PamCutCollection@{PamCutCollection}}
178     \subsubsection[{operator=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf PamCutCollection} \& PamCutCollection::operator= (const {\bf PamCutCollection} \& {\em rightValue})}}
179     \label{classPamCutCollection_3fb36e5fb38627f5cbffe6c23cf57d2a}
180    
181    
182     Assignment operator redefinition. The assignment operator replaces the content of the LHS with that of RHS. The net effect would be that the cuts contained in the LHS are exactly the same that are in the RHS. In particular, this means that any modification to one of the cuts will propagate both to the LHS and RHS collections. Also the cut name will be copied, since the implementation invokes \hyperlink{classPamCut_cff560f2c6a663345c81f95df905956e}{PamCut::operator=}.
183    
184     \begin{Desc}
185     \item[Parameters:]
186     \begin{description}
187     \item[{\em rightValue}]The RHS. \end{description}
188     \end{Desc}
189     \begin{Desc}
190     \item[Returns:]The new value for LHS. \end{Desc}
191 pam-fi 1.2 \hypertarget{classPamCutCollection_982821389af5e585688611d733b3a7b0}{
192 pam-fi 1.1 \index{PamCutCollection@{PamCutCollection}!Setup@{Setup}}
193     \index{Setup@{Setup}!PamCutCollection@{PamCutCollection}}
194     \subsubsection[{Setup}]{\setlength{\rightskip}{0pt plus 5cm}void PamCutCollection::Setup (PamLevel2 $\ast$ {\em events})\hspace{0.3cm}{\tt \mbox{[}virtual\mbox{]}}}}
195     \label{classPamCutCollection_982821389af5e585688611d733b3a7b0}
196    
197    
198     The pre-analysis task definition.
199    
200     This override of the \hyperlink{classPamCutCollection_982821389af5e585688611d733b3a7b0}{Setup()} method calls \hyperlink{classPamCutCollection_982821389af5e585688611d733b3a7b0}{Setup()} for the base class \hyperlink{classPamCut}{PamCut}, and subsequently for each cut contained in the collection, in the same order the cuts were added to the collection.
201    
202     \begin{Desc}
203     \item[Parameters:]
204     \begin{description}
205     \item[{\em events}]The PamLevel2 pointer to the events that will be analyzed. Unused, but required by the interface. \end{description}
206     \end{Desc}
207    
208    
209     Reimplemented from \hyperlink{classPamCut_e587828903b809c99f9ab5ba97ae6616}{PamCut}.
210    
211 pam-fi 1.2 Reimplemented in \hyperlink{classSmartCollection_9b5b11a854b9e174218ea516ceffb34c}{SmartCollection}.
212 pam-fi 1.1
213     The documentation for this class was generated from the following files:\begin{CompactItemize}
214     \item
215     PamCutBase/\hyperlink{PamCutBase_8h}{PamCutBase.h}\item
216     PamCutBase/\hyperlink{PamCutBase_8cpp}{PamCutBase.cpp}\end{CompactItemize}

  ViewVC Help
Powered by ViewVC 1.1.23