DWFToolkit::DWFEModelSection Class Reference
[DWF Package API]

#include "dwf/package/EModelSection.h"

Inheritance diagram for DWFToolkit::DWFEModelSection:

Inheritance graph
[legend]
Collaboration diagram for DWFToolkit::DWFEModelSection:

Collaboration graph
[legend]
List of all members.

Detailed Description

An EModel section encapsulates a 3D data model in the DWF package.

Since:
7.0.1
The type constant for these object is _DWF_FORMAT_EMODEL_TYPE_STRING (defined in dwf/Version.h)

Note:
Units should always be defined on an EModel section. This information allows applications processing, viewing, measuring, etc. this section to correctly interpret the graphics data. 3D models will be translated into unit space using the matrix obtained from DWFGraphicResource::transform(). The graphics transform and the units information are BOTH used, always. 3D model data is never assumed to be in any default unit space. 3D models with no unit information will be unitless; and any end-user processing will require assignment of unit information at that time.
Examples:

SimpleW3DStreamProcessor/SimpleW3DStreamProcessor.cpp.

Definition at line 61 of file EModelSection.h.

Public Types

typedef DWFWCharKeySkipList<
DWFEModelSection * > 
tMap
 This type defines a mapped collection of DWFEModelSection pointers.
typedef std::multimap< const
wchar_t *, DWFEModelSection *,
tDWFWCharCompareLess
tMultiMap
 This type defines a multi-value mapped collection of DWFEModelSection pointers.

Public Member Functions

typedef _DWFTK_STD_VECTOR (DWFEModelSection *) tList
 This type defines a list of DWFEModelSection pointers.
_DWFTK_API DWFEModelSection (const DWFString &zName, const DWFString &zTitle, DWFPackageReader *pPackageReader) throw ()
_DWFTK_API DWFEModelSection (const DWFString &zTitle, const DWFString &zObjectID, double nPlotOrder, const DWFSource &rSource, const DWFUnits *pUnits) throw ()
virtual _DWFTK_API ~DWFEModelSection () throw ()
_DWFTK_API DWFUnitsunits () const throw ()
_DWFTK_API DWFInterfacebuildInterface () throw ( DWFException )
_DWFTK_API const DWFResourcereadDescriptor (DWFSectionDescriptorReader *pSectionDescriptorReader=NULL) const throw ( DWFException )
_DWFTK_API void serializeXML (DWFXMLSerializer &rSerializer, unsigned int nFlags) throw ( DWFException )
_DWFTK_API const char * provideName (const char *zName) throw ()
_DWFTK_API double provideVersion (double nVersion) throw ()
_DWFTK_API double providePlotOrder (double nPlotOrder) throw ()
_DWFTK_API DWFUnitsprovideUnits (DWFUnits *pUnits) throw ()
_DWFTK_API DWFPropertyprovideProperty (DWFProperty *pProperty) throw ()
_DWFTK_API DWFResourceprovideResource (DWFResource *pResource) throw ()
_DWFTK_API DWFFontResourceprovideFontResource (DWFFontResource *pResource) throw ()
_DWFTK_API DWFGraphicResourceprovideGraphicResource (DWFGraphicResource *pResource) throw ()
_DWFTK_API DWFImageResourceprovideImageResource (DWFImageResource *pResource) throw ()
_DWFTK_API DWFContentPresentationResourceprovideContentPresentationResource (DWFContentPresentationResource *pResource) throw ()

Classes

class  Factory
 Class factory for DWFEModelSection objects. More...


Constructor & Destructor Documentation

_DWFTK_API DWFToolkit::DWFEModelSection::DWFEModelSection const DWFString zName,
const DWFString zTitle,
DWFPackageReader pPackageReader
throw ()
 

Constructor

This constructor is generally only used by the parsing process when the DWFPackageReader associated with (and providing read access to) the DWF package file is available. The subsequent binding makes it possible to read section content data from the DWF package.

Parameters:
zName A string that uniquely identifies the section in the DWF package.
zTitle The descriptive and display friendly title text.
pPackageReader Provides access to section content in the DWF package.
Exceptions:
None 

_DWFTK_API DWFToolkit::DWFEModelSection::DWFEModelSection const DWFString zTitle,
const DWFString zObjectID,
double  nPlotOrder,
const DWFSource rSource,
const DWFUnits pUnits
throw ()
 

Constructor

This constructor is generally used by applications and publishers for creating new section objects.

Parameters:
zTitle The descriptive and display friendly title text.
zObjectID Uniquely identifies the section.
nPlotOrder Indicates the initial position in the package to which the section was/will be published.
rSource Describes the original source of the data in the section (a drawing file, for example.)
pUnits Defines the units (for measure, etc.) that applications consuming this section should use for all graphics data within. A copy will be made of this object, the caller remains responsible for deleting this pointer.
Exceptions:
None 

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

Destructor

Exceptions:
None 


Member Function Documentation

_DWFTK_API DWFInterface* DWFToolkit::DWFEModelSection::buildInterface  )  throw ( DWFException ) [virtual]
 

Returns the interface associated with an EModel section.

This interface will be defined with the following constant data:

name: DWFInterface::kzEModel_Name href: DWFInterface::kzEModel_HRef id: DWFInterface::kzEModel_ID

Returns:
A pointer to a new interface object. This object will be allocated using the DWFCORE_ALLOC_OBJECT macro and must be deleted by the caller using the DWFCORE_FREE_OBJECT macro.
Exceptions:
DWFException 

Reimplemented from DWFToolkit::DWFSection.

_DWFTK_API DWFContentPresentationResource* DWFToolkit::DWFEModelSection::provideContentPresentationResource DWFContentPresentationResource pResource  )  throw ()
 

Accepts content presentation resource element objects

Parameters:
pResource The new resource. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered resource object.
Exceptions:
None 

_DWFTK_API DWFFontResource* DWFToolkit::DWFEModelSection::provideFontResource DWFFontResource pResource  )  throw ()
 

Accepts font resource element objects.

Parameters:
pResource The new resource. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered resource object.
Exceptions:
None 

_DWFTK_API DWFGraphicResource* DWFToolkit::DWFEModelSection::provideGraphicResource DWFGraphicResource pResource  )  throw ()
 

Accepts graphic resource element objects.

Parameters:
pResource The new resource. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered resource object.
Exceptions:
None 

_DWFTK_API DWFImageResource* DWFToolkit::DWFEModelSection::provideImageResource DWFImageResource pResource  )  throw ()
 

Accepts image resource element objects.

Parameters:
pResource The new resource. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered resource object.
Exceptions:
None 

_DWFTK_API const char* DWFToolkit::DWFEModelSection::provideName const char *  zName  )  throw ()
 

Accepts the section name attribute.

Parameters:
zName The section name.
Returns:
The filtered section name.
Exceptions:
None 

_DWFTK_API double DWFToolkit::DWFEModelSection::providePlotOrder double  nPlotOrder  )  throw ()
 

Accepts the section plot order attribute.

Parameters:
nPlotOrder The plot order.
Returns:
The filtered plot order.
Exceptions:
None 

_DWFTK_API DWFProperty* DWFToolkit::DWFEModelSection::provideProperty DWFProperty pProperty  )  throw ()
 

Accepts property element objects.

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

_DWFTK_API DWFResource* DWFToolkit::DWFEModelSection::provideResource DWFResource pResource  )  throw ()
 

Accepts resource element objects.

Parameters:
pResource The new resource. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered resource object.
Exceptions:
None 

_DWFTK_API DWFUnits* DWFToolkit::DWFEModelSection::provideUnits DWFUnits pUnits  )  throw ()
 

Accepts units element objects.

Parameters:
pUnits The new units. The acceptor is responsible for deleting this pointer with DWFCORE_FREE_OBJECT.
Returns:
The filtered units object.
Exceptions:
None 

_DWFTK_API double DWFToolkit::DWFEModelSection::provideVersion double  nVersion  )  throw ()
 

Accepts the descriptor document version attribute.

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

_DWFTK_API const DWFResource& DWFToolkit::DWFEModelSection::readDescriptor DWFSectionDescriptorReader pSectionDescriptorReader = NULL  )  const throw ( DWFException ) [virtual]
 

Locates the one descriptor resource in the section and parses it accordingly with the reader provided or the default reader implementation for this section by this object.

As a specialized section class, this class knows how to parse EModel section descriptor documents and build a data model from them. It derives this functionality by implementing the DWFEModelSectionDescriptorReader interface. There are two ways to affect the default parsing process. The first of which is to provide a non-NULL interface pointer to this method via the pSectionDescriptorReader parameter. This will bypass this object entirely and process the descriptor using the reader provided. Alternatively, this object can still be used to read the descriptor document but every provider callback can be intercepted using a filter. A filter is just another implementation of the DWFEModelSectionDescriptorReader set on this object before this call is made using the DWFSectionDescriptorReader::setFilter() method. When a filter is applied, the reader will provide data to the filter interface first and then, depending on how the filter responds, pass the data into the default (this object) provider callback.

Parameters:
pSectionDescriptorReader An optional interface pointer to an object that knows how to read and parse EModel section descriptor documents.
Returns:
A reference to the EModel descriptor document resource.
Exceptions:
DWFException 

Reimplemented from DWFToolkit::DWFSection.

Examples:
SimpleW3DStreamProcessor/SimpleW3DStreamProcessor.cpp.

_DWFTK_API void DWFToolkit::DWFEModelSection::serializeXML DWFXMLSerializer rSerializer,
unsigned int  nFlags
throw ( DWFException ) [virtual]
 

Reimplemented from DWFToolkit::DWFSection.

_DWFTK_API DWFUnits* DWFToolkit::DWFEModelSection::units  )  const throw () [inline]
 

Returns the units into which the 3D graphics will be transformed.

Returns:
A pointer to the units object (may be NULL)
Exceptions:
None 

Definition at line 192 of file EModelSection.h.


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