Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

AcsAlarmPublisher.h

Go to the documentation of this file.
00001 #ifndef ACS_ALARM_PUBLISHER_H 00002 #define ACS_ALARM_PUBLISHER_H 00003 00004 #include "AlarmSupplier.h" 00005 #include "ASIMessage.h" 00006 00007 namespace laserSource 00008 { 00009 /* 00010 * Concrete alarm publisher which uses ACS Notification Channel 00011 * for communication mechanism to send alarms to the laser alarm server. 00012 * The Notification-Service-related functionality is encapsulated in 00013 * a separate class (which is used by this class), AlarmSupplier. 00014 */ 00015 class AcsAlarmPublisher 00016 { 00017 public: 00018 AcsAlarmPublisher(std::string topicName); 00019 virtual ~AcsAlarmPublisher(); 00020 00021 /* 00022 * Method to publish an alarm to the laser alarm server. 00023 * @param msg the ASIMessage to publish. 00024 */ 00025 virtual bool publishAlarm(acsalarm::ASIMessage msg); 00026 00027 private: 00028 AlarmSupplier * alarmSupplier; 00029 Logging::Logger::LoggerSmartPtr myLoggerSmartPtr; 00030 00034 CosNaming::NamingContext_var getNamingService(); 00035 00043 static CosNaming::NamingContext_var naming_v; 00044 }; 00045 }; 00046 00047 #endif

Generated on Thu Apr 30 02:30:48 2009 for ACS C++ API by doxygen 1.3.8