Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HIOUtilityPublish Class Reference

#include <HIOUtilityPublish.h>

Inheritance diagram for HIOUtilityPublish:

HInputHandler HOutputHandler

List of all members.

Public Member Functions

virtual void * BuildPRCModel (HOutputHandlerOptions *options, HC_KEY key)
HFileInputResult FileInputByKey (const unsigned short *FileName, HC_KEY key, HInputHandlerOptions *options)
HFileInputResult FileInputByKey (const char *FileName, HC_KEY key, HInputHandlerOptions *options)
HFileInputResult FileInputByKey (const wchar_t *FileName, HC_KEY key, HInputHandlerOptions *options)
HFileOutputResult FileOutputByKey (const char *filename, HC_KEY key, HOutputHandlerOptions *options)
HFileOutputResult FileOutputByKey (const unsigned short *filename, HC_KEY key, HOutputHandlerOptions *options)
HFileOutputResult FileOutputByKey (const wchar_t *filename, HC_KEY key, HOutputHandlerOptions *options)
char * GenerateJavascript (HBaseView *view)
const char * GetInputName ()
HInputHandlerStyle GetInputStyle ()
const char * GetInputTypesString ()
const char * GetOutputName ()
HOutputHandlerStyle GetOutputStyle ()
const char * GetOutputTypesString ()
 HIOUtilityPublish ()
void RegisterInputHandlerTypes ()
void RegisterOutputHandlerTypes ()
void ReleaseJavascript ()
virtual void WritePDFFromTemplate (wchar_t const *file_name, void *PRCModel, HOutputHandlerOptions *options, HPDFLayoutManager *layoutmanager, wchar_t const *javascript_file)
virtual void WriteSimplePDF (wchar_t const *file_name, void *PRCModel, HOutputHandlerOptions *options, wchar_t const *javascript_file, const HPEViewsArray &hoopsviews)


Detailed Description

The HIOUtilityPublish class is used for exporting either the HOOPPS scene graph or an existing prc model as a 3D PDF. It requires an installation of HOOPS Publish.

Constructor & Destructor Documentation

HIOUtilityPublish::HIOUtilityPublish (  ) 

Constructs an HIOUtility object.


Member Function Documentation

virtual void* HIOUtilityPublish::BuildPRCModel ( HOutputHandlerOptions options,
HC_KEY  key 
) [virtual]

!This method creates a A3DAsmModelFile object from a HOOPS segment tree

Parameters:
options Output Handler Options. The m_pHBaseView must be set
key Start Segment Key
Returns:
A3DAsmModelFile pointer

HFileInputResult HIOUtilityPublish::FileInputByKey ( const unsigned short *  filename,
HC_KEY  key,
HInputHandlerOptions options 
) [inline, virtual]

This method loads model data from a given file to a given HOOPS segment key. Note that this must be implemented in a subclassed HInputHandler instance handling models.

Parameters:
filename The UNICODE name of the file to load.
key The HOOPS segment key to load model data into.
options An options class containing any needed extra information for the operation.
Returns:
The HFileInputResult result of the input operation.

Reimplemented from HInputHandler.

References HInputHandler::FileInputByKey().

HFileInputResult HIOUtilityPublish::FileInputByKey ( const char *  filename,
HC_KEY  key,
HInputHandlerOptions options 
) [inline, virtual]

This method loads model data from a given file to a given HOOPS segment key. Note that this must be implemented in a subclassed HInputHandler instance handling models.

Parameters:
filename The name of the file to load.
key The HOOPS segment key to load model data into.
options An options class containing any needed extra information for the operation.
Returns:
The HFileInputResult result of the input operation.

Reimplemented from HInputHandler.

References HInputHandler::FileInputByKey().

HFileInputResult HIOUtilityPublish::FileInputByKey ( const wchar_t *  FileName,
HC_KEY  key,
HInputHandlerOptions options 
)

This method reads the modeller file 'filename' into the segment tree underneath key.

Parameters:
filename The name of the file to load.
key The HOOPS segment key to load model data into.
options An options class containing any needed extra information for operation.
Returns:
The HFileInputResult result of the input operation.

HFileOutputResult HIOUtilityPublish::FileOutputByKey ( const char *  filename,
HC_KEY  key,
HOutputHandlerOptions options 
) [inline, virtual]

This method writes model data from a given HOOPS key to a given output file. Note that this must be implimented in a subclassed HOutputHandler instance handling models.

Parameters:
filename The name of the file to output.
key The HOOPS segment key to output model data from.
options The options class containing any needed extra information for the operation.
Returns:
The HFileOutputResult result of the output operation.

Reimplemented from HOutputHandler.

References HOutputHandler::FileOutputByKey().

HFileOutputResult HIOUtilityPublish::FileOutputByKey ( const unsigned short *  filename,
HC_KEY  key,
HOutputHandlerOptions options 
) [inline, virtual]

This method writes model data from a given HOOPS key to a given output file. Note that this must be implimented in a subclassed HOutputHandler instance handling models.

Parameters:
filename The wide character name of the file to output.
key The HOOPS segment key to get output model data from.
options The options class containing any needed extra information for the operation.
Returns:
The HFileOutputResult result of the output operation.

Reimplemented from HOutputHandler.

References HOutputHandler::FileOutputByKey().

char* HIOUtilityPublish::GenerateJavascript ( HBaseView view  ) 

This method creates javascript code from an animation stored in the HBhvBehaviorManager of the HBaseView object. Make sure to call ReleaseJavascript to free memory

Parameters:
file_name 
PRCModel A3DAsmModelFile pointer
layoutmanager Pointer to HPDFLayoutManager object which allows for modification of PDF fields
javascript_file JavaScript to attach to the 3d object

const char* HIOUtilityPublish::GetInputName (  )  [inline, virtual]

Returns:
A character pointer denoting the name of the input handler.

Implements HInputHandler.

HInputHandlerStyle HIOUtilityPublish::GetInputStyle (  )  [inline, virtual]

Returns:
The type of input style which is HInputHandlerStyleModel.

Implements HInputHandler.

References HInputHandlerStyleModel.

const char* HIOUtilityPublish::GetInputTypesString (  )  [inline, virtual]

Returns:
The input extension type that is handled by HIOUtilityPublish.

Implements HInputHandler.

const char* HIOUtilityPublish::GetOutputName (  )  [inline, virtual]

Returns:
A character pointer denoting the name of the handler.

Implements HOutputHandler.

HOutputHandlerStyle HIOUtilityPublish::GetOutputStyle (  )  [inline, virtual]

Returns:
The HOutputHandlerStyle that this instance will use. It can be HOutputHandlerStyleModel for geometry data, HOutputHandlerStyleImage for images, HOutputHandlerStyleHardcopy for hardcopy or HOutputHandlerStyleHTML for MVO style html page.
For example: the following code can be used for an HOutputHandler that outputs model:
 {return HOutputHandlerStyleModel;}

Implements HOutputHandler.

const char* HIOUtilityPublish::GetOutputTypesString (  )  [inline, virtual]

This must be implemented in a subclassed HOutputHandler

Returns:
The extension type or types that can be handled by this HOutputHandler.
For example: the following line of code can be use to specify the stl extenstion:
 {return "stl";};

The following line of code can be used to specify that jpg, bmp and gif extension are handled:

 {return "jpg;bmp;gif";};

Implements HOutputHandler.

void HIOUtilityPublish::RegisterInputHandlerTypes (  )  [virtual]

This method registers the appropriate extensions to this handler as an input handler.

Implements HInputHandler.

void HIOUtilityPublish::RegisterOutputHandlerTypes (  )  [virtual]

This abstract function must register extension types to be handled by subclassed HOutputHandler instance.

For example, the following lines of code can be used to specify a class that will handle files with "tiff" and "tif" extensions:

        {HIORegisterOutputType("tif",this);
        HIORegisterOutputType("tiff",this);};

Implements HOutputHandler.

void HIOUtilityPublish::ReleaseJavascript (  ) 

This method frees the buffer allocated by a previous call to GenerateJavascript

virtual void HIOUtilityPublish::WritePDFFromTemplate ( wchar_t const *  file_name,
void *  PRCModel,
HOutputHandlerOptions options,
HPDFLayoutManager layoutmanager,
wchar_t const *  javascript_file 
) [virtual]

This method creates a PDF file from an existing template

Parameters:
file_name Name of output file
PRCModel A3DAsmModelFile pointer
layoutmanager Pointer to HPDFLayoutManager object which allows for modification of PDF fields
javascript_file JavaScript to attach to the 3d object

virtual void HIOUtilityPublish::WriteSimplePDF ( wchar_t const *  file_name,
void *  PRCModel,
HOutputHandlerOptions options,
wchar_t const *  javascript_file,
const HPEViewsArray &  hoopsviews 
) [virtual]

This method creates a PDF file from a prc model

Parameters:
file_name Name of output file
PRCModel A3DAsmModelFile pointer
options PDF Options
javascript_file JavaScript to attach to the 3d object
array of additional views


The documentation for this class was generated from the following file: