This is Unofficial EPICS BASE Doxygen Site
requester.h
Go to the documentation of this file.
1 /* requester.h */
2 /*
3  * Copyright information and license terms for this software can be
4  * found in the file LICENSE that is included with the distribution
5  */
9 #ifndef REQUESTER_H
10 #define REQUESTER_H
11 #include <string>
12 
13 #ifdef epicsExportSharedSymbols
14 # define requesterEpicsExportSharedSymbols
15 # undef epicsExportSharedSymbols
16 #endif
17 
18 #include <pv/pvType.h>
19 #include <pv/sharedPtr.h>
20 
21 #ifdef requesterEpicsExportSharedSymbols
22 # define epicsExportSharedSymbols
23 # undef requesterEpicsExportSharedSymbols
24 #endif
25 
26 
27 #include <shareLib.h>
28 
29 namespace epics { namespace pvAccess {
30 
31 class Requester;
32 typedef std::tr1::shared_ptr<Requester> RequesterPtr;
33 
36 };
37 #define MESSAGE_TYPE_COUNT 4
38 
39 epicsShareExtern std::string getMessageTypeName(MessageType messageType);
40 
44 public:
46  virtual ~Requester(){}
51  virtual std::string getRequesterName() = 0;
54  virtual void message(std::string const & message,MessageType messageType = errorMessage);
55 };
56 
57 }}
58 namespace epics { namespace pvData {
59 using ::epics::pvAccess::Requester;
67 }}
68 #endif /* REQUESTER_H */
epicsShareExtern std::string getMessageTypeName(MessageType messageType)
Definition: requester.cpp:25
std::tr1::shared_ptr< Requester > RequesterPtr
Definition: requester.h:31
TODO only here because of the Lockable.
Definition: ntaggregate.cpp:16
Mark external symbols and entry points for shared libraries.
#define epicsShareExtern
Definition: shareLib.h:204
#define POINTER_DEFINITIONS(clazz)
Definition: sharedPtr.h:198
#define epicsShareClass
Definition: shareLib.h:206
Callback class for passing messages to a requester.
Definition: requester.h:43