sipXcallLib home page


PtMultiCallMetaEvent.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2004-2006 SIPfoundry Inc.
3 // Licensed by SIPfoundry under the LGPL license.
4 //
5 // Copyright (C) 2004-2006 Pingtel Corp. All rights reserved.
6 // Licensed to SIPfoundry under a Contributor Agreement.
7 //
8 // $$
10 
11 #ifndef _PtMultiCallMetaEvent_h_
12 #define _PtMultiCallMetaEvent_h_
13 
14 // SYSTEM INCLUDES
15 // APPLICATION INCLUDES
16 #include "ptapi/PtMetaEvent.h"
17 #include "ptapi/PtCall.h"
18 
19 // DEFINES
20 // MACROS
21 // EXTERNAL FUNCTIONS
22 // EXTERNAL VARIABLES
23 // CONSTANTS
24 // STRUCTS
25 // TYPEDEFS
26 // FORWARD DECLARATIONS
27 
28 //:The <CODE>MultiCallMetaEvent</CODE> interface is the base interface for
29 // all multiple-call Call Meta events (multi-call MetaEvent).
30 // All multi-call MetaEvent's must extend this interface.
31 // Events which extend this interface are reported via the
32 // <CODE>CallListener</CODE> interface.
33 // <p>
34 // An individual <CODE>MultiCallMetaEvent</CODE>
35 // conveys, directly and with necessary details,
36 // what an application needs to know to respond to
37 // a multiple-call higher-level call event.
38 // The specific MultiCallMetaEvent event is indicated by
39 // the <CODE>Event.getID()</CODE>
40 // value returned by the event.
41 // <p>
42 // The core package defines events which are reported when
43 // high-level actions occur. The event IDs
44 // (as returned by <CODE>Event.getID()</CODE>) are:
45 // <CODE>MULTICALL_META_MERGE_STARTED</CODE>,
46 // <CODE>MULTICALL_META_MERGE_ENDED</CODE>,
47 // <CODE>MULTICALL_META_TRANSFER_STARTED</CODE> and
48 // <CODE>MULTICALL_META_TRANSFER_ENDED</CODE>.
49 
50 
52 {
53 /* //////////////////////////// PUBLIC //////////////////////////////////// */
54 public:
55 
57 
59  {
64  };
65 
66 /* ============================ CREATORS ================================== */
68  //:Default constructor
69 
71  int metaCode,
72  TaoClientTask *pClient,
73  int sipResponseCode,
74  const char* sipResponseText,
75  const char* callId = 0,
76  const char* newCallId = 0,
77  const char** oldCallIds = 0,
78  int numOldCalls = 0);
79 
80  PtMultiCallMetaEvent(const PtMultiCallMetaEvent& rPtMultiCallMetaEvent);
81  //:Copy constructor
82 
83  virtual
85  //:Destructor
86 
87 /* ============================ MANIPULATORS ============================== */
88 
90  //:Assignment operator
91 
92 /* ============================ ACCESSORS ================================= */
93 
94  PtStatus getNewCall(PtCall& rCall) const;
95  //:Returns the Call object associated with the result of the multiple-call operation
96  // reported by this MultiCallMetaEvent event.
100 
101  PtStatus getOldCalls(PtCall rCalls[], int size, int& rNumItems) const;
102  //:Returns an array of Call objects which were considered input to the multiple-call operation
103  // reported by this MultiCallMetaEvent event.
108 
109  PtStatus numOldCalls(int& count) const;
110  //:Returns the number of calls involved with this multicall event.
114 
115  static const char* className();
116  //:Returns the name of this class.
118 
119 /* ============================ INQUIRY =================================== */
120 
121  virtual PtBoolean isClass(const char* pClassName);
122  //:Determines if this object if of the specified type.
126 
127  virtual PtBoolean isInstanceOf(const char* pClassName);
128  //:Determines if this object is either an instance of or is derived from
129  //:the specified type.
133 
134 /* //////////////////////////// PROTECTED ///////////////////////////////// */
135 protected:
136 
137 /* //////////////////////////// PRIVATE /////////////////////////////////// */
138 private:
139 
140 };
141 
142 /* ============================ INLINE METHODS ============================ */
143 
144 #endif // _PtMultiCallMetaEvent_h_
PtStatus
Definition: PtDefs.h:49
PtEventId
Definition: PtEvent.h:83
Definition: PtMultiCallMetaEvent.h:62
virtual ~PtMultiCallMetaEvent()
Definition: PtMultiCallMetaEvent.cpp:62
int PtBoolean
Definition: PtDefs.h:71
Definition: PtEvent.h:85
virtual PtBoolean isInstanceOf(const char *pClassName)
param: (in) pClassName - The string to compare with the name of this class. retcode: TRUE - If the gi...
Definition: PtMetaEvent.h:65
#define PT_CLASS_INFO_MEMBERS
Definition: PtDefs.h:73
PtMultiCallMetaEvent(PtEventId eventId=EVENT_INVALID)
Definition: PtMultiCallMetaEvent.cpp:29
static const char * className()
param: (out) count - The number of calls retcode: PT_SUCCESS - Success retcode: PT_PROVIDER_UNAVAILAB...
Definition: PtMultiCallMetaEvent.h:63
Definition: PtMultiCallMetaEvent.h:51
Definition: PtMultiCallMetaEvent.h:61
PtMultiCallMetaEventId
Definition: PtMultiCallMetaEvent.h:58
Definition: PtMultiCallMetaEvent.h:60
virtual PtBoolean isClass(const char *pClassName)
returns: Returns the string representation of the name of this class
PtStatus numOldCalls(int &count) const
param: (out) rCalls - An array of old Calls associated with this event&#39;s operation. param: (in) size - Size of the array. retcode: PT_SUCCESS - Success retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
Definition: PtMultiCallMetaEvent.cpp:94
PtStatus getOldCalls(PtCall rCalls[], int size, int &rNumItems) const
param: (out) rCalls - The result Call associated with this event. retcode: PT_SUCCESS - Success retco...
Definition: PtMultiCallMetaEvent.cpp:81
PtMultiCallMetaEvent & operator=(const PtMultiCallMetaEvent &rhs)
Definition: PtMultiCallMetaEvent.cpp:68
Definition: PtCall.h:253
Definition: TaoClientTask.h:50
PtStatus getNewCall(PtCall &rCall) const
Definition: PtMultiCallMetaEvent.cpp:75