DWFToolkit::DWFContentPresentationReader Class Reference
[DWF Package API]

Collaboration diagram for DWFToolkit::DWFContentPresentationReader:

Collaboration graph
[legend]
List of all members.

Detailed Description

This class implements the required XML parsing handlers to compose toolkit objects from the content presentation documents and provide them via the typed callbacks.

Since:
7.2
This class contains the processing logic particular to the known versions of the content presentation documents. The algorithm is tuned specifically for this schema and is not intended to be generic.

Todo:
Provide filtering for content presentation parsing.

Definition at line 58 of file ContentPresentationReader.h.

Public Types

enum  teProviderType {
  eProvideNone = 0x00, eProvideVersion = 0x01, eProvidePresentations = 0x02, eProvideViews = 0x04,
  eProvidePropertyReferences = 0x08, eProvideNodes = 0x10, eProvideRefereceNodes = 0x20, eProvideModelViewNodes = 0x40,
  eProvideAttributes = 0x01, eProvideElements = 0x7E, eProvideAll = 0xFF
}

Public Member Functions

_DWFTK_API DWFContentPresentationReader (DWFPackageReader *pPackageReader=NULL, unsigned char nProviderFlags=eProvideAll) throw ()
virtual _DWFTK_API ~DWFContentPresentationReader () throw ()
virtual _DWFTK_API double provideVersion (double nVersion) throw ()
virtual _DWFTK_API DWFContentPresentationprovidePresentation (DWFContentPresentation *pPresentation) throw ()
virtual _DWFTK_API DWFContentPresentationViewprovideView (DWFContentPresentationView *pView) throw ()
virtual _DWFTK_API DWFPropertyReferenceprovidePropertyReference (DWFPropertyReference *pPropertyReference) throw ()
virtual _DWFTK_API DWFContentPresentationNodeprovideNode (DWFContentPresentationNode *pNode) throw ()
virtual _DWFTK_API DWFContentPresentationReferenceNodeprovideReferenceNode (DWFContentPresentationReferenceNode *pReferenceNode) throw ()
virtual _DWFTK_API DWFContentPresentationModelViewNodeprovideModelViewNode (DWFContentPresentationModelViewNode *pModelViewNode) throw ()
_DWFTK_API void notifyStartElement (const char *zName, const char **ppAttributeList) throw ()
_DWFTK_API void notifyEndElement (const char *zName) throw ()
_DWFTK_API void notifyStartNamespace (const char *zPrefix, const char *zURI) throw ()
_DWFTK_API void notifyEndNamespace (const char *zPrefix) throw ()
_DWFTK_API void notifyCharacterData (const char *zCData, int nLength) throw ()

Protected Attributes

DWFPackageReader_pPackageReader
DWFXMLElementBuilder _oDefaultElementBuilder
DWFXMLElementBuilder_pElementBuilder


Member Enumeration Documentation

enum DWFToolkit::DWFContentPresentationReader::teProviderType
 

These enumeration flags alter the behavior of the parser by restricting which elements are inflated into runtime objects. Generally this prevents unwanted object creation (and thus memory allocations) but in some cases, additional data processing can be avoided.

Enumerator:
eProvideNone  Parse the document only (no data objects will be created; no callbacks will be invoked.)
eProvideVersion  Invoke the provideVersion() attribute callback.
eProvidePresentations  Invoke the provideProperties() element callback.
eProvideViews  Invoke the provideView() element callback.
eProvidePropertyReferences  Invoke the providePropertyReferences() element callback.
eProvideNodes  Invoke the provideNode() element callback.
eProvideRefereceNodes  Invoke the provideReferenceNode() element callback.
eProvideModelViewNodes  Invoke the provideModelViewNode() element callback.
eProvideAttributes  Equivalent to eProvideVersion
eProvideElements  Equivalent to (eProvidePresentations | eProvideViews | eProvidePropertyReferences | eProvideNodes | eProvideRefereceNodes | eProvideModelViewNodes)
eProvideAll  Equivalent to (eProvideAttributes | eProvideElements)

Definition at line 68 of file ContentPresentationReader.h.


Constructor & Destructor Documentation

_DWFTK_API DWFToolkit::DWFContentPresentationReader::DWFContentPresentationReader DWFPackageReader pPackageReader = NULL,
unsigned char  nProviderFlags = eProvideAll
throw ()
 

Constructor

Parameters:
pPackageReader Provides the manifest document stream.
nProviderFlags A combination of teProviderType flags.
Exceptions:
None 

virtual _DWFTK_API DWFToolkit::DWFContentPresentationReader::~DWFContentPresentationReader  )  throw () [virtual]
 

Destructor

Exceptions:
None 


Member Function Documentation

_DWFTK_API void DWFToolkit::DWFContentPresentationReader::notifyCharacterData const char *  zCData,
int  nLength
throw ()
 

_DWFTK_API void DWFToolkit::DWFContentPresentationReader::notifyEndElement const char *  zName  )  throw ()
 

_DWFTK_API void DWFToolkit::DWFContentPresentationReader::notifyEndNamespace const char *  zPrefix  )  throw ()
 

_DWFTK_API void DWFToolkit::DWFContentPresentationReader::notifyStartElement const char *  zName,
const char **  ppAttributeList
throw ()
 

_DWFTK_API void DWFToolkit::DWFContentPresentationReader::notifyStartNamespace const char *  zPrefix,
const char *  zURI
throw ()
 

virtual _DWFTK_API DWFContentPresentationModelViewNode* DWFToolkit::DWFContentPresentationReader::provideModelViewNode DWFContentPresentationModelViewNode pModelViewNode  )  throw () [virtual]
 

Accepts presentation model view nodes.

Parameters:
pModelViewNode The new presentation model view node. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered presentation model view node.
Exceptions:
None 

virtual _DWFTK_API DWFContentPresentationNode* DWFToolkit::DWFContentPresentationReader::provideNode DWFContentPresentationNode pNode  )  throw () [virtual]
 

Accepts presentation nodes.

Parameters:
pNode The new presentation node. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered presentation node.
Exceptions:
None 

virtual _DWFTK_API DWFContentPresentation* DWFToolkit::DWFContentPresentationReader::providePresentation DWFContentPresentation pPresentation  )  throw () [virtual]
 

Accepts presentations.

Parameters:
pPresentation The new presentation. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered presentation.
Exceptions:
None 

virtual _DWFTK_API DWFPropertyReference* DWFToolkit::DWFContentPresentationReader::providePropertyReference DWFPropertyReference pPropertyReference  )  throw () [virtual]
 

Accepts property references.

Parameters:
pPropertyReference The new property reference. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered property reference.
Exceptions:
None 

virtual _DWFTK_API DWFContentPresentationReferenceNode* DWFToolkit::DWFContentPresentationReader::provideReferenceNode DWFContentPresentationReferenceNode pReferenceNode  )  throw () [virtual]
 

Accepts presentation reference nodes.

Parameters:
pReferenceNode The new presentation reference node. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered presentation reference node.
Exceptions:
None 

virtual _DWFTK_API double DWFToolkit::DWFContentPresentationReader::provideVersion double  nVersion  )  throw () [virtual]
 

Accepts the object definition document version number attribute.

Parameters:
nVersion The document version.
Returns:
The filtered document version.
Exceptions:
None 

virtual _DWFTK_API DWFContentPresentationView* DWFToolkit::DWFContentPresentationReader::provideView DWFContentPresentationView pView  )  throw () [virtual]
 

Accepts presentation views.

Parameters:
pView The new presentation view. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered presentation view.
Exceptions:
None 


Member Data Documentation

DWFXMLElementBuilder DWFToolkit::DWFContentPresentationReader::_oDefaultElementBuilder [protected]
 

Default building behavior and element object allocator for readers.

Definition at line 294 of file ContentPresentationReader.h.

DWFXMLElementBuilder* DWFToolkit::DWFContentPresentationReader::_pElementBuilder [protected]
 

This will point to the default builder initially. But implementation classes can alter this pointer as necessary but they should all use only this pointer to do the actual work.

Definition at line 301 of file ContentPresentationReader.h.

DWFPackageReader* DWFToolkit::DWFContentPresentationReader::_pPackageReader [protected]
 

DWF package content source.

Definition at line 288 of file ContentPresentationReader.h.


The documentation for this class was generated from the following file:
Generated on Tue Jan 6 22:40:44 2009 for Autodesk DWF Toolkit by  doxygen 1.4.5