Class: TPropertyID

Declaration: Property.h

Taxonomy Categories:

Member Functions:


Interface Category:

API.

Inherits From:

MCollectible

Inherited By:

TPropertyIDFor

Purpose:

Property identifier objects encapsulate a name/type pair, where name is user-defined and type represents the type of the associated value. Identifiers can be used to construct property objects, to construct property queries, and to retrieve multiple properties in a single call.

Instantiation:

Allocate on the heap or the stack. Safe to allocate at static constructor time.

Deriving Classes:

TPropertyID is intended to be derived only by TPropertyIDFor<AType>.

Concurrency:

Multithread safe.

Resource Use:

No special requirements.

Member Function: TPropertyID::TPropertyID

  1. TPropertyID ()
  2. TPropertyID (const TPropertyID & copy)

Interface Category:

API.

Purpose:

  1. Default constructor; matches kInvalid.
  2. Copy constructor.

Calling Context:

  1. Called by the stream-in operators and to create an instance to assign to.
  2. Called to copy an object.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::operator=

TPropertyID & operator =(const TPropertyID & right)

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.

Member Function: TPropertyID::~TPropertyID

~ TPropertyID ()

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:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::operator==

bool operator ==(const TPropertyID & right) const

Interface Category:

API.

Purpose:

Determines if this property identifier is equal to its argument.

Calling Context:

Called to test the equivalence of two objects.

Parameters:

Return Value:

Returns true if the property identifiers are equal.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::operator!=

bool operator != (const TPropertyID & right) const

Interface Category:

API.

Purpose:

Determines if this property identifier is different from its argument.

Calling Context:

Called to test the equivalence of two objects.

Parameters:

Return Value:

Returns true if the property identifiers are not equal.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::GetName

void GetName (TPropertyName & fillin) const

Interface Category:

API.

Purpose:

Retrieves the name component of this property identifier.

Calling Context:

Call this function directly.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::AllowsPolymorphicValues

bool AllowsPolymorphicValues () const

Interface Category:

API.

Purpose:

Determines if an object represented by this property identifier allows polymorphic values (that is, it allows storage of derived classes of AType).

Calling Context:

Call this function directly.

Parameters:

Return Value:

Returns true if the object allows polymorphic values.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::Exists

TPropertyQuery Exists () const

Interface Category:

API.

Purpose:

Produces a query which, when evaluated against an MQueryTarget, tests for the membership of the specified ID.

Calling Context:

Call this function directly.

Parameters:

Return Value:

A property query.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::Hash

virtual long Hash () const

Interface Category:

API.

Purpose:

Produces a hash key for this object.

Calling Context:

Call this function directly.

Parameters:

Return Value:

The hash key.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::IsEqual

virtual bool IsEqual (const MCollectible * obj) const

Interface Category:

API.

Purpose:

Determines if this property identifier is equal to its argument.

Calling Context:

Call this function directly.

Parameters:

Return Value:

Returns true if the property identifiers are equal.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TPropertyID::operator>>=

virtual TStream & operator >>=(TStream & toWhere) const

Interface Category:

API.

Purpose:

Stream-out operator.

Calling Context:

Called to stream out data.

Parameters:

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.

Member Function: TPropertyID::operator<<=

virtual TStream & operator <<= (TStream & fromwhere)

Interface Category:

API.

Purpose:

Stream-in operator.

Calling Context:

Called to stream in data.

Parameters:

Return Value:

Returns a reference to the stream the object streams itself in from.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

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.