This document will help you port your applications from DriveWorks CGF 5.2 to DriveWorks CGF 5.4.
Subclasses of dw::framework::ChannelFactory
need to change the way they register custom packet constructors. Previously the method registerPacketConstructors()
was called with a vector of dw::framework::ChannelPacketConstructorRegistration
. Instead the registration of each packet constructor happens through the static function dw::framework::ChannelFactory::registerPacketConstructor()
. Subclasses of dw::framework::ChannelFactory
should perform the registration at library load time to make their packet constructors available to the base class. This make instantiating the subclasses unnecessary, instead the base class can be used to access all custom packet constructors.
The signature of the following functions has changed:
Instead of using an output parameter and returning dwStatus
they return the results and throw in case of invalid arguments.
The following logging macros are being deprecated and will be removed in the future:
Use the following logging macros provided by DriveWorks SDK instead:
DW_LOGV()
DW_LOGD()
DW_LOGI()
DW_LOGW()
DW_LOGE()
In this release a redirect is in place for backward compatibility.
The previously deprecated API ending in "Old" has been removed:
initInputPortOld()
initInputArrayPortOld()
initOutputPortOld()
initOutputArrayPortOld()
getInputPortOld()
getOutputPortOld()
Use the methods without the "Old" suffix instead:
dw::framework::SimpleNode::initInputPort()
dw::framework::SimpleNode::initInputArrayPort()
dw::framework::SimpleNode::initOutputPort()
dw::framework::SimpleNode::initOutputArrayPort()
dw::framework::SimpleNode::getInputPort()
dw::framework::SimpleNode::getOutputPort()
The previously deprecated macros ending in "_OLD_" have been removed:
NODE_INIT_INPUT_PORT_OLD()
NODE_INIT_INPUT_ARRAY_PORT_OLD()
NODE_INIT_OUTPUT_PORT_OLD()
NODE_INIT_OUTPUT_ARRAY_PORT_OLD()
NODE_GET_INPUT_PORT_OLD()
NODE_GET_INPUT_ARRAY_PORT_OLD()
NODE_GET_OUTPUT_PORT_OLD()
NODE_GET_OUTPUT_ARRAY_PORT_OLD()
Use the macros without the "\_OLD" suffix instead:
NODE_INIT_INPUT_PORT()
NODE_INIT_INPUT_ARRAY_PORT()
NODE_INIT_OUTPUT_PORT()
NODE_INIT_OUTPUT_ARRAY_PORT()
NODE_GET_INPUT_PORT()
NODE_GET_INPUT_ARRAY_PORT()
NODE_GET_OUTPUT_PORT()
NODE_GET_OUTPUT_ARRAY_PORT()
All methods which previous accepted a const char* key
parameter take dw::core::StringView const& key
instead, e.g. dw::framework::ParameterProvider::get()
.