\hypertarget{classvertex__lcfi_1_1Algo}{\subsection{vertex\-\_\-lcfi\-:\-:Algo$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$ Class Template Reference}
\label{classvertex__lcfi_1_1Algo}\index{vertex\-\_\-lcfi\-::\-Algo$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$@{vertex\-\_\-lcfi\-::\-Algo$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$}}
}


Algorithm interface for decay chain construction or vertexing etc.  




{\ttfamily \#include $<$algo.\-h$>$}



Inheritance diagram for vertex\-\_\-lcfi\-:\-:Algo$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$\-:
\subsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual string \hyperlink{classvertex__lcfi_1_1Algo_a8dc63ee2a511bf2809979a862167d0d6}{name} () const =0
\begin{DoxyCompactList}\small\item\em Name. \end{DoxyCompactList}\item 
virtual std\-::vector$<$ string $>$ \hyperlink{classvertex__lcfi_1_1Algo_ac5a83cb4625455de40bec9ab8f718c48}{parameter\-Names} () const =0
\begin{DoxyCompactList}\small\item\em Parameter Names. \end{DoxyCompactList}\item 
virtual std\-::vector$<$ string $>$ \hyperlink{classvertex__lcfi_1_1Algo_a6248170b83886bf51a922b78ce629a71}{parameter\-Values} () const =0
\begin{DoxyCompactList}\small\item\em Parameter Values. \end{DoxyCompactList}\item 
virtual void \hyperlink{classvertex__lcfi_1_1Algo_accfd43386452b66fcefb2ba4cdcbd196}{set\-String\-Parameter} (const string \&Parameter, const string \&Value)=0
\begin{DoxyCompactList}\small\item\em Set String Parameter. \end{DoxyCompactList}\item 
virtual void \hyperlink{classvertex__lcfi_1_1Algo_a24d0b4312ea4d6738e2a55453b59574d}{set\-Double\-Parameter} (const string \&Parameter, const double Value)=0
\begin{DoxyCompactList}\small\item\em Set Double Parameter. \end{DoxyCompactList}\item 
virtual void \hyperlink{classvertex__lcfi_1_1Algo_a087e8ecc0029473208a97100f4a966e5}{set\-Pointer\-Parameter} (const string \&Parameter, void $\ast$Value)=0
\begin{DoxyCompactList}\small\item\em Set Pointer Parameter. \end{DoxyCompactList}\item 
virtual O\-U\-T\-T\-Y\-P\-E \hyperlink{classvertex__lcfi_1_1Algo_a95a0f611f2ab925663b6f819b7d0f8c8}{calculate\-For} (I\-N\-T\-Y\-P\-E Input) const =0
\begin{DoxyCompactList}\small\item\em Run the algorithm on a jet. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsubsection{Detailed Description}
\subsubsection*{template$<$class I\-N\-T\-Y\-P\-E, class O\-U\-T\-T\-Y\-P\-E$>$class vertex\-\_\-lcfi\-::\-Algo$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$}

Algorithm interface for decay chain construction or vertexing etc. 

Description 

\subsubsection{Member Function Documentation}
\hypertarget{classvertex__lcfi_1_1Algo_a95a0f611f2ab925663b6f819b7d0f8c8}{\index{vertex\-\_\-lcfi\-::\-Algo@{vertex\-\_\-lcfi\-::\-Algo}!calculate\-For@{calculate\-For}}
\index{calculate\-For@{calculate\-For}!vertex_lcfi::Algo@{vertex\-\_\-lcfi\-::\-Algo}}
\paragraph[{calculate\-For}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class I\-N\-T\-Y\-P\-E, class O\-U\-T\-T\-Y\-P\-E$>$ virtual O\-U\-T\-T\-Y\-P\-E {\bf vertex\-\_\-lcfi\-::\-Algo}$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$\-::calculate\-For (
\begin{DoxyParamCaption}
\item[{I\-N\-T\-Y\-P\-E}]{Input}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classvertex__lcfi_1_1Algo_a95a0f611f2ab925663b6f819b7d0f8c8}


Run the algorithm on a jet. 

Calculate the Output of the \hyperlink{classvertex__lcfi_1_1Algo}{Algo} 
\begin{DoxyParams}{Parameters}
{\em \hyperlink{classvertex__lcfi_1_1Jet}{Jet}} & Pointer to object to be analysed \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Output of the algorithm 
\end{DoxyReturn}


Implemented in \hyperlink{classvertex__lcfi_1_1ParameterSignificance_ab86756525f2e38f9c14f1a58c9a38684}{vertex\-\_\-lcfi\-::\-Parameter\-Significance}, \hyperlink{classvertex__lcfi_1_1VertexMass_aea2d07f8259d53d5163f44a036021e30}{vertex\-\_\-lcfi\-::\-Vertex\-Mass}, \hyperlink{classvertex__lcfi_1_1TwoTrackPid_a2ea74d061f395603740f217c385d3e88}{vertex\-\_\-lcfi\-::\-Two\-Track\-Pid}, \hyperlink{classvertex__lcfi_1_1JointProb_a47c87104ca02700ea9f09f92996ab2f5}{vertex\-\_\-lcfi\-::\-Joint\-Prob}, \hyperlink{classvertex__lcfi_1_1SecVertexProb_a7e65266abf626cc3e9684cfe7aa8c494}{vertex\-\_\-lcfi\-::\-Sec\-Vertex\-Prob}, \hyperlink{classvertex__lcfi_1_1TrackAttach_a9af074cb7a0924ff72c8b9cb35e2fa8e}{vertex\-\_\-lcfi\-::\-Track\-Attach}, \hyperlink{classvertex__lcfi_1_1VertexDecaySignificance_a9cccbbb9df01ba7aa0aa32fadd6b8cf0}{vertex\-\_\-lcfi\-::\-Vertex\-Decay\-Significance}, \hyperlink{classvertex__lcfi_1_1ZVKIN_aadfb21b91914a0ce39f1b32afa180d24}{vertex\-\_\-lcfi\-::\-Z\-V\-K\-I\-N}, \hyperlink{classvertex__lcfi_1_1ZVRES_ad828056642cd19b2c3f887a541b76f24}{vertex\-\_\-lcfi\-::\-Z\-V\-R\-E\-S}, \hyperlink{classvertex__lcfi_1_1VertexCharge_aba6dd68f6629113864d2914abf289a5a}{vertex\-\_\-lcfi\-::\-Vertex\-Charge}, \hyperlink{classvertex__lcfi_1_1VertexMomentum_ad32eadd83cc7cb94abe671b0239063bf}{vertex\-\_\-lcfi\-::\-Vertex\-Momentum}, \hyperlink{classvertex__lcfi_1_1VertexMultiplicity_af6b0b415eab2bd2ac8b6132886557f05}{vertex\-\_\-lcfi\-::\-Vertex\-Multiplicity}, and \hyperlink{classvertex__lcfi_1_1PerEventIPFitter_ae7c259bd65c59e26676e4da958e66f8a}{vertex\-\_\-lcfi\-::\-Per\-Event\-I\-P\-Fitter}.

\hypertarget{classvertex__lcfi_1_1Algo_a8dc63ee2a511bf2809979a862167d0d6}{\index{vertex\-\_\-lcfi\-::\-Algo@{vertex\-\_\-lcfi\-::\-Algo}!name@{name}}
\index{name@{name}!vertex_lcfi::Algo@{vertex\-\_\-lcfi\-::\-Algo}}
\paragraph[{name}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class I\-N\-T\-Y\-P\-E, class O\-U\-T\-T\-Y\-P\-E$>$ virtual string {\bf vertex\-\_\-lcfi\-::\-Algo}$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$\-::name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classvertex__lcfi_1_1Algo_a8dc63ee2a511bf2809979a862167d0d6}


Name. 

String name of the algorithm \begin{DoxyReturn}{Returns}
String name 
\end{DoxyReturn}


Implemented in \hyperlink{classvertex__lcfi_1_1VertexMass_ac79dab5292b33cbe0fbbc47fa90b2ee2}{vertex\-\_\-lcfi\-::\-Vertex\-Mass}, \hyperlink{classvertex__lcfi_1_1ParameterSignificance_a00e2ebc6e837b01afae327629206724f}{vertex\-\_\-lcfi\-::\-Parameter\-Significance}, \hyperlink{classvertex__lcfi_1_1TwoTrackPid_a1d6c46e4bfa8add0dc66dc38766b773c}{vertex\-\_\-lcfi\-::\-Two\-Track\-Pid}, \hyperlink{classvertex__lcfi_1_1JointProb_aeafd24093b9eb2187d33875188a35443}{vertex\-\_\-lcfi\-::\-Joint\-Prob}, \hyperlink{classvertex__lcfi_1_1TrackAttach_a265cbccf3b95c646e211f9f8f905c6d6}{vertex\-\_\-lcfi\-::\-Track\-Attach}, \hyperlink{classvertex__lcfi_1_1SecVertexProb_a8bc8957efc564cf4327c46dde3214ecf}{vertex\-\_\-lcfi\-::\-Sec\-Vertex\-Prob}, \hyperlink{classvertex__lcfi_1_1VertexDecaySignificance_a537d9d571bc16251ffa1d7d3bdfc33e0}{vertex\-\_\-lcfi\-::\-Vertex\-Decay\-Significance}, \hyperlink{classvertex__lcfi_1_1ZVKIN_ab23a88a80701585811b059d71a43c85c}{vertex\-\_\-lcfi\-::\-Z\-V\-K\-I\-N}, \hyperlink{classvertex__lcfi_1_1ZVRES_a2a616f615003abd176ee5b12f5bf6a58}{vertex\-\_\-lcfi\-::\-Z\-V\-R\-E\-S}, \hyperlink{classvertex__lcfi_1_1VertexCharge_ad9425d85271d91bdbbde89eff507bb33}{vertex\-\_\-lcfi\-::\-Vertex\-Charge}, \hyperlink{classvertex__lcfi_1_1VertexMomentum_ac5a1a66331f39aaa15d32d8fb450a331}{vertex\-\_\-lcfi\-::\-Vertex\-Momentum}, \hyperlink{classvertex__lcfi_1_1VertexMultiplicity_a5c59960ae13b3434d3fb5c9a67ea05c4}{vertex\-\_\-lcfi\-::\-Vertex\-Multiplicity}, and \hyperlink{classvertex__lcfi_1_1PerEventIPFitter_a895851dcb0ff37113a02db340eb4defe}{vertex\-\_\-lcfi\-::\-Per\-Event\-I\-P\-Fitter}.

\hypertarget{classvertex__lcfi_1_1Algo_ac5a83cb4625455de40bec9ab8f718c48}{\index{vertex\-\_\-lcfi\-::\-Algo@{vertex\-\_\-lcfi\-::\-Algo}!parameter\-Names@{parameter\-Names}}
\index{parameter\-Names@{parameter\-Names}!vertex_lcfi::Algo@{vertex\-\_\-lcfi\-::\-Algo}}
\paragraph[{parameter\-Names}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class I\-N\-T\-Y\-P\-E, class O\-U\-T\-T\-Y\-P\-E$>$ virtual std\-::vector$<$string$>$ {\bf vertex\-\_\-lcfi\-::\-Algo}$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$\-::parameter\-Names (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classvertex__lcfi_1_1Algo_ac5a83cb4625455de40bec9ab8f718c48}


Parameter Names. 

A vector of the names of the algorithms parameters \begin{DoxyReturn}{Returns}
vector of string names 
\end{DoxyReturn}


Implemented in \hyperlink{classvertex__lcfi_1_1VertexMass_a8bca0a44f3cf4f5dd71b2d4adaf47289}{vertex\-\_\-lcfi\-::\-Vertex\-Mass}, \hyperlink{classvertex__lcfi_1_1ParameterSignificance_a7d07ef47861099887382cae53f9f98e7}{vertex\-\_\-lcfi\-::\-Parameter\-Significance}, \hyperlink{classvertex__lcfi_1_1TwoTrackPid_a8998c44ca8f7a35330432979861bbd6d}{vertex\-\_\-lcfi\-::\-Two\-Track\-Pid}, \hyperlink{classvertex__lcfi_1_1JointProb_a2be46d7fafe8d02ab1e2d287a71b92c7}{vertex\-\_\-lcfi\-::\-Joint\-Prob}, \hyperlink{classvertex__lcfi_1_1TrackAttach_ae8f43dac5d6608e3aea8cae7df65575c}{vertex\-\_\-lcfi\-::\-Track\-Attach}, \hyperlink{classvertex__lcfi_1_1SecVertexProb_a6b599e3b4e6a891c25ab3192241715e0}{vertex\-\_\-lcfi\-::\-Sec\-Vertex\-Prob}, \hyperlink{classvertex__lcfi_1_1VertexDecaySignificance_ade82718dbd8e59014f15f0fe7fde5c30}{vertex\-\_\-lcfi\-::\-Vertex\-Decay\-Significance}, \hyperlink{classvertex__lcfi_1_1ZVKIN_a4b2a0a9a9d1c6fc6dcf5b18b096e9e14}{vertex\-\_\-lcfi\-::\-Z\-V\-K\-I\-N}, \hyperlink{classvertex__lcfi_1_1ZVRES_a04a8a60284bb5a8b690afbcf9b7057bf}{vertex\-\_\-lcfi\-::\-Z\-V\-R\-E\-S}, \hyperlink{classvertex__lcfi_1_1VertexCharge_a573635e75267c6fc4fad176b8138d3f4}{vertex\-\_\-lcfi\-::\-Vertex\-Charge}, \hyperlink{classvertex__lcfi_1_1VertexMomentum_aec0a97a95cac713154199db2d8d7ffe8}{vertex\-\_\-lcfi\-::\-Vertex\-Momentum}, \hyperlink{classvertex__lcfi_1_1VertexMultiplicity_ac498b8603c47c77f47916d576991456a}{vertex\-\_\-lcfi\-::\-Vertex\-Multiplicity}, and \hyperlink{classvertex__lcfi_1_1PerEventIPFitter_a3174d67c09481e82495e2c9d2104b4a3}{vertex\-\_\-lcfi\-::\-Per\-Event\-I\-P\-Fitter}.

\hypertarget{classvertex__lcfi_1_1Algo_a6248170b83886bf51a922b78ce629a71}{\index{vertex\-\_\-lcfi\-::\-Algo@{vertex\-\_\-lcfi\-::\-Algo}!parameter\-Values@{parameter\-Values}}
\index{parameter\-Values@{parameter\-Values}!vertex_lcfi::Algo@{vertex\-\_\-lcfi\-::\-Algo}}
\paragraph[{parameter\-Values}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class I\-N\-T\-Y\-P\-E, class O\-U\-T\-T\-Y\-P\-E$>$ virtual std\-::vector$<$string$>$ {\bf vertex\-\_\-lcfi\-::\-Algo}$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$\-::parameter\-Values (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classvertex__lcfi_1_1Algo_a6248170b83886bf51a922b78ce629a71}


Parameter Values. 

A vector of the values of the algorithms parameters, in the same order as parameter names \begin{DoxyReturn}{Returns}
vector of string values 
\end{DoxyReturn}


Implemented in \hyperlink{classvertex__lcfi_1_1VertexMass_ad96556d317f8a21c1262c1f156fffbdf}{vertex\-\_\-lcfi\-::\-Vertex\-Mass}, \hyperlink{classvertex__lcfi_1_1ParameterSignificance_a5e96ddc74fcbe1d02a641c96a3ba3070}{vertex\-\_\-lcfi\-::\-Parameter\-Significance}, \hyperlink{classvertex__lcfi_1_1TwoTrackPid_a64d351fa0a9ed0293ae19e87ba35efdb}{vertex\-\_\-lcfi\-::\-Two\-Track\-Pid}, \hyperlink{classvertex__lcfi_1_1JointProb_a571e150c83f4a12d2cc6231de6207f30}{vertex\-\_\-lcfi\-::\-Joint\-Prob}, \hyperlink{classvertex__lcfi_1_1TrackAttach_a9a0a4f8ffab24277beaf687d5bc6b759}{vertex\-\_\-lcfi\-::\-Track\-Attach}, \hyperlink{classvertex__lcfi_1_1SecVertexProb_a6209ca46a90cbf8157d2b58470d3549a}{vertex\-\_\-lcfi\-::\-Sec\-Vertex\-Prob}, \hyperlink{classvertex__lcfi_1_1VertexDecaySignificance_a8d8d7258bb1b6b672ee41361f4ebfa93}{vertex\-\_\-lcfi\-::\-Vertex\-Decay\-Significance}, \hyperlink{classvertex__lcfi_1_1ZVKIN_a194a5b21b9516b9d0f99292d6df4c116}{vertex\-\_\-lcfi\-::\-Z\-V\-K\-I\-N}, \hyperlink{classvertex__lcfi_1_1ZVRES_a144cacea739d82cd28bd75e2cd3f57fe}{vertex\-\_\-lcfi\-::\-Z\-V\-R\-E\-S}, \hyperlink{classvertex__lcfi_1_1VertexCharge_ab5672a24da4a49d06c806c79ac7b7dd3}{vertex\-\_\-lcfi\-::\-Vertex\-Charge}, \hyperlink{classvertex__lcfi_1_1VertexMomentum_aef01c897ea1a8685c919ae3519c4a7c1}{vertex\-\_\-lcfi\-::\-Vertex\-Momentum}, \hyperlink{classvertex__lcfi_1_1VertexMultiplicity_a7978c22b3a3d3f817517bed7b2e27f01}{vertex\-\_\-lcfi\-::\-Vertex\-Multiplicity}, and \hyperlink{classvertex__lcfi_1_1PerEventIPFitter_aa8cbc3344fa0ceb898114d1fb05f3941}{vertex\-\_\-lcfi\-::\-Per\-Event\-I\-P\-Fitter}.

\hypertarget{classvertex__lcfi_1_1Algo_a24d0b4312ea4d6738e2a55453b59574d}{\index{vertex\-\_\-lcfi\-::\-Algo@{vertex\-\_\-lcfi\-::\-Algo}!set\-Double\-Parameter@{set\-Double\-Parameter}}
\index{set\-Double\-Parameter@{set\-Double\-Parameter}!vertex_lcfi::Algo@{vertex\-\_\-lcfi\-::\-Algo}}
\paragraph[{set\-Double\-Parameter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class I\-N\-T\-Y\-P\-E, class O\-U\-T\-T\-Y\-P\-E$>$ virtual void {\bf vertex\-\_\-lcfi\-::\-Algo}$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$\-::set\-Double\-Parameter (
\begin{DoxyParamCaption}
\item[{const string \&}]{Parameter, }
\item[{const double}]{Value}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classvertex__lcfi_1_1Algo_a24d0b4312ea4d6738e2a55453b59574d}


Set Double Parameter. 

Set a double parameter 
\begin{DoxyParams}{Parameters}
{\em Parameter} & String of parameter name \\
\hline
{\em Value} & double of parameter value \\
\hline
\end{DoxyParams}
\hypertarget{classvertex__lcfi_1_1Algo_a087e8ecc0029473208a97100f4a966e5}{\index{vertex\-\_\-lcfi\-::\-Algo@{vertex\-\_\-lcfi\-::\-Algo}!set\-Pointer\-Parameter@{set\-Pointer\-Parameter}}
\index{set\-Pointer\-Parameter@{set\-Pointer\-Parameter}!vertex_lcfi::Algo@{vertex\-\_\-lcfi\-::\-Algo}}
\paragraph[{set\-Pointer\-Parameter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class I\-N\-T\-Y\-P\-E, class O\-U\-T\-T\-Y\-P\-E$>$ virtual void {\bf vertex\-\_\-lcfi\-::\-Algo}$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$\-::set\-Pointer\-Parameter (
\begin{DoxyParamCaption}
\item[{const string \&}]{Parameter, }
\item[{void $\ast$}]{Value}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classvertex__lcfi_1_1Algo_a087e8ecc0029473208a97100f4a966e5}


Set Pointer Parameter. 

Set a pointer parameter 
\begin{DoxyParams}{Parameters}
{\em Parameter} & String of parameter name \\
\hline
{\em Value} & pointer to void \\
\hline
\end{DoxyParams}
\hypertarget{classvertex__lcfi_1_1Algo_accfd43386452b66fcefb2ba4cdcbd196}{\index{vertex\-\_\-lcfi\-::\-Algo@{vertex\-\_\-lcfi\-::\-Algo}!set\-String\-Parameter@{set\-String\-Parameter}}
\index{set\-String\-Parameter@{set\-String\-Parameter}!vertex_lcfi::Algo@{vertex\-\_\-lcfi\-::\-Algo}}
\paragraph[{set\-String\-Parameter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class I\-N\-T\-Y\-P\-E, class O\-U\-T\-T\-Y\-P\-E$>$ virtual void {\bf vertex\-\_\-lcfi\-::\-Algo}$<$ I\-N\-T\-Y\-P\-E, O\-U\-T\-T\-Y\-P\-E $>$\-::set\-String\-Parameter (
\begin{DoxyParamCaption}
\item[{const string \&}]{Parameter, }
\item[{const string \&}]{Value}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classvertex__lcfi_1_1Algo_accfd43386452b66fcefb2ba4cdcbd196}


Set String Parameter. 

Set a string parameter 
\begin{DoxyParams}{Parameters}
{\em Parameter} & String of parameter name \\
\hline
{\em Value} & String of parameter value \\
\hline
\end{DoxyParams}


The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
algo.\-h\end{DoxyCompactItemize}
