OWLNext    7.0
Borland's Object Windows Library for the modern age
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
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.