LSSTApplications  11.0-13-gbb96280,12.1.rc1,12.1.rc1+1,12.1.rc1+2,12.1.rc1+5,12.1.rc1+8,12.1.rc1-1-g06d7636+1,12.1.rc1-1-g253890b+5,12.1.rc1-1-g3d31b68+7,12.1.rc1-1-g3db6b75+1,12.1.rc1-1-g5c1385a+3,12.1.rc1-1-g83b2247,12.1.rc1-1-g90cb4cf+6,12.1.rc1-1-g91da24b+3,12.1.rc1-2-g3521f8a,12.1.rc1-2-g39433dd+4,12.1.rc1-2-g486411b+2,12.1.rc1-2-g4c2be76,12.1.rc1-2-gc9c0491,12.1.rc1-2-gda2cd4f+6,12.1.rc1-3-g3391c73+2,12.1.rc1-3-g8c1bd6c+1,12.1.rc1-3-gcf4b6cb+2,12.1.rc1-4-g057223e+1,12.1.rc1-4-g19ed13b+2,12.1.rc1-4-g30492a7
LSSTDataManagementBasePackage
CommandEvent.h
Go to the documentation of this file.
1 // -*- lsst-c++ -*-
2 
3 /*
4  * LSST Data Management System
5  * Copyright 2008-2015 AURA/LSST.
6  *
7  * This product includes software developed by the
8  * LSST Project (http://www.lsst.org/).
9  *
10  * This program is free software: you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation, either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the LSST License Statement and
21  * the GNU General Public License along with this program. If not,
22  * see <https://www.lsstcorp.org/LegalNotices/>.
23  */
24 
34 #ifndef LSST_CTRL_EVENTS_COMMANDEVENT_H
35 #define LSST_CTRL_EVENTS_COMMANDEVENT_H
36 
37 #include <cms/Connection.h>
38 #include <cms/Session.h>
39 #include <cms/BytesMessage.h>
40 
41 #include <stdlib.h>
42 #include <iostream>
43 
44 #include "lsst/base.h"
45 #include "lsst/ctrl/events/Event.h"
47 #include "lsst/utils/Utils.h"
49 
51 
52 namespace lsst {
53 namespace ctrl {
54 namespace events {
55 
61 class CommandEvent : public Event
62 {
63 public:
64 
65  static const std::string ORIG_HOSTNAME;
66  static const std::string ORIG_PROCESSID;
67  static const std::string ORIG_LOCALID;
68 
69  static const std::string DEST_HOSTNAME;
70  static const std::string DEST_PROCESSID;
71  static const std::string DEST_LOCALID;
72 
78  CommandEvent();
79 
86  CommandEvent(LocationId const& originator, LocationId const& destination, CONST_PTR(PropertySet)& psp);
87 
88 
95  CommandEvent(LocationId const& originator, LocationId const& destination, PropertySet const& ps);
96 
104  CommandEvent(LocationId const& originator, LocationId const& destination, PropertySet const& ps,
105  PropertySet const& filterable);
106 
114  CommandEvent(std::string const& runid, LocationId const& originator, LocationId const& destination,
115  CONST_PTR(PropertySet)& psp);
116 
124  CommandEvent(std::string const& runid, LocationId const& originator, LocationId const& destination,
125  PropertySet const& ps);
126 
135  CommandEvent(std::string const& runid, LocationId const& originator, LocationId const& destination,
136  PropertySet const& ps, PropertySet const& filterable);
137 
142  CommandEvent(cms::TextMessage *msg);
143 
147  virtual ~CommandEvent();
148 
152  PTR(LocationId) getOriginator() const;
153 
157  PTR(LocationId) getDestination() const;
158 
159 
160 private:
161  void _constructor(LocationId const& originator, LocationId const& destination);
162  virtual void populateHeader(cms::TextMessage *msg) const;
163 
164  void _init();
165 
166 };
167 
168 }}}
169 
170 #endif /*end LSST_CTRL_EVENTS_COMMANDEVENT_H*/
static const std::string DEST_LOCALID
Definition: CommandEvent.h:71
CommandEvent()
Creates CommandEvent which contains a PropertySet consisting of an origination location ID and a dest...
Definition: CommandEvent.cc:51
static const std::string ORIG_HOSTNAME
Definition: CommandEvent.h:65
defines the LocationId class
static const std::string ORIG_PROCESSID
Definition: CommandEvent.h:66
#define CONST_PTR(...)
Definition: base.h:47
boost::shared_ptr< LocationId > getDestination() const
retrieve an object containing the Desination LocationId
virtual void populateHeader(cms::TextMessage *msg) const
populate a cms::TextMessage header with properties
lsst::daf::base::PropertySet PropertySet
Definition: Wcs.cc:59
Representation of an LSST CommandEvent.
Definition: CommandEvent.h:61
static const std::string DEST_PROCESSID
Definition: CommandEvent.h:70
void _constructor(LocationId const &originator, LocationId const &destination)
defines the Event class
static const std::string ORIG_LOCALID
Definition: CommandEvent.h:67
virtual ~CommandEvent()
destructor
Representation of an LSST Event.
Definition: Event.h:61
Class for storing generic metadata.
Definition: PropertySet.h:82
#define PTR(...)
Definition: base.h:41
Represent process that created an event.
Definition: LocationId.h:52
static const std::string DEST_HOSTNAME
Definition: CommandEvent.h:69
Interface for PropertySet class.
boost::shared_ptr< LocationId > getOriginator() const
retrieve an object containing the Originator LocationId