| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

Context Class Reference

A tag for identifying a unique context: a place, time, and optional detector. More...

#include <Context.h>

Collaboration diagram for Context:

[legend]
List of all members.

Public Member Functions

 Context ()
 Context (const Context &other)
 Context (Site::Site_t site, SimFlag::SimFlag_t flag, const TimeStamp &time=TimeStamp(), DetectorId::DetectorId_t det=DetectorId::kUnknown)
Contextoperator= (const Context &rhs)
virtual ~Context ()
const TimeStampGetTimeStamp () const
 Get the time stamp.
SimFlag::SimFlag_t GetSimFlag () const
 Get the simflag.
Site::Site_t GetSite () const
 Get the site.
DetectorId::DetectorId_t GetDetId () const
 Get the detector type.
void SetTimeStamp (const TimeStamp &ts)
 Set the time stamp.
void SetSimFlag (SimFlag::SimFlag_t flag)
 Set the simflag.
void SetSite (Site::Site_t site)
 Set the site.
void SetDetId (DetectorId::DetectorId_t det)
virtual std::string AsString (const char *option="") const
virtual bool IsValid () const

Protected Attributes

Site::Site_t mSite
SimFlag::SimFlag_t mSimFlag
TimeStamp mTimeStamp
DetectorId::DetectorId_t mDetId

Detailed Description

A tag for identifying a unique context: a place, time, and optional detector.

A context is defined as a timestamp, a site, what kind of data (MC or real)

Author:
Nathaniel Tagg
Version:
Revision
1.4
Date:
Date
2007/03/07 22:49:11
Created on: 2006.10.12

Definition at line 34 of file Context.h.


Constructor & Destructor Documentation

Context::Context (  ) 

Definition at line 16 of file Context.cc.

00017     : mSite(Site::kUnknown)
00018     , mSimFlag(SimFlag::kUnknown)
00019     , mTimeStamp(0,0)
00020     , mDetId(DetectorId::kUnknown)
00021 {
00022     // Default constructor (unknown detector, simflag, timestamp=now)
00023 }

Context::Context ( const Context other  ) 

Definition at line 38 of file Context.cc.

00039 {
00040     *this = other;
00041 }

Context::Context ( Site::Site_t  site,
SimFlag::SimFlag_t  flag,
const TimeStamp time = TimeStamp(),
DetectorId::DetectorId_t  det = DetectorId::kUnknown 
)

Definition at line 26 of file Context.cc.

00030     : mSite(site)
00031     , mSimFlag(flag)
00032     , mTimeStamp(time)
00033     , mDetId(det)
00034 {  
00035 }

virtual Context::~Context (  )  [inline, virtual]

Definition at line 47 of file Context.h.

00047 {};


Member Function Documentation

Context & Context::operator= ( const Context rhs  ) 

Definition at line 43 of file Context.cc.

00044 {
00045     if (this == &rhs) return *this;
00046 
00047     mSite = rhs.GetSite();
00048     mSimFlag = rhs.GetSimFlag();
00049     mTimeStamp = rhs.GetTimeStamp();
00050     mDetId = rhs.GetDetId();
00051 
00052     return *this;
00053 }

const TimeStamp& Context::GetTimeStamp (  )  const [inline]

Get the time stamp.

Definition at line 50 of file Context.h.

00050 { return mTimeStamp; }

SimFlag::SimFlag_t Context::GetSimFlag (  )  const [inline]

Get the simflag.

Definition at line 53 of file Context.h.

00053 { return mSimFlag; }

Site::Site_t Context::GetSite (  )  const [inline]

Get the site.

Definition at line 56 of file Context.h.

00056 { return mSite; }

DetectorId::DetectorId_t Context::GetDetId (  )  const [inline]

Get the detector type.

Definition at line 59 of file Context.h.

00059 { return mDetId; }

void Context::SetTimeStamp ( const TimeStamp ts  )  [inline]

Set the time stamp.

Definition at line 63 of file Context.h.

00063 { mTimeStamp = ts; }

void Context::SetSimFlag ( SimFlag::SimFlag_t  flag  )  [inline]

Set the simflag.

Definition at line 66 of file Context.h.

00066 { mSimFlag = flag; }

void Context::SetSite ( Site::Site_t  site  )  [inline]

Set the site.

Definition at line 69 of file Context.h.

00069 { mSite = site; }

void Context::SetDetId ( DetectorId::DetectorId_t  det  )  [inline]

Definition at line 72 of file Context.h.

00072 { mDetId = det; }

std::string Context::AsString ( const char *  option = ""  )  const [virtual]

Definition at line 72 of file Context.cc.

00073 {
00075 
00076     std::stringstream ss;
00077     ss << Site::AsString(mSite) << ", " 
00078        << SimFlag::AsString(mSimFlag) << ", "
00079        << mTimeStamp.AsString(option) << ", "
00080        << DetectorId::AsString(mDetId);
00081 
00082     return ss.str();
00083 }

bool Context::IsValid (  )  const [virtual]

Definition at line 86 of file Context.cc.

00087 {
00088     // Return true if this was initialized by default ctor
00089     // we can only test site, detector, simflag
00090     // 
00091     if( (mTimeStamp.GetSec()>0)
00092         && mSimFlag !=SimFlag::kUnknown
00093         && mSite != Site::kUnknown 
00094         )
00095         return false;
00096     return true;      
00097 }


Member Data Documentation

Site::Site_t Context::mSite [protected]

Definition at line 80 of file Context.h.

SimFlag::SimFlag_t Context::mSimFlag [protected]

Definition at line 81 of file Context.h.

TimeStamp Context::mTimeStamp [protected]

Definition at line 82 of file Context.h.

DetectorId::DetectorId_t Context::mDetId [protected]

Definition at line 83 of file Context.h.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:15:31 2011 for Context by doxygen 1.4.7