Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
CPyCppyy::CPPInstance Class Reference

Definition at line 26 of file CPPInstance.h.

Public Types

enum  EFlags {
  kDefault = 0x0000 , kNoWrapConv = 0x0001 , kIsOwner = 0x0002 , kIsExtended = 0x0004 ,
  kIsReference = 0x0008 , kIsRValue = 0x0010 , kIsLValue = 0x0020 , kIsValue = 0x0040 ,
  kIsPtrPtr = 0x0080 , kIsArray = 0x0100 , kIsSmartPtr = 0x0200 , kNoMemReg = 0x0400 ,
  kHasLifeLine = 0x0800 , kIsRegulated = 0x1000 , kIsActual = 0x2000
}
 

Public Member Functions

 CPPInstance ()=delete
 
Py_ssize_t ArrayLength ()
 
void CastToArray (Py_ssize_t sz)
 
CPPInstanceCopy (void *cppinst, PyTypeObject *target=nullptr)
 
void CppOwns ()
 
CI_DatamemberCache_tGetDatamemberCache ()
 
void * GetObject ()
 
void *& GetObjectRaw ()
 
Cppyy::TCppType_t GetSmartIsA () const
 
void * GetSmartObject ()
 
bool IsExtended () const
 
bool IsSmart () const
 
Cppyy::TCppType_t ObjectIsA (bool check_smart=true) const
 
void PythonOwns ()
 
void Set (void *address, EFlags flags=kDefault)
 
void SetDispatchPtr (void *)
 
void SetSmart (PyObject *smart_type)
 

Public Attributes

uint32_t fFlags
 
PyObject_HEAD void * fObject
 

Private Member Functions

void CreateExtension ()
 
void * GetExtendedObject ()
 

#include </home/sftnight/build/workspace/root-makedoc-v632/rootspi/rdoc/src/v6-32-00-patches/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.h>

Member Enumeration Documentation

◆ EFlags

Enumerator
kDefault 
kNoWrapConv 
kIsOwner 
kIsExtended 
kIsReference 
kIsRValue 
kIsLValue 
kIsValue 
kIsPtrPtr 
kIsArray 
kIsSmartPtr 
kNoMemReg 
kHasLifeLine 
kIsRegulated 
kIsActual 

Definition at line 28 of file CPPInstance.h.

Constructor & Destructor Documentation

◆ CPPInstance()

CPyCppyy::CPPInstance::CPPInstance ( )
delete

Member Function Documentation

◆ ArrayLength()

Py_ssize_t CPyCppyy::CPPInstance::ArrayLength ( )

Definition at line 324 of file CPPInstance.cxx.

◆ CastToArray()

void CPyCppyy::CPPInstance::CastToArray ( Py_ssize_t  sz)

Definition at line 317 of file CPPInstance.cxx.

◆ Copy()

CPyCppyy::CPPInstance * CPyCppyy::CPPInstance::Copy ( void *  cppinst,
PyTypeObject *  target = nullptr 
)

Definition at line 107 of file CPPInstance.cxx.

◆ CppOwns()

void CPyCppyy::CPPInstance::CppOwns ( )

Definition at line 167 of file CPPInstance.cxx.

◆ CreateExtension()

void CPyCppyy::CPPInstance::CreateExtension ( )
inlineprivate

Definition at line 86 of file CPPInstance.cxx.

◆ GetDatamemberCache()

CPyCppyy::CI_DatamemberCache_t & CPyCppyy::CPPInstance::GetDatamemberCache ( )

Definition at line 191 of file CPPInstance.cxx.

◆ GetExtendedObject()

void * CPyCppyy::CPPInstance::GetExtendedObject ( )
private

Definition at line 95 of file CPPInstance.cxx.

◆ GetObject()

void * CPyCppyy::CPPInstance::GetObject ( )
inline

Definition at line 100 of file CPPInstance.h.

◆ GetObjectRaw()

void *& CPyCppyy::CPPInstance::GetObjectRaw ( )
inline

Definition at line 63 of file CPPInstance.h.

◆ GetSmartIsA()

Cppyy::TCppType_t CPyCppyy::CPPInstance::GetSmartIsA ( ) const

Definition at line 184 of file CPPInstance.cxx.

◆ GetSmartObject()

void * CPyCppyy::CPPInstance::GetSmartObject ( )
inline

Definition at line 75 of file CPPInstance.h.

◆ IsExtended()

bool CPyCppyy::CPPInstance::IsExtended ( ) const
inline

Definition at line 58 of file CPPInstance.h.

◆ IsSmart()

bool CPyCppyy::CPPInstance::IsSmart ( ) const
inline

Definition at line 59 of file CPPInstance.h.

◆ ObjectIsA()

Cppyy::TCppType_t CPyCppyy::CPPInstance::ObjectIsA ( bool  check_smart = true) const
inline

Definition at line 113 of file CPPInstance.h.

◆ PythonOwns()

void CPyCppyy::CPPInstance::PythonOwns ( )

Definition at line 159 of file CPPInstance.cxx.

◆ Set()

void CPyCppyy::CPPInstance::Set ( void *  address,
EFlags  flags = kDefault 
)
inline

Definition at line 92 of file CPPInstance.h.

◆ SetDispatchPtr()

void CPyCppyy::CPPInstance::SetDispatchPtr ( void *  ptr)

Definition at line 199 of file CPPInstance.cxx.

◆ SetSmart()

void CPyCppyy::CPPInstance::SetSmart ( PyObject smart_type)

Definition at line 175 of file CPPInstance.cxx.

Member Data Documentation

◆ fFlags

uint32_t CPyCppyy::CPPInstance::fFlags

Definition at line 48 of file CPPInstance.h.

◆ fObject

PyObject_HEAD void* CPyCppyy::CPPInstance::fObject

Definition at line 47 of file CPPInstance.h.

  • bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.h
  • bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx