PSEvt::EventKey Class Reference
[PSEvt package]

Class describing an address or key of the data object in event. More...

#include <EventKey.h>

List of all members.

Public Member Functions

 EventKey (const std::type_info *typeinfo, const Pds::Src &src, const std::string &key, const std::string &alias=std::string())
 Constructor for EventKey.
 EventKey ()
 default constructor
 ~EventKey ()
bool operator< (const EventKey &other) const
 Compare two keys.
void print (std::ostream &str) const
 Format the key.
const std::type_info * typeinfo () const
 Returns pointer to typeinfo object.
const Pds::Src & src () const
 Returns data source address.
const std::string & key () const
 Returns string key.
const std::string & alias () const
 Returns alias name.
bool validSrc () const
 Returns true if data source address is a valid address.

Static Public Member Functions

static Pds::Src noSource ()
 Returns special source address which is used for no-source data.
static Pds::Src anySource ()


Detailed Description

Class describing an address or key of the data object in event.

Event key consists of three components - object type represented by its typeinfo pointer, data source address, and string key.

This software was developed for the LCLS project. If you use all or part of it, please give an appropriate acknowledgment.

See also:
Event
Version:
$Id: EventKey.h 7525 2014-01-13 19:52:29Z salnikov@SLAC.STANFORD.EDU $
Author:
Andy Salnikov

Definition at line 58 of file EventKey.h.


Constructor & Destructor Documentation

PSEvt::EventKey::EventKey ( const std::type_info *  typeinfo,
const Pds::Src &  src,
const std::string &  key,
const std::string &  alias = std::string() 
) [inline]

Constructor for EventKey.

Parameters:
[in] typeinfo Pointer to typeinfo object
[in] src Data source address
[in] key String key
[in] alias Alias name

Definition at line 69 of file EventKey.h.

PSEvt::EventKey::EventKey (  )  [inline]

default constructor

Definition at line 75 of file EventKey.h.

PSEvt::EventKey::~EventKey (  )  [inline]

Definition at line 78 of file EventKey.h.


Member Function Documentation

const std::string& PSEvt::EventKey::alias (  )  const [inline]

Returns alias name.

Definition at line 103 of file EventKey.h.

Referenced by PSEvt::ProxyDict::putImpl().

static Pds::Src PSEvt::EventKey::anySource (  )  [inline, static]

Returns special source address which is used for proxies that can serve any source address

Definition at line 85 of file EventKey.h.

Referenced by PSEvt::ProxyDict::getImpl(), and print().

const std::string& PSEvt::EventKey::key (  )  const [inline]

Returns string key.

Definition at line 100 of file EventKey.h.

Referenced by PSEvt::DamageMap::find(), and PSEvt::ProxyDict::putImpl().

static Pds::Src PSEvt::EventKey::noSource (  )  [inline, static]

Returns special source address which is used for no-source data.

Definition at line 81 of file EventKey.h.

Referenced by PSEvt::Event::put(), and PSEvt::Event::putProxy().

bool PSEvt::EventKey::operator< ( const EventKey other  )  const

Compare two keys.

Definition at line 116 of file EventKey.cpp.

References PSEvt::cmpPdsSrc(), m_key, m_src, and m_typeinfo.

void PSEvt::EventKey::print ( std::ostream &  str  )  const

Format the key.

Definition at line 130 of file EventKey.cpp.

References anySource(), and validSrc().

Referenced by PSEvt::operator<<().

const Pds::Src& PSEvt::EventKey::src (  )  const [inline]

Returns data source address.

Definition at line 97 of file EventKey.h.

Referenced by PSEvt::DamageMap::find(), and PSEvt::ProxyDict::putImpl().

const std::type_info* PSEvt::EventKey::typeinfo (  )  const [inline]

Returns pointer to typeinfo object.

Definition at line 94 of file EventKey.h.

Referenced by PSEvt::DamageMap::find(), and PSEvt::ProxyDict::putImpl().

bool PSEvt::EventKey::validSrc (  )  const [inline]

Returns true if data source address is a valid address.

Definition at line 106 of file EventKey.h.

Referenced by print().


The documentation for this class was generated from the following files:
Generated on 19 Dec 2016 for PSANAclasses by  doxygen 1.4.7