Oracle Fusion Middleware C++ API Reference for Oracle Coherence
12c (12.1.2)

E26041-01

WritingPofHandler::Complex Class Reference

#include <coherence/io/pof/WritingPofHandler.hpp>

Inherits Object.

Inherited by WritingPofHandler::ComplexMap.

List of all members.


Detailed Description

A Complex object represents the current complex data structure in the POF stream.

Public Types

typedef spec::Handle Handle
 Complex Handle definition.
typedef spec::View View
 Complex View definition.
typedef spec::Holder Holder
 Complex Holder definition.

Public Member Functions

virtual void onValue (int32_t iPos)
 Notify the Complex object that a value has been encountered.
virtual bool isUniform () const
 Determine if the object encoding within the Complex type is uniform.
virtual int32_t getUniformType () const
 If the object encoding is using uniform encoding, obtain the type id of the uniform type.
virtual bool isSparse () const
 Determine if the position information is encoded with the values of the complex type, and if the Complex type is terminated in the POF stream with an illegal position (-1).
virtual Complex::Handle pop ()
 Pop this Complex object off the stack, returning the outer Complex object or NULL if there is none.
virtual Complex::View pop () const
 Pop this Complex object off the stack, returning the outer Complex object or NULL if there is none.

Protected Member Functions

 Complex (Complex::Handle hComplexCurrent, bool fEncodePosition)
 Construct a Complex object for a data collection or user type.
 Complex (Complex::Handle hComplexCurrent, bool fEncodePosition, int32_t nUniformTypeId)
 Construct a Complex object for a uniformly-typed data collection.

Protected Attributes

const bool m_fSparse
 Whether or not the position information is encoded.
const bool m_fUniform
 Whether or not values within the complex type are uniformly encoded.
const int32_t m_nTypeId
 The type ID, if uniform encoding is used.
FinalHandle< Complexf_hComplexOuter
 The Complex within which this Complex exists, to support nesting.

Constructor & Destructor Documentation

Complex ( Complex::Handle  hComplexCurrent,
bool  fEncodePosition 
) [protected]

Construct a Complex object for a data collection or user type.

Parameters:
hComplexCurrent the current Complex object or NULL
fEncodePosition true to encode the position information

Complex ( Complex::Handle  hComplexCurrent,
bool  fEncodePosition,
int32_t  nUniformTypeId 
) [protected]

Construct a Complex object for a uniformly-typed data collection.

Parameters:
hComplexCurrent the current Complex object or NULL
fEncodePosition true to encode the position information
nUniformTypeId the type identifier of the uniform type


Member Function Documentation

virtual void onValue ( int32_t  iPos  )  [virtual]

Notify the Complex object that a value has been encountered.

Parameters:
iPos the position that accompanied the value

Reimplemented in WritingPofHandler::ComplexMap.

virtual bool isUniform (  )  const [virtual]

Determine if the object encoding within the Complex type is uniform.

Returns:
true iff values within the Complex type are of a uniform type and are encoded uniformly

Reimplemented in WritingPofHandler::ComplexMap.

virtual int32_t getUniformType (  )  const [virtual]

If the object encoding is using uniform encoding, obtain the type id of the uniform type.

Returns:
the type id used for the uniform encoding

Reimplemented in WritingPofHandler::ComplexMap.

virtual bool isSparse (  )  const [virtual]

Determine if the position information is encoded with the values of the complex type, and if the Complex type is terminated in the POF stream with an illegal position (-1).

Returns:
true iff the complex value is a sparse type

virtual Complex::Handle pop (  )  [virtual]

Pop this Complex object off the stack, returning the outer Complex object or NULL if there is none.

Returns:
the outer Complex object or NULL if there is none

virtual Complex::View pop (  )  const [virtual]

Pop this Complex object off the stack, returning the outer Complex object or NULL if there is none.

Returns:
the outer Complex object or NULL if there is none


Member Data Documentation

const bool m_fSparse [protected]

Whether or not the position information is encoded.

This is true for user type properties and array elements.

const bool m_fUniform [protected]

Whether or not values within the complex type are uniformly encoded.

This is expected for arrays of primitive types, for example.


The documentation for this class was generated from the following file:
Copyright © 2000, 2013, Oracle and/or its affiliates. All rights reserved.