sipxportlib  Version 3.3
OsNotification.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2006-2013 SIPez LLC. All rights reserved.
3 //
4 // Copyright (C) 2004-2006 SIPfoundry Inc.
5 // Licensed by SIPfoundry under the LGPL license.
6 //
7 // Copyright (C) 2004-2006 Pingtel Corp. All rights reserved.
8 // Licensed to SIPfoundry under a Contributor Agreement.
9 //
10 // $$
12 
13 
14 #ifndef _OsNotification_h_
15 #define _OsNotification_h_
16 
17 // SYSTEM INCLUDES
18 
19 // APPLICATION INCLUDES
20 #include <os/OsStatus.h>
21 #include <os/OsIntTypes.h>
22 #include <os/OsTime.h>
23 
24 // DEFINES
25 // MACROS
26 // EXTERNAL FUNCTIONS
27 // EXTERNAL VARIABLES
28 // CONSTANTS
29 // STRUCTS
30 // TYPEDEFS
31 // FORWARD DECLARATIONS
32 
33 //:Abstract base class for event notifications
34 
36 {
37 /* //////////////////////////// PUBLIC //////////////////////////////////// */
38 public:
39 
40 /* ============================ CREATORS ================================== */
41 
42  //:Default constructor
44  mSignalTimeout(OsTime::OS_INFINITY)
45  { };
46 
47  virtual
49  //:Destructor
50 
51 /* ============================ MANIPULATORS ============================== */
52 
53  virtual OsStatus signal(const intptr_t eventData) = 0;
54  //:Signal the occurrence of the event
55 
57  virtual void setTimeout(const OsTime& signalTimeout)
58  {
59  mSignalTimeout = signalTimeout;
60  };
61 
62 /* ============================ ACCESSORS ================================= */
63 
64 /* ============================ INQUIRY =================================== */
65 
66 /* //////////////////////////// PROTECTED ///////////////////////////////// */
67 protected:
69 
70 /* //////////////////////////// PRIVATE /////////////////////////////////// */
71 private:
72 
73  OsNotification(const OsNotification& rOsNotification);
74  //:Copy constructor (not implemented for this class)
75 
76  OsNotification& operator=(const OsNotification& rhs);
77  //:Assignment operator (not implemented for this class)
78 
79 };
80 
81 /* ============================ INLINE METHODS ============================ */
82 
83 #endif // _OsNotification_h_
84 
OsNotification()
Definition: OsNotification.h:43
Include this file if you want use C99 integer types with specified width and corresponding set of mac...
virtual ~OsNotification()
Definition: OsNotification.h:48
OsTime mSignalTimeout
Used by derived classes that support a timeout on signal.
Definition: OsNotification.h:60
virtual OsStatus signal(const intptr_t eventData)=0
Definition: OsNotification.h:35
OsStatus
Definition: OsStatus.h:27
virtual void setTimeout(const OsTime &signalTimeout)
Set timeout to use when signalling if supported by derived class.
Definition: OsNotification.h:57
Definition: OsTime.h:37
_W64 signed int intptr_t
Definition: stdint.h:118