APIAddonObjectConvertNew​FormatHandlerProc

User supplied callback procedure for converting AddOnObjects into current format.

    typedef GSErrCode  APIAddonObjectConvertNewFormatHandlerProc (
        API_FTypeID                           planFileType,
        const GS::Array<API_AddonObject>&     oldFormatAddOnObjectArray,
        GS::Array<API_AddonObject>&           currentFormatAddOnObjectArray
    );

 

Parameters

planFileType
[in] The original version of the plan of the project is being opened.
oldFormatAddOnObjectArray
[in] AddOnObject data in original format.
currentFormatAddOnObjectArray
[out] Array for the converted AddOnObject data in current format.

 

Return Values

NoError
The function has completed with success.

For other common API errors see the API Errors document.

 

Remarks

In order to convert the add-on’s AddOnObject data into current format, you need to implement this callback function, and pass it to Archicad with ACAPI_Install_AddOnObjectConvertNewFormatHandler during the Initialize phase. It is also necessary to notify Archicad about this capability of the add-on by calling ACAPI_Register_AddOnObjectHandler from the RegisterInterface function.

This handler function is called whenever the user opens an old version project, and the add-on has any AddOnObject stored in the original project. The data should be constructed according to the current version into API_AddonObject structures, and these structures should be pushed into the currentFormatAddOnObjectArray array.

The memory allocated for the converted AddOnObject by the add-on’s handler function will be released by the caller application.

You must pay attention to not create more than one API_AddonObjects with the same name if the AddOnObject is Unique.

 

Requirements

Version: API 19 or later
Header: APIdefs_Callback.h

 

See Also

API_AddonObject
ACAPI_Install_AddOnObjectConvertNewFormatHandler
ACAPI_Register_AddOnObjectHandler
AddOnObject Manager
API Functions