55 template <
typename TDataType>
56 PvdError createClass()
58 return createClass(getPvdNamespacedNameForType<TDataType>());
62 template <
typename TParentType,
typename TChildType>
63 PvdError deriveClass()
65 return deriveClass(getPvdNamespacedNameForType<TParentType>(), getPvdNamespacedNameForType<TChildType>());
69 template <
typename TDataType>
72 return isClassExist(getPvdNamespacedNameForType<TDataType>());
75 virtual PvdError createProperty(
const NamespacedName& clsName,
const char* name,
const char* semantic,
78 template <
typename TClsType,
typename TDataType>
79 PvdError createProperty(String name, String semantic =
"", PropertyType::Enum propertyType = PropertyType::Scalar,
82 return createProperty(getPvdNamespacedNameForType<TClsType>(), name, semantic,
83 getPvdNamespacedNameForType<TDataType>(), propertyType, values);
89 template <
typename TClsType,
typename TMsgType>
92 return createPropertyMessage(getPvdNamespacedNameForType<TClsType>(), getPvdNamespacedNameForType<TMsgType>(),
93 entries,
sizeof(TMsgType));
105 virtual PvdError createInstance(
const NamespacedName& cls,
const void* instance) = 0;
107 template <
typename TDataType>
108 PvdError createInstance(
const TDataType* inst)
110 return createInstance(getPvdNamespacedNameForType<TDataType>(), inst);
112 virtual bool isInstanceValid(
const void* instance) = 0;
117 template <
typename TDataType>
118 PvdError setPropertyValue(
const void* instance, String name,
const TDataType& value)
120 const uint8_t* dataStart =
reinterpret_cast<const uint8_t*
>(&value);
122 getPvdNamespacedNameForType<TDataType>());
125 template <
typename TDataType>
126 PvdError setPropertyValue(
const void* instance, String name,
const TDataType* value, uint32_t numItems)
128 const uint8_t* dataStart =
reinterpret_cast<const uint8_t*
>(value);
129 return setPropertyValue(instance, name,
131 getPvdNamespacedNameForType<TDataType>());
135 virtual PvdError beginSetPropertyValue(
const void* instance, String name,
const NamespacedName& incomingTypeName) = 0;
137 template <
typename TDataType>
138 PvdError beginSetPropertyValue(
const void* instance, String name)
140 return beginSetPropertyValue(instance, name, getPvdNamespacedNameForType<TDataType>());
144 template <
typename TDataType>
145 PvdError appendPropertyValueData(
const TDataType* value, uint32_t numItems)
147 const uint8_t* dataStart =
reinterpret_cast<const uint8_t*
>(value);
148 return appendPropertyValueData(
DataRef<const uint8_t>(dataStart, dataStart + numItems *
sizeof(TDataType)));
151 virtual PvdError endSetPropertyValue() = 0;
155 virtual PvdError setPropertyMessage(
const void* instance,
const NamespacedName& msgName,
158 template <
typename TDataType>
159 PvdError setPropertyMessage(
const void* instance,
const TDataType& value)
161 const uint8_t* dataStart =
reinterpret_cast<const uint8_t*
>(&value);
162 return setPropertyMessage(instance, getPvdNamespacedNameForType<TDataType>(),
166 virtual PvdError beginPropertyMessageGroup(
const NamespacedName& msgName) = 0;
168 template <
typename TDataType>
169 PvdError beginPropertyMessageGroup()
171 return beginPropertyMessageGroup(getPvdNamespacedNameForType<TDataType>());
175 template <
typename TDataType>
176 PvdError sendPropertyMessageFromGroup(
const void* instance,
const TDataType& value)
178 const uint8_t* dataStart =
reinterpret_cast<const uint8_t*
>(&value);
182 virtual PvdError endPropertyMessageGroup() = 0;
185 virtual PvdError pushBackObjectRef(
const void* instId, String propName,
const void* objRef) = 0;
186 virtual PvdError removeObjectRef(
const void* instId, String propName,
const void* objRef) = 0;
189 virtual PvdError destroyInstance(
const void* key) = 0;
192 virtual PvdError beginSection(
const void* instance, String name) = 0;
193 virtual PvdError endSection(
const void* instance, String name) = 0;
196 virtual PvdError originShift(
const void* scene,
PxVec3 shift) = 0;
233 virtual void* allocateMemForCmd(uint32_t length) = 0;
236 virtual void pushPvdCommand(
PvdCommand& cmd) = 0;
237 virtual void flushPvdCommand() = 0;
Sorts an array of objects in ascending order, assuming that the predicate implements the < operator:
Definition PxBoxController.h:39