CFx SDK Documentation  2023 SP0
Public Member Functions | Protected Member Functions | List of all members
OdRxMethod Class Referenceabstract

#include <RxMethod.h>

Inheritance diagram for OdRxMethod:
OdRxMember OdRxObject

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdRxMethod)
 
OdResult invoke (OdRxObject *pO, OdRxValue &param) const
 
OdResult isExecutable (const OdRxObject *pO, const OdRxValue &param) const
 
- Public Member Functions inherited from OdRxMember
 ODRX_DECLARE_MEMBERS (OdRxMember)
 
const OdStringname () const throw ()
 
OdString localName () const throw ()
 
const OdRxValueTypetype () const throw ()
 
const OdRxAttributeCollectionattributes () const throw ()
 
OdRxAttributeCollectionattributes () throw ()
 
const OdRxObjectowner () const throw ()
 
const OdArray< OdRxMemberPtr > * children () const throw ()
 
- Public Member Functions inherited from OdRxObject
 ODRX_HEAP_OPERATORS ()
 
 OdRxObject ()
 
virtual ~OdRxObject ()
 
virtual OdRxObjectqueryX (const OdRxClass *pClass) const
 
virtual OdRxObjectx (const OdRxClass *pClass) const
 
virtual OdRxClassisA () const
 
virtual void addRef ()=0
 
virtual void release ()=0
 
virtual long numRefs () const
 
bool isKindOf (const OdRxClass *pClass) const
 
virtual OdRxObjectPtr clone () const
 
virtual void copyFrom (const OdRxObject *pSource)
 
virtual OdRx::Ordering comparedTo (const OdRxObject *pOther) const
 
virtual bool isEqualTo (const OdRxObject *pOther) const
 

Protected Member Functions

virtual OdResult subInvoke (OdRxObject *pO, OdRxValue &param) const =0
 
virtual OdResult subIsExecutable (const OdRxObject *pO, const OdRxValue &param) const
 
- Protected Member Functions inherited from OdRxMember
virtual ~OdRxMember ()
 
 OdRxMember (OdRxMemberImpl *)
 
virtual OdString subLocalName () const
 
virtual OdResult subChildren (OdArray< OdRxMemberPtr > &children) const
 
virtual OdResult subChildrenEx (OdArray< OdRxMemberPtr > *&pChildren) const
 
void init (const OdString &name, const OdRxValueType *type, const OdRxObject *owner=0)
 

Additional Inherited Members

- Static Public Member Functions inherited from OdRxMember
static void deleteMember (const OdRxMember *pMember) throw ()
 
- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 
- Protected Attributes inherited from OdRxMember
OdRxMemberImplm_pImpl
 

Detailed Description

This class allows implementing "protocol extension-like" members, or late binding calls for scripting.

Definition at line 35 of file RxMethod.h.

Member Function Documentation

◆ invoke()

OdResult OdRxMethod::invoke ( OdRxObject pO,
OdRxValue param 
) const

Executes the underlying method of the object.

Parameters
pO[in] The object which method to call.
param[in,out] Method parameter(s) wrapped in OdRxValue. If method needs to return a value it is assigned to the param.
Remarks
Parameter may be OdRxValue::empty() if no input is required.
Returns
Returns eOk if the call was successful.

◆ isExecutable()

OdResult OdRxMethod::isExecutable ( const OdRxObject pO,
const OdRxValue param 
) const

Returns eOk if the method can be executed with this parameter.

◆ ODRX_DECLARE_MEMBERS()

OdRxMethod::ODRX_DECLARE_MEMBERS ( OdRxMethod  )

◆ subInvoke()

virtual OdResult OdRxMethod::subInvoke ( OdRxObject pO,
OdRxValue param 
) const
protectedpure virtual

◆ subIsExecutable()

virtual OdResult OdRxMethod::subIsExecutable ( const OdRxObject pO,
const OdRxValue param 
) const
protectedvirtual

The documentation for this class was generated from the following file: