34 #ifndef LSST_CTRL_EVENTS_EVENT_H
35 #define LSST_CTRL_EVENTS_EVENT_H
37 #include <cms/Connection.h>
38 #include <cms/Session.h>
39 #include <cms/Message.h>
48 #include "boost/property_tree/ptree.hpp"
64 static const std::string
TYPE;
118 Event(cms::TextMessage *msg);
238 void marshall(cms::TextMessage *msg);
247 template<typename T>
void add(std::
string const&
name, std::
string const& tag,
PropertySet const& properties, boost::property_tree::ptree& child);
255 bool addDataItem(std::
string const& typeInfo, boost::property_tree::ptree& item, std::
string const& key,
PropertySet& properties);
static const std::string STATUS
static const std::string TOPIC
table::Key< std::string > name
std::string getPubDate()
get the publication date of this Event, in ASCII
void _constructor(std::string const &runid, PropertySet const &properties, PropertySet const &filterable)
static const std::string RUNID
boost::shared_ptr< PropertySet > processTextMessage(cms::TextMessage *textMessage)
std::vector< std::string > getCustomPropertyNames()
return all custom property names
std::set< std::string > _keywords
static const std::string EVENTTIME
boost::shared_ptr< PropertySet > parsePropertySet(boost::property_tree::ptree child)
static const std::string QUEUE
void updateEventTime()
update the Event time to the current time
std::vector< std::string > getFilterablePropertyNames()
return all filterable property names
lsst::daf::base::PropertySet PropertySet
boost::shared_ptr< PropertySet > _filterable
long long getPubTime()
get the publication time of this Event
void setRunId(std::string runid)
set the RunId for this Event
static const std::string PUBTIME
virtual void populateHeader(cms::TextMessage *msg) const
populate a cms::TextMessage header with properties
Event()
Constructor for Event with no properties.
virtual ~Event()
destructor
long long getEventTime()
get the event creation time
bool addDataItem(std::string const &typeInfo, boost::property_tree::ptree &item, std::string const &key, PropertySet &properties)
std::string getRunId()
get the RunId for this Event
void setEventTime(long long nsecs)
set the event creation time
static const std::string TYPE
Representation of an LSST Event.
Class for storing generic metadata.
boost::shared_ptr< PropertySet > getCustomPropertySet() const
return all custom property set
void setStatus(std::string status)
set the Event status
static const std::string UNINITIALIZED
Interface for PropertySet class.
std::string getTopic()
get the Event topic
void marshall(cms::TextMessage *msg)
marshall values in this event into a cms::TextMessage
std::string getEventDate()
get the Event Date
boost::shared_ptr< PropertySet > _psp
std::string getType()
get the Event type
void setTopic(std::string topic)
set the Event topic
boost::shared_ptr< PropertySet > getPropertySet() const
retrieve the PropertySet for this Event
boost::shared_ptr< PropertySet > unmarshall(std::string const &text)
std::string getStatus()
get the Event status
void setPubTime(long long t)
set the publication time of this Event
void add(std::string const &name, std::string const &tag, PropertySet const &properties, boost::property_tree::ptree &child)