![](../../Home/Icons/Home.gif)
![](../icons/UpCNM.gif)
![](../icons/CNMContext.gif)
![](../../Home/Icons/Search.gif)
Taxonomy Categories:
Member Functions:
Interface Category:
API.
Inherits From:
MRemoteDispatcher
Inherited By:
TTelephoneConferenceFeature
TTelephoneDropFeature
TTelephoneForwardFeature
TTelephoneHoldFeature
TTelephoneTransferFeature
Purpose:
Permits extension of basic telephone line functionality to accommodate advanced telephony features such as hold, transfer, conference, and forward. TTelephoneLineFeature defines a standard interface for accessing telephony features. Features are identified by means of TTypeDescriptions. Rather than instantiating TTelephoneLineFeature derived classes directly, Application Frameworks clients request telephony services via an intermediate handle object, TTelephoneLineFeatureControl.
Instantiation:
Allocate on the heap or the stack. Typically allocated on the heap by the telephone line derived classes.
Deriving Classes:
Standard derived classes are provided for the five most common telephony features. These derived classes have preassigned feature names and know how to create the standard feature control objects for their type (for example, TTelephoneHoldFeature creates a TTelephoneHoldFeatureControl), but they provide no activation or deactivation implementation.
New derived classes are required for additional features beyond the five listed above.
Derived classes must override the pure virtual functions GetFeatureType and CreateFeatureControl and must provide concrete hardware-specific implementations of the pure virtual functions Activate and Deactivate.
Concurrency:
Multithread safe.
Resource Use:
No special requirements.
virtual ~ TTelephoneLineFeature ()
Interface Category:
API.
Purpose:
Destructor.
Calling Context:
Called to destroy an object. Called automatically by the Telephony Framework when a feature is no longer needed.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual void GetFeatureType (TTypeDescription &) const
Interface Category:
API.
Purpose:
Must be overridden to provide the feature's type description.
Calling Context:
Called by a telephone line to identify the feature.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
Pure virtual member function.
virtual TToken UpdateStatus () const
Interface Category:
API.
Purpose:
Returns the current feature status.
Calling Context:
Called via the remote dispatcher mechanism in response to the client's request for a status update.
Parameters:
Return Value:
Returns a TToken containing the current feature status value. (Potential values are defined in the class TTelephoneStatusNotification.)
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual TTelephoneLineFeatureControl * CreateFeatureControl () const
Interface Category:
API.
Purpose:
Must be overridden to create the control object which gives the client access to a feature derived class.
Calling Context:
Called by a telephone line in response to a remote caller request.
Parameters:
Return Value:
Returns a pointer to the new control object.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
Pure virtual member function. The caller must assume responsibility for the storage referenced by the pointer returned.
virtual long Hash () const
Interface Category:
API.
Purpose:
Generates a hash value.
Calling Context:
Called by the collection classes to generate a hash value.
Parameters:
Return Value:
The numeric value of the hash.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual TStream & operator <<= (TStream & fromWhere)
Interface Category:
API.
Purpose:
Stream-in operator.
Calling Context:
Called by a telephone line to stream in data.
Parameters:
- TStream & fromWhere -The stream the object streams itself in from.
Return Value:
Returns a reference to the stream the object streams itself in from.
Exceptions:
Throws TInvalidVersionError if the versions don't match.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual TStream & operator >>=(TStream & toWhere) const
Interface Category:
API.
Purpose:
Stream-out operator.
Calling Context:
Called by a telephone line to stream out data.
Parameters:
- TStream & toWhere -The stream the object streams itself out to.
Return Value:
Returns a reference to the stream the object streams itself out to.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
- TTelephoneLineFeature ()
- TTelephoneLineFeature (const TTelephoneLineFeature &)
Interface Category:
API.
Purpose:
- Default constructor. Initialized in a deactivated state.
- Copy constructor.
Calling Context:
- Called by a telephone line via derived class constructors.
- Called by a telephone line via derived class copy constructors.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
TTelephoneLineFeature & operator =(const TTelephoneLineFeature &)
Interface Category:
API.
Purpose:
Assignment operator.
Calling Context:
Called when an object is assigned to another compatible object.
Parameters:
Return Value:
A non-const reference to the left-hand side object.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual void Activate ()
Interface Category:
API.
Purpose:
Must be overridden to do whatever is required by the specific telephony hardware to activate the feature derived class.
Calling Context:
Called via the remote dispatcher mechanism in response to the client's request to activate the feature.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
Pure virtual member function.
virtual void Deactivate ()
Interface Category:
API.
Purpose:
Must be overridden to do whatever is required by the specific telephony hardware to deactivate the feature derived class.
Calling Context:
Called via the remote dispatcher mechanism in response to the client's request to deactivate the feature.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
Pure virtual member function.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.