Taxonomy Categories:
Member Functions:
Interface Category:
API.
Inherits From:
MReferenceCounted
Inherited By:
TLocalServiceDefinition
TNetworkServiceDefinition
TStandardServiceDefinition
TLocalServiceDefinition
Purpose:
Defines a service.
Instantiation:
TServiceDefinition is an abstract class and cannot be instantiated. Classes can be derived from TServiceDefinition to define specific services.
Deriving Classes:
All derived classes must provide implementations for the member functions CreateServiceReference, CreateParallelServiceDefinition, Activate and CreateChannel.
Concurrency:
Not multithread safe.
Resource Use:
No special requirements.
Other Considerations:
TServiceDefinitions cannot be copied.
Member Function: TServiceDefinition::CreateServiceReference
virtual TServiceReference * CreateServiceReference (TMemoryHeap * whereToCreate =NIL)
Interface Category:
API.
Purpose:
Creates a reference to this service.
Calling Context:
Called to create a reference to a service.
Parameters:
- TMemoryHeap * whereToCreate =NIL -The heap from which storage should be allocated for the returned object.
Return Value:
A reference to the service that is defined by this service definition.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
Derived classes must implement this member function.
TServiceDefinition ()
Interface Category:
API.
Purpose:
Default constructor.
Calling Context:
Called by the stream-in operators and anywhere the definition of a TServiceDefinition is desired.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
This constructor is protected as only derived classes are allowed to be instantiated.
virtual ~ TServiceDefinition ()
Interface Category:
API.
Purpose:
Destructor.
Calling Context:
Called by the member function Unreachable to destroy this object when the reference count indicates this object is no longer accessible.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
Derived classes should declare private destructors so that only the member function Unreachable will be able to call the destructor.
virtual void Unreachable ()
Interface Category:
API.
Purpose:
Deletes this object when all references to it are gone.
Calling Context:
Called when all references to this object are gone.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.