![](../../Home/Icons/Home.gif)
![](../icons/UpCNM.gif)
![](../icons/CNMContext.gif)
![](../../Home/Icons/Search.gif)
Taxonomy Categories:
Member Functions:
Interface Category:
API.
Inherits From:
TModel
Inherited By:
None.
Purpose:
This model is a list of document components. Its primary purpose is to support data exchange of document components. This model can also serve as a base class for models that want to provide simple embedding support.
Instantiation:
Allocate on the heap or the stack.
Deriving Classes:
This model is provided as a standard transport for document components. It will not usually be derived from.
Concurrency:
Not multithread safe.
Resource Use:
No special requirements.
- TEmbedderModel ()
- TEmbedderModel (const TEmbedderModel &)
- TEmbedderModel (TDocumentComponent* aChildToEmbed)
Interface Category:
API.
Purpose:
- Default constructor.
- Copy constructor.
- Creates an embedder model with an embedded component.
Calling Context:
- Called to create an empty model.
- Called to copy an object.
- Call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
virtual ~ TEmbedderModel ()
Interface Category:
API.
Purpose:
Destructor.
Calling Context:
Called to destroy an object.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TEmbedderModel::CreateSelection
virtual TModelSelection * CreateSelection () const
Interface Category:
API.
Purpose:
Creates a compatible selection for TEmbedderModels. It simply creates a TModelSelection.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Returns a default selection on this model.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TEmbedderModel::AdoptAndEmbed
virtual void AdoptAndEmbed (TDocumentComponent *)
Interface Category:
API.
Purpose:
Adopts the component and adds it to the embedding hierarchy.
Calling Context:
Call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
Preconditions:
Assertion (TDocumentComponent* != NIL).
Member Function: TEmbedderModel::OrphanAndUnembed
virtual TDocumentComponent * OrphanAndUnembed (TDocumentComponent &)
Interface Category:
API.
Purpose:
Orphans an embedded component, removing it from the embedding hierarchy.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Returns the orphaned document component.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TEmbedderModel::CreateComponentIterator
virtual TIteratorOver < TDocumentComponent > * CreateComponentIterator () const
Interface Category:
API.
Purpose:
Creates an iterator over all the components embedded in this model.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Returns an iterator over all the components in the model.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
TEmbedderModel & operator =(const TEmbedderModel &)
Interface Category:
API.
Purpose:
Assignment operator.
Calling Context:
Called when an object is assigned to another compatible object.
Parameters:
Return Value:
Returns a const reference to the left-hand side object.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TEmbedderModel::operator>>=
virtual TStream & operator >>=(TStream &) const
Interface Category:
API.
Purpose:
Stream-out operator.
Calling Context:
Called to stream out data.
Parameters:
- TStream & -The stream to which the object streams itself out.
Return Value:
Returns a reference to the stream the object streams itself out to.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TEmbedderModel::operator<<=
virtual TStream & operator <<= (TStream &)
Interface Category:
API.
Purpose:
Stream-in operator.
Calling Context:
Called to stream in data.
Parameters:
- TStream & -The stream from which the object streams itself in.
Return Value:
Returns a reference to the stream the object streams itself in from.
Exceptions:
Throws a TInvalidVersionError if the version of the object on the stream is unknown to the version of the shared library installed.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TEmbedderModel::LookupForReading
static const TEmbedderModel * LookupForReading (const TModelReference &)
Interface Category:
API.
Purpose:
Looks up a model from a reference for read access.
Calling Context:
Called to access a model safely in a concurrent environment.
Parameters:
Return Value:
Returns a const pointer to a TModel instance.
Exceptions:
Throws TCompoundDocumentException::kModelDoesNotExist if the model is not in the document.
Throws TCompoundDocumentException::kModelNotLocked if the component containing the model is not locked.
Concurrency:
Not multithread safe.
Other Considerations:
Preconditions:
Assertion( the associated model is read locked or is not inside a document ).
Member Function: TEmbedderModel::LookupForWriting
static TEmbedderModel * LookupForWriting (const TModelReference &)
Interface Category:
API.
Purpose:
Looks up a model from a reference for read/write access.
Calling Context:
Called to access a model safely in a concurrent environment.
Parameters:
Return Value:
Returns a pointer to a TModel object.
Exceptions:
Throws TCompoundDocumentException::KModelDoesNotExist if the model is not in the document.
Throws TCompoundDocumentException::kModelNotLocked if the component containing the model is not read/write locked. To lock the component, a TDocumentComponentWriteEntry for the component must be in scope at the time of lookup. The model pointer must not be held outside the scope of the entry.
Concurrency:
Not multithread safe.
Other Considerations:
Preconditions:
Assertion( the associated model is read-write locked or is not inside a document ).
Member Function: TEmbedderModel::GetTypeDescription
static const TTypeDescription & GetTypeDescription ()
Interface Category:
API.
Purpose:
Returns the data type contained by this embedder model.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Returns the data type contained by this embedder model.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
This is a static member function.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.