Gaudi Framework, version v20r2

Generated: 18 Jul 2008

AlgorithmHistory Class Reference

#include <AlgorithmHistory.h>

Inheritance diagram for AlgorithmHistory:

Inheritance graph
[legend]
Collaboration diagram for AlgorithmHistory:

Collaboration graph
[legend]
List of all members.

Detailed Description

AlgorithmHistory class definition.

Author:
: Charles Leggett

Definition at line 28 of file AlgorithmHistory.h.

Public Types

typedef std::vector< Property * > PropertyList
typedef std::vector< const
AlgorithmHistory * > 
HistoryList

Public Member Functions

 AlgorithmHistory (const Algorithm &alg, const JobHistory *job)
 AlgorithmHistory (const std::string &algVersion, const std::string &algName, const std::string &algType, const PropertyList &props, const HistoryList &subHists)
virtual ~AlgorithmHistory ()
virtual const CLIDclID () const
 Retrieve reference to class definition structure.
const std::stringalgorithm_type () const
const std::stringalgorithm_version () const
const std::stringalgorithm_name () const
const Algorithmalgorithm () const
const PropertyListproperties () const
const HistoryListsubalgorithm_histories () const
const JobHistoryjobHistory () const

Static Public Member Functions

static const CLIDclassID ()
 Retrieve reference to class definition structure (static access).

Private Attributes

std::string m_algorithm_type
std::string m_algorithm_version
std::string m_algorithm_name
const Algorithmm_algorithm
PropertyList m_properties
HistoryList m_subalgorithm_histories
const JobHistorym_jobHistory


Member Typedef Documentation

typedef std::vector<Property*> AlgorithmHistory::PropertyList

Definition at line 33 of file AlgorithmHistory.h.

typedef std::vector<const AlgorithmHistory*> AlgorithmHistory::HistoryList

Definition at line 36 of file AlgorithmHistory.h.


Constructor & Destructor Documentation

AlgorithmHistory::AlgorithmHistory ( const Algorithm alg,
const JobHistory job 
) [explicit]

Definition at line 32 of file AlgorithmHistory.cpp.

References std::vector< _Tp, _Alloc >::begin(), std::vector< _Tp, _Alloc >::end(), m_subalgorithm_histories, std::vector< _Tp, _Alloc >::push_back(), and Algorithm::subAlgorithms().

00033 : 
00034   m_algorithm_type(System::typeinfoName(typeid(alg))),
00035   m_algorithm_version(alg.version()),
00036   m_algorithm_name(alg.name()),
00037   m_algorithm( &alg ),
00038   m_properties(alg.getProperties()),
00039   m_jobHistory(job)
00040 {
00041   assert( alg.subAlgorithms() != 0 );
00042 
00043   for ( vector<Algorithm*>::const_iterator
00044         ialg=alg.subAlgorithms()->begin();
00045         ialg!=alg.subAlgorithms()->end(); ++ ialg ) {
00046     m_subalgorithm_histories.push_back(new AlgorithmHistory(**ialg, job));
00047   }
00048 }

AlgorithmHistory::AlgorithmHistory ( const std::string algVersion,
const std::string algName,
const std::string algType,
const PropertyList props,
const HistoryList subHists 
) [explicit]

Definition at line 52 of file AlgorithmHistory.cpp.

00056                                                                 :
00057   m_algorithm_type(algType),   // FIXME type_info???
00058   m_algorithm_version(algVersion),
00059   m_algorithm_name(algName),
00060   m_algorithm(0),
00061   m_properties(props),
00062   m_subalgorithm_histories(subHists) {}

AlgorithmHistory::~AlgorithmHistory (  )  [virtual]

Definition at line 68 of file AlgorithmHistory.cpp.

References std::vector< _Tp, _Alloc >::begin(), std::vector< _Tp, _Alloc >::end(), and m_subalgorithm_histories.

00068                                     {
00069   for ( HistoryList::const_iterator
00070         iphist=m_subalgorithm_histories.begin();
00071         iphist!=m_subalgorithm_histories.end(); ++iphist ) {
00072     delete *iphist;
00073   }
00074 }


Member Function Documentation

virtual const CLID& AlgorithmHistory::clID (  )  const [inline, virtual]

Retrieve reference to class definition structure.

Reimplemented from HistoryObj.

Definition at line 76 of file AlgorithmHistory.h.

References classID().

00076 { return classID(); }

const CLID & AlgorithmHistory::classID (  )  [static]

Retrieve reference to class definition structure (static access).

Reimplemented from HistoryObj.

Definition at line 76 of file AlgorithmHistory.cpp.

Referenced by clID().

00076                                       {
00077 
00078   static CLID CLID_AlgorithmHistory = 56809101;  //from `clid AlgorithmHistory`
00079   return CLID_AlgorithmHistory;
00080 
00081 }

const std::string& AlgorithmHistory::algorithm_type (  )  const [inline]

Definition at line 80 of file AlgorithmHistory.h.

References m_algorithm_type.

Referenced by operator<<().

00080 { return m_algorithm_type; }

const std::string& AlgorithmHistory::algorithm_version (  )  const [inline]

Definition at line 83 of file AlgorithmHistory.h.

References m_algorithm_version.

Referenced by operator<<().

00083 { return m_algorithm_version; }

const std::string& AlgorithmHistory::algorithm_name (  )  const [inline]

Definition at line 86 of file AlgorithmHistory.h.

References m_algorithm_name.

Referenced by operator<<(), and HistorySvc::registerDataHistory().

00086 { return m_algorithm_name; }

const Algorithm* AlgorithmHistory::algorithm (  )  const [inline]

Definition at line 89 of file AlgorithmHistory.h.

References m_algorithm.

00089 { return m_algorithm; }

const PropertyList& AlgorithmHistory::properties (  )  const [inline]

Definition at line 92 of file AlgorithmHistory.h.

References m_properties.

Referenced by HistorySvc::dumpProperties(), and operator<<().

00092 { return m_properties; }

const HistoryList& AlgorithmHistory::subalgorithm_histories (  )  const [inline]

Definition at line 95 of file AlgorithmHistory.h.

References m_subalgorithm_histories.

Referenced by operator<<().

00096     { return m_subalgorithm_histories; }

const JobHistory* AlgorithmHistory::jobHistory (  )  const [inline]

Definition at line 99 of file AlgorithmHistory.h.

References m_jobHistory.

00099 { return m_jobHistory; }


Member Data Documentation

std::string AlgorithmHistory::m_algorithm_type [private]

Definition at line 41 of file AlgorithmHistory.h.

Referenced by algorithm_type().

std::string AlgorithmHistory::m_algorithm_version [private]

Definition at line 44 of file AlgorithmHistory.h.

Referenced by algorithm_version().

std::string AlgorithmHistory::m_algorithm_name [private]

Definition at line 47 of file AlgorithmHistory.h.

Referenced by algorithm_name().

const Algorithm* AlgorithmHistory::m_algorithm [private]

Definition at line 50 of file AlgorithmHistory.h.

Referenced by algorithm().

PropertyList AlgorithmHistory::m_properties [private]

Definition at line 53 of file AlgorithmHistory.h.

Referenced by properties().

HistoryList AlgorithmHistory::m_subalgorithm_histories [private]

Definition at line 56 of file AlgorithmHistory.h.

Referenced by AlgorithmHistory(), subalgorithm_histories(), and ~AlgorithmHistory().

const JobHistory* AlgorithmHistory::m_jobHistory [private]

Definition at line 59 of file AlgorithmHistory.h.

Referenced by jobHistory().


The documentation for this class was generated from the following files:
Generated at Fri Jul 18 12:06:45 2008 for Gaudi Framework, version v20r2 by Doxygen version 1.5.1 written by Dimitri van Heesch, © 1997-2004