Library Session Functions

Starts, configures, and terminates a session with the library. More...

Typedefs

typedef A3DStatus(* PFA3DDisableHandleSIGSEGV) ()
 Disables internal SIGSEGV handling (Linux only) More...
 
typedef A3DStatus(* PFA3DDllGetBuildInformation) (A3DUTF8Char **ppBuildInformation)
 Gets information relative to build. More...
 
typedef A3DStatus(* PFA3DDllGetVersion) (A3DInt32 *piMajorVersion, A3DInt32 *piMinorVersion)
 Gets the version identifiers for the currently installed library. More...
 
typedef A3DStatus(* PFA3DDllInitialize) (A3DInt32 iMajorVersion, A3DInt32 iMinorVersion)
 Starts a session with the library. More...
 
typedef A3DStatus(* PFA3DDllIsInitialized) ()
 Gets the status of the library initialization library. More...
 
typedef A3DStatus(* PFA3DDllTerminate) ()
 Terminates a session with the library. More...
 
typedef A3DStatus(* PFA3DEnableHandleSIGSEGV) ()
 Enables internal SIGSEGV handling (Linux only) More...
 

Detailed Description

Starts, configures, and terminates a session with the library.

The functions in this section start and terminate a session with the library.

Typedef Documentation

◆ PFA3DDllInitialize

typedef A3DStatus( * PFA3DDllInitialize) (A3DInt32 iMajorVersion, A3DInt32 iMinorVersion)

Starts a session with the library.

This function initializes the internal structures in the library.

Version
2.0
Parameters
iMajorVersionThe major version of the HOOPS Publish. Set this value to A3D_DLL_MAJORVERSION
iMinorVersionThe minor version of the HOOPS Publish. Set this value to A3D_DLL_MINORVERSION
Returns
A3D_SUCCESS in case of success or an error code
Return values
<tt>A3D_INITIALIZE_ALREADY_CALLED</tt>
<tt>A3D_SUCCESS</tt>
Warning
You must call this function before calling any other functions in the HOOPS Publish, with these exceptions:
  • You can call A3DDllGetVersion anytime.
  • To have the library produce an XML trace file, you must call A3DDllActivateXMLTrace before calling this function.
Sample code
A3DInt32 iMajorVersion = 0, iMinorVersion = 0;
iErr = A3DDllGetVersion( &iMajorVersion, &iMinorVersion );
if( iMajorVersion != A3D_DLL_MAJORVERSION )
iErr = A3D_ERROR;
else if( iMinorVersion < A3D_DLL_MINORVERSION )
iErr = A3D_ERROR;
if( iErr == A3D_SUCCESS )
{
iErr = A3DDllInitialize( A3D_DLL_MAJORVERSION, A3D_DLL_MAJORVERSION );
if ( iErr == A3D_SUCCESS )
{
/* Insert your own code to create/read models */
/* ... */
/* At end of process, terminate the DLL use */
iErr = A3DDllTerminate();
}
}

◆ PFA3DDisableHandleSIGSEGV

typedef A3DStatus( * PFA3DDisableHandleSIGSEGV) ()

Disables internal SIGSEGV handling (Linux only)

This function deactivates the handling of the SIGSEGV signal on Linux. By default, SIGSEGV is handled and an exception is thrown to return A3D_EXCEPTION.

Warning
You must call this function before A3DDllInitialize
Deprecated:
the default behavior has changed with 11.2 to disable the SIGSEGV handling
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_SUCCESS
A3D_ERRORif not on Linux

◆ PFA3DEnableHandleSIGSEGV

typedef A3DStatus( * PFA3DEnableHandleSIGSEGV) ()

Enables internal SIGSEGV handling (Linux only)

This function activates the handling of the SIGSEGV signal on Linux. When this function is activated, SIGSEGV is handled and an exception is thrown to return A3D_EXCEPTION.

Warning
You must call this function before A3DDllInitialize
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_SUCCESS
A3D_ERRORif not on Linux

◆ PFA3DDllTerminate

typedef A3DStatus( * PFA3DDllTerminate) ()

Terminates a session with the library.

This function terminates a session with the library. It deallocates memory it has previously allocated for its internal use.

You must call this function to end a session with the library.

Version
2.0
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INITIALIZE_NOT_CALLED
A3D_SUCCESS
Warning
You can call this function only after successfully calling A3DDllInitialize.
When your process is done with A3DLIBS.dll (after calling A3DDllTerminate), you MUST unload that DLL, as shown in the sample code for A3DDllInitialize. Unloading the DLL helps to avoid conflicts that can occur when multiple processes use A3DLIBS.dll.
Processes must avoid parallel access to A3DLIBS.dll.

◆ PFA3DDllGetVersion

typedef A3DStatus( * PFA3DDllGetVersion) (A3DInt32 *piMajorVersion, A3DInt32 *piMinorVersion)

Gets the version identifiers for the currently installed library.

This function returns the version of the currently installed library. Use these version identifiers to determine whether that library is compatible with your application. The value returned through the piMajorVersion argument is identical to the Acrobat version identifier. The value returned through the piMinorVersion argument is specific to the library.

To ensure compatibility, the A3D_DLL_MAJORVERSION must be identical to the major version of currently installed library, and the A3D_DLL_MINORVERSION must be less than or equal to the minor version of the currently installed library.

You can call A3DDllGetVersion anytime, even before calling A3DDllInitialize and after calling A3DDllTerminate. This function does not allocate memory.

Version
2.0
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_SUCCESS

◆ PFA3DDllGetBuildInformation

typedef A3DStatus( * PFA3DDllGetBuildInformation) (A3DUTF8Char **ppBuildInformation)

Gets information relative to build.

This function returns build information. This can be asked by support to help solving problem. This function does not allocate memory.

Version
14.2
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_SUCCESS

◆ PFA3DDllIsInitialized

typedef A3DStatus( * PFA3DDllIsInitialized) ()

Gets the status of the library initialization library.

This function returns the status of the library initialization library.

This function does not allocate memory.

Version
11.0
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_SUCCESS