本文整理汇总了C++中OwningPtr::getRawPtr方法的典型用法代码示例。如果您正苦于以下问题:C++ OwningPtr::getRawPtr方法的具体用法?C++ OwningPtr::getRawPtr怎么用?C++ OwningPtr::getRawPtr使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OwningPtr
的用法示例。
在下文中一共展示了OwningPtr::getRawPtr方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getLuaStackChecker
LuaStackChecker* LuaStateAccess::getLuaStackChecker(lua_State* L)
{
ExtraLuaStateData* extra = (ExtraLuaStateData*)((char*)(L) - sizeof(ExtraLuaStateData));
if (extra->stackChecker == NULL)
{
OwningPtr<LuaStackChecker> stackChecker = LuaStackChecker::create();
LuaStateAccess_HeapObjectRefManipulator::incRefCounter(stackChecker);
extra->stackChecker = stackChecker.getRawPtr();
}
return (LuaStackChecker*) extra->stackChecker;
}
示例2: WeakPtr
WeakPtr(const OwningPtr<T>& src) {
if (src.isValid()) {
ptr = src.getRawPtr();
#ifdef WEAK_PTR_HAS_EXTRA_PTR_TO_COUNTERS
heapObjectCounters = HeapObjectRefManipulator::getHeapObjectCounters(ptr);
#endif
HeapObjectRefManipulator::incWeakCounter(getHeapObjectCounters());
} else {
ptr = NULL;
#ifdef WEAK_PTR_HAS_EXTRA_PTR_TO_COUNTERS
heapObjectCounters = NULL;
#endif
}
}
示例3: sizeof
OwningPtr<LuaStackChecker> LuaStateAccess::replaceLuaStackChecker(lua_State* L, OwningPtr<LuaStackChecker> newStackChecker)
{
ExtraLuaStateData* extra = (ExtraLuaStateData*)((char*)(L) - sizeof(ExtraLuaStateData));
OwningPtr<LuaStackChecker> oldStackChecker;
if (extra->stackChecker != NULL)
{
{
LuaStackChecker* p = (LuaStackChecker*) extra->stackChecker;
LuaStateAccess_HeapObjectRefManipulator::resetInitialOwnership(p);
oldStackChecker = OwningPtr<LuaStackChecker>(p);
// no decRefCounter, because OwningPtr takes given Ownerchip
}
LuaStateAccess_HeapObjectRefManipulator::incRefCounter(newStackChecker);
extra->stackChecker = newStackChecker.getRawPtr();
}
return oldStackChecker;
}