OWLNext    7.0
Borland's Object Windows Library for the modern age
Loading...
Searching...
No Matches
autodefs.h File Reference

OLE Automation Class Definitions. More...

#include <owl/private/defs.h>
#include <ocf/defs.h>
#include <owl/lclstrng.h>
#include <owl/string.h>
#include <ocf/oleutil.h>
#include <olectl.h>

Go to the source code of this file.

Classes

class  ocf::TAutoBase
 
class  ocf::TAutoDetach
 
struct  ocf::TTypeConvert< T, B >
 
class  ocf::TXAuto
 Automation exception object. More...
 
struct  ocf::TAutoType
 
class  ocf::TAutoClass
 
struct  ocf::TAutoVoid
 
struct  ocf::TNoArg
 
struct  ocf::TAutoDate
 
struct  ocf::TAutoCurrency
 
struct  ocf::TAutoBool
 
struct  ocf::TAutoBoolRef
 
struct  ocf::TAutoShort
 
struct  ocf::TAutoDouble
 
struct  ocf::TAutoFloat
 
struct  ocf::TAutoLong
 
struct  ocf::TAutoByte
 
struct  ocf::TAutoUnknown
 
struct  ocf::TAutoDispatch
 
struct  ocf::TAutoVariant
 
struct  ocf::TAutoShortRef
 
struct  ocf::TAutoLongRef
 
struct  ocf::TAutoFloatRef
 
struct  ocf::TAutoDoubleRef
 
struct  ocf::TAutoCurrencyRef
 
struct  ocf::TAutoDateRef
 
struct  ocf::TAutoStringRef
 
struct  ocf::TAutoVariantRef
 
struct  ocf::TAutoSafeArray
 
struct  ocf::TAutoByteRef
 
class  ocf::TAutoSymbol
 Symbol table element. More...
 
struct  ocf::TObjectDescBase
 Precursor to TServedObject containing object info. More...
 
struct  ocf::TObjectDescriptor
 
class  ocf::TAutoString
 Based on reference counted TString with added automation functionality. More...
 
class  ocf::TAutoVal
 Automation data element (same data as OLE/BASIC VARIANT) More...
 
class  ocf::TAutoStack
 Automation argument stack abstraction. More...
 
class  ocf::TAutoCommand
 Automation abstract base class for command objects. More...
 
struct  ocf::TAutoEnumVal< T >
 
class  ocf::TAutoEnum
 
class  ocf::TAutoEnumT< T >
 
class  ocf::TAutoCreator
 Object responsible for creating automation COM object. More...
 
class  ocf::TServedObjectCreator
 
class  ocf::TDispatchCreator
 
class  ocf::TServedObject
 OLE object exposed for automated access of internal object. More...
 
class  ocf::TDispatch
 lightweight IDispatch implementation for automation controllers More...
 
class  ocf::TAutoObject< T >
 holders for C++ object pointers for automation conversions More...
 
class  ocf::TAutoObjectDelete< T >
 
class  ocf::TAutoObjectByVal< T >
 
class  ocf::TAutoIterator
 automation collection iterator More...
 
class  ocf::TAutoProxyArgs
 
class  ocf::TAutoArgs< N >
 The first TAutoVal item of TAutoArgs holds the return value. More...
 
class  ocf::TAutoProxy
 client C access proxy, base class More...
 
struct  ocf::TAutoDispId
 
struct  ocf::TAutoDispIds< N >
 
class  ocf::TAutoEnumeratorBase
 
class  ocf::TAutoEnumerator< T >
 

Namespaces

namespace  ocf
 Object Component Framework (COM encapsulation)
 

Macros

#define NO_VBX_PICTURES
 
#define _AUTOCLASS
 

Typedefs

typedef unsigned long ocf::TLocaleId
 
typedef voidocf::ObjectPtr
 
typedef ObjectPtr(* ocf::TAutoSymTypeConvert) (ObjectPtr obj)
 
typedef TAutoCommand *(* ocf::TAutoCommandBuild) (ObjectPtr obj, int attr, TAutoStack &)
 
typedef TAutoCommand *(* ocf::TAutoCommandBuildDtr) (ObjectPtr obj, int attr)
 
typedef TAutoIterator *(* ocf::TAutoIteratorBuild) (ObjectPtr obj, TAutoCreator &creator, IUnknown *owner, owl::TLangId lang)
 
typedef IUnknown &(* ocf::TAggregator) (ObjectPtr obj, TUnknown &inner)
 
typedef TAutoLong ocf::TAutoInt
 
typedef TAutoLongRef ocf::TAutoIntRef
 

Enumerations

enum  ocf::AutoSymFlag {
  ocf::asAnyCommand = 0x0017 , ocf::asOleType = 0x0007 , ocf::asMethod = 0x0001 , ocf::asGet = 0x0002 , ocf::asIterator = 0x000A , ocf::asSet = 0x0004 , ocf::asGetSet = 0x0006 , ocf::asBuild = 0x0010 , ocf::asFactory = 0x0020 , ocf::asClass = 0x0040 ,
  ocf::asArgument = 0x0080 , ocf::asNotTerminator = 0x00FF , ocf::asBindable = 0x0400 , ocf::asRequestEdit = 0x0800 , ocf::asDisplayBind = 0x1000 , ocf::asDefaultBind = 0x2000 , ocf::asHidden = 0x4000 , ocf::asPersistent = 0x8000
}
 Attribute flags for automation symbols and command objects. More...
 
enum  ocf::AutoDataType {
  ocf::atVoid = VT_EMPTY , ocf::atNull = VT_NULL , ocf::atShort = VT_I2 , ocf::atLong = VT_I4 , ocf::atFloat = VT_R4 , ocf::atDouble = VT_R8 , ocf::atCurrency = VT_CY , ocf::atDatetime = VT_DATE , ocf::atString = VT_BSTR , ocf::atObject = VT_DISPATCH ,
  ocf::atError = VT_ERROR , ocf::atBool = VT_BOOL , ocf::atVariant = VT_VARIANT , ocf::atUnknown = VT_UNKNOWN , ocf::atByte = VT_UI1 , ocf::atArray = VT_ARRAY , ocf::atObjectDesc = 0x001D , ocf::atLoanedBSTR = 0x001A , ocf::atTypeMask = 0x001F , ocf::atOLE2Mask = 0x601F
}
 Automation datatypes and flags - same as OLE 2 definitions. More...
 
enum  ocf::AutoCallFlag { ocf::acMethod = 0x0001 , ocf::acPropGet = 0x0002 , ocf::acPropSet = 0x0004 , ocf::acVoidRet = 0x8000 }
 

Functions

const voidocf::DynamicCast (const void *obj, const std::type_info &src, const std::type_info &dst)
 
const voidocf::MostDerived (const void *obj, const std::type_info &src)
 
void ocf::SendObituary (const void *obj, const std::type_info &typeInfo)
 
 ocf::_OCFDATA (TAutoCommand::TErrorMsgHook) TAutoCommand_ErrorLookup
 
 ocf::_OCFDATA (TAutoCommand::TCommandHook) TAutoCommand_InvokeHook
 
TAutoCommandocf::AutoQuitBuild (ObjectPtr obj, int attr, TAutoStack &args)
 

Variables

class _AUTOCLASS ocf::TAutoDetach
 
class _AUTOCLASS ocf::TAutoBase
 
class _ICLASS ocf::TAppDescriptor
 
class _ICLASS ocf::TAutoIterator
 
EXTERN_C const GUID ocf::IID_TServedObject = {0x02A101L,0,0,{0xC0,0,0,0,0,0,0,0x46}}
 
const owl::uint16 ocf::atSafeArray = 0x2000
 
const owl::uint16 ocf::atByRef = 0x4000
 
const owl::uint16 ocf::atEnum = 0x1000
 
const owl::uint16 ocf::atAutoClass = 0x0800
 
const owl::uint16 ocf::tfAppObject = 1
 
const owl::uint16 ocf::tfCanCreate = 2
 
const owl::uint16 ocf::tfLicensed = 4
 
const owl::uint16 ocf::tfPredeclared = 8
 
const owl::uint16 ocf::tfControl = 32
 
const owl::uint16 ocf::tfCoClassXfer = tfAppObject|tfCanCreate|tfLicensed|tfControl|tfPredeclared
 
const owl::uint16 ocf::tfDefault = (1<<12)
 
const owl::uint16 ocf::tfEventSource = (2<<12)
 
const owl::uint16 ocf::tfRestricted = (4<<12)
 
const owl::uint16 ocf::tfImplFlagXfer = (tfDefault | tfEventSource | tfRestricted)
 
const owl::uint16 ocf::tfHidden = 16
 
const owl::uint16 ocf::tfNonextensible = 128
 
const owl::uint16 ocf::tfAutoClassMask = tfHidden|tfNonextensible
 
const owl::uint16 ocf::tfDual = 64
 
const owl::uint16 ocf::tfAutomation = 256
 
const owl::uint16 ocf::tfNormal = 0
 
struct _OCFCLASS ocf::TAutoTransfer
 
class _ICLASS ocf::TDispatch
 

Detailed Description

OLE Automation Class Definitions.

Definition in file autodefs.h.

Macro Definition Documentation

◆ _AUTOCLASS

#define _AUTOCLASS

Definition at line 39 of file autodefs.h.

◆ NO_VBX_PICTURES

#define NO_VBX_PICTURES

Definition at line 25 of file autodefs.h.