\section{lccd\-:\-:Conditions\-Handler\-Base Class Reference}
\label{classlccd_1_1ConditionsHandlerBase}\index{lccd\-::\-Conditions\-Handler\-Base@{lccd\-::\-Conditions\-Handler\-Base}}


Base implementation of \doxyref{I\-Conditions\-Handler}{p.}{classlccd_1_1IConditionsHandler}.  




{\ttfamily \#include $<$Conditions\-Handler\-Base.\-hh$>$}

Inheritance diagram for lccd\-:\-:Conditions\-Handler\-Base\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.307692cm]{classlccd_1_1ConditionsHandlerBase}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\bf Conditions\-Handler\-Base} (const std\-::string \&{\bf name})\label{classlccd_1_1ConditionsHandlerBase_a3f861e05c6f01d3d3a5b808afa761e8e}

\begin{DoxyCompactList}\small\item\em Default c'tor -\/ need a name for the conditions data set. \end{DoxyCompactList}\item 
virtual void {\bf update\-Event} (lcio\-::\-L\-C\-Event $\ast$evt)
\begin{DoxyCompactList}\small\item\em Retrieves the new conditions data if required by evt-\/$>$get\-Timestamp() and adds a collection to event with its name. \end{DoxyCompactList}\item 
virtual void {\bf update} ({\bf L\-C\-C\-D\-Time\-Stamp} timestamp)=0
\begin{DoxyCompactList}\small\item\em Retrieves the new conditions data if required by timestamp. \end{DoxyCompactList}\item 
virtual lcio\-::\-L\-C\-Collection $\ast$ {\bf current\-Collection} ()\label{classlccd_1_1ConditionsHandlerBase_a65c3cebe55d4ba762d46d5f547625655}

\begin{DoxyCompactList}\small\item\em Returns the current collection of conditions data. \end{DoxyCompactList}\item 
virtual void {\bf register\-Change\-Listener} ({\bf I\-Conditions\-Change\-Listener} $\ast$cl)\label{classlccd_1_1ConditionsHandlerBase_afec351ed715314a2dc098e1ef1845ab7}

\begin{DoxyCompactList}\small\item\em Every \doxyref{I\-Conditions\-Change\-Listener}{p.}{classlccd_1_1IConditionsChangeListener} will be notified if the conditions data of this instance has changed. \end{DoxyCompactList}\item 
virtual void {\bf remove\-Change\-Listener} ({\bf I\-Conditions\-Change\-Listener} $\ast$cl)\label{classlccd_1_1ConditionsHandlerBase_a3231c12576bf08b59d698d8575dd48b0}

\begin{DoxyCompactList}\small\item\em Remove the specified listener from list of registered listeners ;. \end{DoxyCompactList}\item 
virtual bool {\bf is\-Change\-Listener\-Registered} ({\bf I\-Conditions\-Change\-Listener} $\ast$cl)\label{classlccd_1_1ConditionsHandlerBase_ae833f2028990ca19d30d832e94478eb0}

\begin{DoxyCompactList}\small\item\em checks if the change\-Listner is Registered \end{DoxyCompactList}\item 
virtual void {\bf register\-Default\-Collection} (lcio\-::\-L\-C\-Collection $\ast$col)=0\label{classlccd_1_1ConditionsHandlerBase_a321cded6d463ec51b10191304440868b}

\begin{DoxyCompactList}\small\item\em Register a pointer to a default collection which will be passed to the \doxyref{I\-Conditions\-Change\-Listener}{p.}{classlccd_1_1IConditionsChangeListener} if no data can be found for a given time stamp. \end{DoxyCompactList}\item 
virtual lcio\-::\-L\-C\-Collection $\ast$ {\bf default\-Collection} ()=0\label{classlccd_1_1ConditionsHandlerBase_aaad4aa711429174ef535f730a4cee6f2}

\begin{DoxyCompactList}\small\item\em The default collection registered with the handler. \end{DoxyCompactList}\item 
virtual lcio\-::\-L\-C\-Collection $\ast$ {\bf last\-Valid\-Collection} ()=0\label{classlccd_1_1ConditionsHandlerBase_af0ca1ede2e09725aeb68599af7c3af23}

\begin{DoxyCompactList}\small\item\em The last valid collection held by the handler. \end{DoxyCompactList}\item 
virtual const std\-::string {\bf name} ()
\begin{DoxyCompactList}\small\item\em The name of this conditions handler -\/ used, e.\-g. \end{DoxyCompactList}\item 
virtual {\bf L\-C\-C\-D\-Time\-Stamp} {\bf valid\-Since} ()\label{classlccd_1_1ConditionsHandlerBase_ad0b2a2bd8d59b75fd7e54f00d3267ac3}

\begin{DoxyCompactList}\small\item\em First timestamp for which the current conditions data is valid. \end{DoxyCompactList}\item 
virtual {\bf L\-C\-C\-D\-Time\-Stamp} {\bf valid\-Till} ()\label{classlccd_1_1ConditionsHandlerBase_a0fe77431b0ad540b92d676f08b117b01}

\begin{DoxyCompactList}\small\item\em Last timestamp for which the current conditions data is valid. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void {\bf notify\-Listeners} ()\label{classlccd_1_1ConditionsHandlerBase_ac1bb780bec2bdca51e389836eea25eed}

\begin{DoxyCompactList}\small\item\em Tell all registered listeners that the conditions data has changed. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
lcio\-::\-L\-C\-Collection $\ast$ {\bf \-\_\-col}
\begin{DoxyCompactList}\small\item\em The current collection of conditions data. \end{DoxyCompactList}\item 
std\-::string {\bf \-\_\-name}\label{classlccd_1_1ConditionsHandlerBase_ad5982acad84aea2c360fdeb152aaa5af}

\begin{DoxyCompactList}\small\item\em Name assigned with conditions data. \end{DoxyCompactList}\item 
{\bf L\-C\-C\-D\-Time\-Stamp} {\bf \-\_\-valid\-Since}
\begin{DoxyCompactList}\small\item\em First timestamp for which the current data is valid. \end{DoxyCompactList}\item 
{\bf L\-C\-C\-D\-Time\-Stamp} {\bf \-\_\-valid\-Till}
\begin{DoxyCompactList}\small\item\em Last timestamp for which the current data is valid. \end{DoxyCompactList}\item 
std\-::vector\\*
$<$ {\bf I\-Conditions\-Change\-Listener} $\ast$ $>$ {\bf \-\_\-change\-Listeners}\label{classlccd_1_1ConditionsHandlerBase_a1bd729d5c9892be340b3f6e45ca8a2f2}

\begin{DoxyCompactList}\small\item\em The registered change listeners. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Base implementation of \doxyref{I\-Conditions\-Handler}{p.}{classlccd_1_1IConditionsHandler}. 

Provides common code, e.\-g. registration and notfication of I\-Conditions\-Change\-Listeners.\par
 Subclasses need to implement the following methods\-: \doxyref{I\-Conditions\-Handler\-::update( L\-C\-C\-D\-Time\-Stamp timestamp )}{p.}{classlccd_1_1IConditionsHandler_afc5cb44b3b44e82358315314137f447e} \doxyref{I\-Conditions\-Handler\-::register\-Default\-Collection( lcio\-::\-L\-C\-Collection$\ast$ col)}{p.}{classlccd_1_1IConditionsHandler_a5d715cce6bf7eed20cd72dab43febc35} lcio\-::\-L\-C\-Collection$\ast$ \doxyref{I\-Conditions\-Handler\-::default\-Collection()}{p.}{classlccd_1_1IConditionsHandler_a31cbce3a859d11b9fe91d55b8fe19506} lcio\-::\-L\-C\-Collection$\ast$ \doxyref{I\-Conditions\-Handler\-::last\-Valid\-Collection()}{p.}{classlccd_1_1IConditionsHandler_add3bf3854840ab086285df1d9c4d7ded}

\begin{DoxyAuthor}{Author}
F.\-Gaede, S.\-Aplin, D\-E\-S\-Y 
\end{DoxyAuthor}
\begin{DoxyVersion}{Version}

\end{DoxyVersion}
\begin{DoxyParagraph}{Id\-:}
\doxyref{Conditions\-Handler\-Base.\-hh}{p.}{ConditionsHandlerBase_8hh_source},v 1.\-3 2007-\/04-\/27 13\-:21\-:31 gaede Exp 
\end{DoxyParagraph}


\subsection{Member Function Documentation}
\index{lccd\-::\-Conditions\-Handler\-Base@{lccd\-::\-Conditions\-Handler\-Base}!name@{name}}
\index{name@{name}!lccd::ConditionsHandlerBase@{lccd\-::\-Conditions\-Handler\-Base}}
\subsubsection[{name}]{\setlength{\rightskip}{0pt plus 5cm}virtual const std\-::string lccd\-::\-Conditions\-Handler\-Base\-::name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}\label{classlccd_1_1ConditionsHandlerBase_a3ae3fc825ceec5e40475cbc1a0058d63}


The name of this conditions handler -\/ used, e.\-g. 

as name of the collection in update( lcio\-::\-L\-C\-Event$\ast$ evt ).

\begin{DoxySeeAlso}{See Also}
update( lcio\-::\-L\-C\-Event$\ast$ evt ) 
\end{DoxySeeAlso}


Implements {\bf lccd\-::\-I\-Conditions\-Handler} \doxyref{}{p.}{classlccd_1_1IConditionsHandler_ad3ceb30f1efff718615b0473da668593}.



References \-\_\-name.



Referenced by lccd\-::\-Data\-File\-Handler\-::default\-Collection(), lccd\-::\-Simple\-File\-Handler\-::default\-Collection(), lccd\-::\-Data\-File\-Handler\-::last\-Valid\-Collection(), lccd\-::\-Simple\-File\-Handler\-::last\-Valid\-Collection(), lccd\-::\-Data\-File\-Handler\-::register\-Default\-Collection(), lccd\-::\-Simple\-File\-Handler\-::register\-Default\-Collection(), lccd\-::\-D\-B\-Cond\-Handler\-::register\-Default\-Collection(), lccd\-::\-D\-B\-File\-Handler\-::register\-Default\-Collection(), lccd\-::\-Simple\-File\-Handler\-::update(), lccd\-::\-D\-B\-Cond\-Handler\-::update(), lccd\-::\-D\-B\-File\-Handler\-::update(), and lccd\-::\-Data\-File\-Handler\-::update\-Event().

\index{lccd\-::\-Conditions\-Handler\-Base@{lccd\-::\-Conditions\-Handler\-Base}!update@{update}}
\index{update@{update}!lccd::ConditionsHandlerBase@{lccd\-::\-Conditions\-Handler\-Base}}
\subsubsection[{update}]{\setlength{\rightskip}{0pt plus 5cm}virtual void lccd\-::\-Conditions\-Handler\-Base\-::update (
\begin{DoxyParamCaption}
\item[{{\bf L\-C\-C\-D\-Time\-Stamp}}]{timestamp}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}\label{classlccd_1_1ConditionsHandlerBase_aafbe952660e65887cd9290b4e62ae256}


Retrieves the new conditions data if required by timestamp. 

Notifies all registered listeners\par
 See implementation classes for details. 

Implements {\bf lccd\-::\-I\-Conditions\-Handler} \doxyref{}{p.}{classlccd_1_1IConditionsHandler_afc5cb44b3b44e82358315314137f447e}.



Implemented in {\bf lccd\-::\-D\-B\-File\-Handler} \doxyref{}{p.}{classlccd_1_1DBFileHandler_a9ca320c3e756f0748b6b566d21f69b81}, {\bf lccd\-::\-D\-B\-Cond\-Handler} \doxyref{}{p.}{classlccd_1_1DBCondHandler_a3ea91c36bcdb5e79824c581802d0004e}, {\bf lccd\-::\-Simple\-File\-Handler} \doxyref{}{p.}{classlccd_1_1SimpleFileHandler_ab6f581b8f1b6f0da93b66758c7f9edc1}, and {\bf lccd\-::\-Data\-File\-Handler} \doxyref{}{p.}{classlccd_1_1DataFileHandler_aba38df4316e275dbe205626915fb09d3}.

\index{lccd\-::\-Conditions\-Handler\-Base@{lccd\-::\-Conditions\-Handler\-Base}!update\-Event@{update\-Event}}
\index{update\-Event@{update\-Event}!lccd::ConditionsHandlerBase@{lccd\-::\-Conditions\-Handler\-Base}}
\subsubsection[{update\-Event}]{\setlength{\rightskip}{0pt plus 5cm}void lccd\-::\-Conditions\-Handler\-Base\-::update\-Event (
\begin{DoxyParamCaption}
\item[{lcio\-::\-L\-C\-Event $\ast$}]{evt}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classlccd_1_1ConditionsHandlerBase_abf805ee1bb8c4ca332af9df520252fdf}


Retrieves the new conditions data if required by evt-\/$>$get\-Timestamp() and adds a collection to event with its name. 

Notifies all registered listeners 

Implements {\bf lccd\-::\-I\-Conditions\-Handler} \doxyref{}{p.}{classlccd_1_1IConditionsHandler_af358f80aaaaaf469d612dc93ea2d813e}.



Reimplemented in {\bf lccd\-::\-Data\-File\-Handler} \doxyref{}{p.}{classlccd_1_1DataFileHandler_a55d7c0741018701b2db015a26ea6f041}.



\subsection{Member Data Documentation}
\index{lccd\-::\-Conditions\-Handler\-Base@{lccd\-::\-Conditions\-Handler\-Base}!\-\_\-col@{\-\_\-col}}
\index{\-\_\-col@{\-\_\-col}!lccd::ConditionsHandlerBase@{lccd\-::\-Conditions\-Handler\-Base}}
\subsubsection[{\-\_\-col}]{\setlength{\rightskip}{0pt plus 5cm}lcio\-::\-L\-C\-Collection$\ast$ lccd\-::\-Conditions\-Handler\-Base\-::\-\_\-col\hspace{0.3cm}{\ttfamily [protected]}}\label{classlccd_1_1ConditionsHandlerBase_a6d481a992cca1056fa6f8dc9aa91df2e}


The current collection of conditions data. 



Referenced by current\-Collection(), lccd\-::\-Data\-File\-Handler\-::\-Data\-File\-Handler(), lccd\-::\-D\-B\-Cond\-Handler\-::\-D\-B\-Cond\-Handler(), lccd\-::\-D\-B\-File\-Handler\-::\-D\-B\-File\-Handler(), lccd\-::\-Simple\-File\-Handler\-::\-Simple\-File\-Handler(), lccd\-::\-Simple\-File\-Handler\-::update(), lccd\-::\-D\-B\-Cond\-Handler\-::update(), lccd\-::\-D\-B\-File\-Handler\-::update(), and lccd\-::\-Data\-File\-Handler\-::update\-Event().

\index{lccd\-::\-Conditions\-Handler\-Base@{lccd\-::\-Conditions\-Handler\-Base}!\-\_\-valid\-Since@{\-\_\-valid\-Since}}
\index{\-\_\-valid\-Since@{\-\_\-valid\-Since}!lccd::ConditionsHandlerBase@{lccd\-::\-Conditions\-Handler\-Base}}
\subsubsection[{\-\_\-valid\-Since}]{\setlength{\rightskip}{0pt plus 5cm}{\bf L\-C\-C\-D\-Time\-Stamp} lccd\-::\-Conditions\-Handler\-Base\-::\-\_\-valid\-Since\hspace{0.3cm}{\ttfamily [protected]}}\label{classlccd_1_1ConditionsHandlerBase_a1e96dfad68dbbddac02f0b54e6c686bd}


First timestamp for which the current data is valid. 



Referenced by lccd\-::\-Simple\-File\-Handler\-::update(), lccd\-::\-D\-B\-Cond\-Handler\-::update(), lccd\-::\-D\-B\-File\-Handler\-::update(), lccd\-::\-Data\-File\-Handler\-::update\-Event(), and valid\-Since().

\index{lccd\-::\-Conditions\-Handler\-Base@{lccd\-::\-Conditions\-Handler\-Base}!\-\_\-valid\-Till@{\-\_\-valid\-Till}}
\index{\-\_\-valid\-Till@{\-\_\-valid\-Till}!lccd::ConditionsHandlerBase@{lccd\-::\-Conditions\-Handler\-Base}}
\subsubsection[{\-\_\-valid\-Till}]{\setlength{\rightskip}{0pt plus 5cm}{\bf L\-C\-C\-D\-Time\-Stamp} lccd\-::\-Conditions\-Handler\-Base\-::\-\_\-valid\-Till\hspace{0.3cm}{\ttfamily [protected]}}\label{classlccd_1_1ConditionsHandlerBase_ac8e1bc0f821122a35ac7c4a1fdb7704f}


Last timestamp for which the current data is valid. 



Referenced by lccd\-::\-Simple\-File\-Handler\-::update(), lccd\-::\-D\-B\-Cond\-Handler\-::update(), lccd\-::\-D\-B\-File\-Handler\-::update(), lccd\-::\-Data\-File\-Handler\-::update\-Event(), and valid\-Till().



The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
Conditions\-Handler\-Base.\-hh\item 
Conditions\-Handler\-Base.\-cc\end{DoxyCompactItemize}
