sipXcallLib home page


PtCallCapabilities.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 _PtCallCapabilities_h_
12 #define _PtCallCapabilities_h_
13 
14 // SYSTEM INCLUDES
15 
16 // APPLICATION INCLUDES
17 #include "os/OsDefs.h"
18 
19 // DEFINES
20 // MACROS
21 // EXTERNAL FUNCTIONS
22 // EXTERNAL VARIABLES
23 // CONSTANTS
24 // STRUCTS
25 // TYPEDEFS
26 // FORWARD DECLARATIONS
27 class PtCall;
29 
30 //:The PtCallCapabilities object represents the initial capabilities interface for the PtCall.
31 // This object supports basic queries for the core classes.
32 // <p>
33 // Applications obtain the static PtCall capabilities via the PtProvider.getCallCapabilities()
34 // method, and the dynamic capabilities via the PtCall.getCapabilities() method. This Class
35 // is used to represent both static and dynamic capabilities.
36 // <p>
37 // Any object which extends the PtCall class should also extend this class to provide additional
38 // capability queries for that particular package.
39 // <p>
40 
42 {
43 /* //////////////////////////// PUBLIC //////////////////////////////////// */
44 public:
45 
46 /* ============================ CREATORS ================================== */
47 
49  //:Default constructor
50 
51  PtCallCapabilities(const PtCallCapabilities& rPtCallCapabilities);
52  //:Copy constructor
53 
54  virtual
56  //:Destructor
57 
58 /* ============================ MANIPULATORS ============================== */
59 
61  //:Assignment operator
62 
63 /* ============================ ACCESSORS ================================= */
64 
65 /* ============================ INQUIRY =================================== */
66 
67  UtlBoolean canConnect();
68  //:Returns true if the application can invoke Call.connect(), false otherwise.
71 
72 
73 
74  UtlBoolean isObservable();
75  //:Returns true if this Call can be observed, false otherwise.
78 
79 
80  UtlBoolean canDrop();
81  //:Returns true if the application can invoke the drop feature, false otherwise.
84 
85 
86 
87 
88  UtlBoolean canOffHook();
89  //:Returns true if the application can invoke the off hook feature, false otherwise.
92 
93 
94 
95  UtlBoolean canSetConferenceController();
96  //:Returns true if the application can set the conference controller, false otherwise.
99 
100 
101 
102  UtlBoolean canSetTransferController();
103  //:Returns true if the application can set the transfer controller, false otherwise.
106 
107 
108 
109  UtlBoolean canSetTransferEnable();
110  //:Returns true if the application can invoke the set transferring enabling feature, false
111  // otherwise. The value returned by this method is independent of the ability of the application
112  // to invoke the transfer feature.
113  // <p>
114  // Applications are not required to inform the implementation of the purpose of the
115  // consultation call and may rely upon the default value returned by the
116  // CallControlCall.getTransferEnable() method.
119 
120 
121 
122  UtlBoolean canSetConferenceEnable();
123  //:Returns true if the application can invoke the set conferencing enabling feature, false
124  // otherwise. The value returned by this method is independent of the ability of the application
125  // to invoke the conference feature.
126  // <p>
127  // Applications are not required to inform the implementation of the purpose of the
128  // consultation call and may rely upon the default value returned by the
129  // CallControlCall.getConferenceEnable() method.
132 
133 
134 
135  UtlBoolean canTransfer(PtCall call);
136  //:Returns true if the application can invoke the overloaded transfer feature which takes a Call
137  // as an argument, false otherwise.
138  // <p>
139  // The argument provided is for typing purposes only. The particular instance of the object
140  // given is ignored and not used to determine the capability outcome is any way.
141  // <p>
145 
146 
147 
148  UtlBoolean canTransfer(UtlString destination);
149  //:Returns true if the application can invoke the overloaded transfer feature which takes a
150  // destination string as an argument, false otherwise.
151  // <p>
152  // The argument provided is for typing purposes only. The particular instance of the object
153  // given is ignored and not used to determine the capability outcome is any way.
154  // <p>
158 
159 
160  UtlBoolean canConference();
161  //:Returns true if the application can invoke the conference feature, false otherwise.
164 
165 
166 
167  UtlBoolean canAddParty();
168  //:Returns true if the application can invoke the add party feature, false otherwise.
171 
172 
173 
174  UtlBoolean canConsult(PtTerminalConnection tc, UtlString destination);
175  //:Returns true if the application can invoke the overloaded consult feature which takes a
176  // TerminalConnection and string as arguments, false otherwise.
177  // <p>
178  // The arguments provided are for typing purposes only. The particular instances of the
179  // objects given are ignored and not used to determine the capability outcome is any way.
184 
185 
186 
187  UtlBoolean canConsult(PtTerminalConnection tc);
188  //:Returns true if the application can invoke the overloaded consult feature which takes a
189  // TerminalConnection as an argument, false otherwise.
190  // <p>
191  // The arguments provided are for typing purposes only. The particular instances of the
192  // objects given are ignored and not used to determine the capability outcome is any way.
196 
197 /* //////////////////////////// PROTECTED ///////////////////////////////// */
198 protected:
199 
200 /* //////////////////////////// PRIVATE /////////////////////////////////// */
201 private:
202 
203 };
204 
205 /* ============================ INLINE METHODS ============================ */
206 
207 #endif // _PtCallCapabilities_h_
UtlBoolean canSetConferenceController()
retcode: true if the application can invoke the off hook feature retcode: false otherwise.
UtlBoolean canSetTransferEnable()
retcode: true if the application can set the transfer controller retcode: false otherwise.
UtlBoolean canDrop()
retcode: True if this Call can be observed retcode: false otherwise.
UtlBoolean canConsult(PtTerminalConnection tc, UtlString destination)
retcode: True if the application can invoke the add party feature, retcode: false otherwise...
UtlBoolean canSetTransferController()
retcode: true if the application can set the conference controller retcode: false otherwise...
UtlBoolean isObservable()
retcode: True if the application can perform a connect retcode: false otherwise.
UtlBoolean canOffHook()
retcode: True if the application can invoke the drop feature retcode: false otherwise.
UtlBoolean canSetConferenceEnable()
retcode: True if the application can invoke the set transferring enabling feature, retcode: false otherwise.
Definition: PtCallCapabilities.h:41
Definition: PtTerminalConnection.h:139
UtlBoolean canAddParty()
retcode: True if the application can invoke the conference feature, retcode: false otherwise...
UtlBoolean canTransfer(PtCall call)
retcode: True if the application can invoke the set conferencing enabling feature, retcode: false otherwise.
UtlBoolean canConnect()
virtual ~PtCallCapabilities()
Definition: PtCall.h:253
UtlBoolean canConference()
param: (in) destination - This argument is used for typing information to determine the overloaded ve...
PtCallCapabilities & operator=(const PtCallCapabilities &rhs)