pvAccessCPP  7.1.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
beaconServerStatusProvider.h
1 
7 #ifndef BEACONSERVERSTATUSPROVIDER_H
8 #define BEACONSERVERSTATUSPROVIDER_H
9 
10 #ifdef epicsExportSharedSymbols
11 # define beaconServerStatusProviderEpicsExportSharedSymbols
12 # undef epicsExportSharedSymbols
13 #endif
14 
15 #include <pv/pvData.h>
16 #include <pv/sharedPtr.h>
17 
18 #ifdef beaconServerStatusProviderEpicsExportSharedSymbols
19 # define epicsExportSharedSymbols
20 # undef beaconServerStatusProviderEpicsExportSharedSymbols
21 #endif
22 
23 #include <shareLib.h>
24 
25 namespace epics {
26 namespace pvAccess {
27 
28 class ServerContext;
29 
33 class epicsShareClass BeaconServerStatusProvider
34 {
35 public:
36  typedef std::tr1::shared_ptr<BeaconServerStatusProvider> shared_pointer;
37  typedef std::tr1::shared_ptr<const BeaconServerStatusProvider> const_shared_pointer;
38 
39  virtual ~BeaconServerStatusProvider() {};
40 
44  virtual epics::pvData::PVField::shared_pointer getServerStatusData() = 0;
45 };
46 
51 {
52 public:
57 // DefaultBeaconServerStatusProvider(ServerContext::shared_pointer const & context);
58  DefaultBeaconServerStatusProvider(std::tr1::shared_ptr<ServerContext> const & context);
63 
64  virtual epics::pvData::PVField::shared_pointer getServerStatusData();
65 
66 private:
67  epics::pvData::PVStructure::shared_pointer _status;
68 };
69 
70 }
71 }
72 
73 #endif /* BEACONSERVERSTATUSPROVIDER_H */