xrtObjectGraphCreate

创建和销毁一个不拥有对象强引用的独立对象图。

xrtobjectgraph* xrtObjectGraphCreate(void);
返回:创建和销毁一个不拥有对象强引用的独立对象图。

示例已编译验证

/* 创建和销毁一个不拥有对象强引用的独立对象图。 */
xhandle* h = xrtObjectGraphCreate();

xrtObjectGraphDestroy

XRT_API void xrtObjectGraphDestroy(xrtobjectgraph* pGraph);

;
返回:XRT_API void xrtObjectGraphDestroy(xrtobjectgraph* pGraph);

示例已编译验证

xrtObjectGraphDestroy(obj);

xrtObjectGraphTrack

幂等跟踪对象;同一对象在任意时刻只能属于一个对象图。

bool xrtObjectGraphTrack( xrtobjectgraph* pGraph, xrtobject* pObject );
参数说明
xrtobjectgraph* pGraph图对象
xrtobject* pObject对象
返回:幂等跟踪对象;同一对象在任意时刻只能属于一个对象图。

示例已编译验证

/* 幂等跟踪对象;同一对象在任意时刻只能属于一个对象图。 */
result = xrtObjectGraphTrack(pGraph, pObject);

xrtObjectGraphUntrack

停止跟踪对象;对象不属于该图时返回 false 且不设置错误。

bool xrtObjectGraphUntrack( xrtobjectgraph* pGraph, xrtobject* pObject );
参数说明
xrtobjectgraph* pGraph图对象
xrtobject* pObject对象
返回:停止跟踪对象;对象不属于该图时返回 false 且不设置错误。

示例已编译验证

/* 停止跟踪对象;对象不属于该图时返回 false 且不设置错误。 */
result = xrtObjectGraphUntrack(pGraph, pObject);

xrtObjectGraphContains

查询借用对象是否属于图以及图当前跟踪的对象数量。

bool xrtObjectGraphContains( const xrtobjectgraph* pGraph, const xrtobject* pObject );
参数说明
const xrtobjectgraph* pGraph图对象
const xrtobject* pObject对象
返回:查询借用对象是否属于图以及图当前跟踪的对象数量。

示例已编译验证

/* 查询借用对象是否属于图以及图当前跟踪的对象数量。 */
result = xrtObjectGraphContains(pGraph, pObject);

xrtObjectGraphCount

XRT_API size_t xrtObjectGraphCount(const xrtobjectgraph* pGraph);

;
返回:XRT_API size_t xrtObjectGraphCount(const xrtobjectgraph* pGraph);

示例已编译验证

/* XRT_API size_t xrtObjectGraphCount(const xrtobjectgraph* pGraph); */
result = xrtObjectGraphCount();

xrtObjectGraphCollect

在调用方保证对象图静止的安全点收集不可达强引用环。

bool xrtObjectGraphCollect( xrtobjectgraph* pGraph, xrtobjectgraphresult* pResult );
参数说明
xrtobjectgraph* pGraph图对象
xrtobjectgraphresult* pResult出:结果
返回:在调用方保证对象图静止的安全点收集不可达强引用环。

示例已编译验证

/* 在调用方保证对象图静止的安全点收集不可达强引用环。 */
result = xrtObjectGraphCollect(pGraph, pResult);

xrtObjectGraphCollectRoots

使用可选的宿主根枚举器收集不可达强引用环。

bool xrtObjectGraphCollectRoots( xrtobjectgraph* pGraph, xrtobjectrootproc pRoots, ptr pContext, xrtobjectgraphresult* pResult );
参数说明
xrtobjectgraph* pGraph图对象
xrtobjectrootproc pRootsRoots 参数
ptr pContext上下文
xrtobjectgraphresult* pResult出:结果
返回:使用可选的宿主根枚举器收集不可达强引用环。

示例已编译验证

/* 使用可选的宿主根枚举器收集不可达强引用环。 */
result = xrtObjectGraphCollectRoots(pGraph, pRoots, pContext, pResult);