STLSoft - ... Robust, Lightweight, Cross-platform, Template Software ... ATLSTL - Template Software for the Active Template Library COMSTL - The Standard Template Library meets the Component Object Model .netSTL - Standard Template Library meets the Microsoft.NET Common Language Runtime InetSTL - The Standard Template Library meets WinInet MFCSTL - Template Software for the Microsoft Foundation Classes UNIXSTL - Template Software for the UNIX Operating System WinSTL - where the Standard Template Library meets the Win32 API

Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

comstl Namespace Reference

The COMSTL namespace - comstl (aliased to stlsoft::comstl_project) - is the namespace for the COMSTL project. More...


Compounds

struct  addref_release
 A function object that does not call Release() on the interface. More...

struct  BSTR_close
 Closes BSTRs. More...

struct  BSTR_policy
 Value policy for BSTR. More...

class  c_str_null_VARIANT_proxy
 This class provides an intermediary object that may be returned by the c_str_ptr_null() function, such that the text of a given variant may be accessed as a null-terminated string. More...

class  c_str_ptr_GUID_proxy
 This class provides an intermediary object that may be returned by the c_str_ptr_null() function, such that the text of a given GUID may be accessed as a null-terminated string. More...

class  c_str_VARIANT_proxy_a
 This class provides an intermediary object that may be returned by the c_str_ptr_a() function, such that the text of a given variant may be accessed as a null-terminated string. More...

class  c_str_VARIANT_proxy_w
 This class provides an intermediary object that may be returned by the c_str_ptr_w() function, such that the text of a given variant may be accessed as a null-terminated string. More...

struct  FORMATETC_policy
 Value policy for FORMATETC. More...

struct  GUID_policy
 Value policy for GUID. More...

struct  ignore_initialisation_exception
 Exception policy whose action is to do nothing. More...

struct  ignore_interface_cast_exception
 A null exception generating type. More...

struct  IID_traits
 Interface identifier traits. More...

class  initialiser
 Initialises the COM libraries. More...

struct  interface_addref
 Adds references to COM interfaces. More...

class  interface_cast_addref
 Interface cast that does add a net reference count. More...

class  interface_cast_base
 Base class for the interface cast classes. More...

class  interface_cast_noaddref
 Interface cast that does not add a net reference count. More...

class  interface_cast_test
 Interface cast that tests whether a given interface pointer can be successfully queried. More...

struct  interface_pointer_traits< I * >
 A specialisation for pointers only. More...

struct  interface_policy
 Value policy for interface. More...

class  interface_ptr
 Manages a COM interface pointer, ensuring that it is released. More...

struct  interface_release
 Releases COM interfaces. More...

struct  LPOLESTR_policy
 Value policy for LPOLESTR. More...

struct  LPUNKNOWN_policy
 Value policy for LPUNKNOWN. More...

struct  noaddref_release
 A function object that calls Release() on the interface. More...

struct  olestring_close
 Close OLE strings. More...

struct  _clear
 The clear function object type. More...

struct  _copy
 The copy function object type. More...

struct  _init
 The initialisation function object type. More...

class  bad_interface_cast
 Exception class thrown when interface queries fail. More...

class  collection_sequence
 A template for adapting COM enumeration to STL-compatible sequence iteration. More...

class  iterator
 Iterator for the collection_sequence class. More...

struct  degenerate_cloning_policy
 Policy type that causes COM enumerator cloning according the best available STL Iterator concept. More...

class  enum_simple_sequence
 Deprecated forwarding template for enumerator_sequence, providing backwards compatibility. More...

class  enumerator_sequence
 A template for adapting COM enumeration to STL-compatible sequence iteration. More...

class  iterator
 Iterator for the enumerator_sequence class. More...

struct  forward_cloning_policy
 Policy type that causes COM enumerator cloning according the STL Forward Iterator concept. More...

struct  input_cloning_policy
 Policy type that causes COM enumerator cloning according the STL Input Iterator concept. More...

struct  policy_adaptor
 Adapts a value policy to a function object based interface. More...

class  safearray_sequence
 Provides an STL-iterable view over a COM SAFEARRAY. More...

struct  STATSTG_policy
 Value policy for STATSTG. More...

class  std_mem_fun_ref_t
 An adaptor for member functions of COM interfaces. More...

class  std_mem_fun_t
 An adaptor for member functions of COM interfaces. More...

class  task_allocator
 STL Allocator based on the COM task allocator. More...

struct  task_memory_close
 Close task memory blocks. More...

struct  thrown_type
 The exception type. More...

struct  thrown_type
 The exception type. More...

struct  throw_bad_interface_cast_exception
 A null exception generating type. More...

struct  VARIANT_close
 Close VARIANTs. More...

struct  VARIANT_policy
 Value policy for VARIANT. More...

class  variant_type_exception
 The exception type thrown by safearray_sequence on variant type mismatches. More...


Typedefs

typedef ::stlsoft::ss_char_a_t cs_char_a_t
 Ansi char type.

typedef ::stlsoft::ss_char_w_t cs_char_w_t
 Unicode char type.

typedef OLECHAR cs_char_o_t
 COM char type.

typedef ::stlsoft::ss_sint8_t cs_sint8_t
 8-bit signed integer

typedef ::stlsoft::ss_uint8_t cs_uint8_t
 8-bit unsigned integer

typedef ::stlsoft::ss_int16_t cs_int16_t
 16-bit integer

typedef ::stlsoft::ss_sint16_t cs_sint16_t
 16-bit signed integer

typedef ::stlsoft::ss_uint16_t cs_uint16_t
 16-bit unsigned integer

typedef ::stlsoft::ss_int32_t cs_int32_t
 32-bit integer

typedef ::stlsoft::ss_sint32_t cs_sint32_t
 32-bit signed integer

typedef ::stlsoft::ss_uint32_t cs_uint32_t
 32-bit unsigned integer

typedef ::stlsoft::ss_int_t cs_int_t
 integer

typedef ::stlsoft::ss_sint_t cs_sint_t
 signed integer

typedef ::stlsoft::ss_uint_t cs_uint_t
 unsigned integer

typedef ::stlsoft::ss_long_t cs_long_t
 long

typedef ::stlsoft::ss_bool_t cs_bool_t
 bool

typedef DWORD cs_dword_t
 dword

typedef ::stlsoft::ss_size_t cs_size_t
 size

typedef ::stlsoft::ss_ptrdiff_t cs_ptrdiff_t
 ptr diff

typedef ::stlsoft::ss_streampos_t cs_streampos_t
 streampos

typedef ::stlsoft::ss_streamoff_t cs_streamoff_t
 streamoff


Functions

BSTR bstr_create_w (cs_char_w_t const *s)
 Creates a BSTR from a Unicode string.

BSTR bstr_create_a (cs_char_a_t const *s)
 Creates a BSTR from an ANSI string.

BSTR bstr_create (cs_char_a_t const *s)
 Creates a BSTR from an ANSI string.

BSTR bstr_create (cs_char_w_t const *s)
 Creates a BSTR from a Unicode string.

void bstr_destroy (BSTR bstr)
 Destroys a BSTR.

BSTR bstr_dup (BSTR bstr)
 Duplicates a BSTR.

template<class R, class T> std_mem_fun_t< R, T > std_mem_fun (R(STDAPICALLTYPE T::*f)())
 Helper function for std_mem_fun_t.

template<class R, class T> std_mem_fun_ref_t< R, T > std_mem_fun_ref (R(STDAPICALLTYPE T::*f)())
 Helper function for std_mem_fun_ref_t.

template<typename I> interface AddRef ()
 A veneer interface that hides the AddRef() and Release() methods.

ULONG CoTaskMemGetSize (void *pv)
 Gives the size of a memory block.

cs_sint_t CoTaskMemDidAlloc (void *pv)
 Determines allocation ownership of a memory block.

void CoTaskMemHeapMinimise ()
 Minimises the heap.

void CoTaskMemHeapMinimize ()
 Minimises the heap.

LPOLESTR olestring_create_a (cs_char_a_t const *s)
 Creates an OLE string from an ANSI string.

LPOLESTR olestring_create_w (cs_char_w_t const *s)
 Creates an OLE string from a Unicode string.

LPOLESTR olestring_create (cs_char_a_t const *s)
 Creates an OLE string from an ANSI string.

LPOLESTR olestring_create (cs_char_w_t const *s)
 Creates an OLE string from a Unicode string.

void olestring_destroy (LPOLESTR posz)
 Destroys an OLE string.

LPOLESTR olestring_dup (LPCOLESTR posz)
 Duplicates an OLE string.

void addref (LPUNKNOWN punk)
 Adds a reference on the interface pointer.

void release (LPUNKNOWN punk)
 Releases a reference on the interface pointer.

void safe_addref (LPUNKNOWN punk)
 Adds a reference on the interface pointer.

void safe_release (LPUNKNOWN punk)
 Releases a reference on the interface pointer.

template<typename T> void release_set_null (T *&pt)
 Releases a reference on the interface pointer, and resets the pointer.

HRESULT Rot_Register (DWORD grfFlags, LPUNKNOWN punkObject, LPMONIKER pmkObjectName, DWORD *pdwRegister)
 Registers an object in the Running Object Table.

HRESULT Rot_Revoke (DWORD dwRegister)
 Removes an object from the Running Object Table.

HRESULT Rot_IsRunning (LPMONIKER pmkObjectName)
 Determines if object current in the Running Object Table.

HRESULT Rot_GetObject (LPMONIKER pmkObjectName, LPUNKNOWN *ppunkObject)
 Retrieves the object from the Running Object Table.

HRESULT Rot_NoteChangeTime (DWORD dwRegister, FILETIME *lpfiletime)
 Retrieves the last modification time of a running object in the Running Object Table.

HRESULT Rot_GetTimeOfLastChange (LPMONIKER pmkObjectName, FILETIME *lpfiletime)
 Retrieves the last modification time of an object in the Running Object Table.

HRESULT Rot_EnumRunning (IEnumMoniker **ppenumMoniker)
 Queries the current set of objects in the Running Object Table.

HRESULT CoInitSecurity (LPUNKNOWN punkAccessControl, DWORD cAuthSvc, SOLE_AUTHENTICATION_SERVICE *asAuthSvc, DWORD dwAuthnLevel, DWORD dwImpLevel, RPC_AUTH_IDENTITY_HANDLE pAuthInfo, DWORD dwCapabilities)
 Initialises the COM security libraries with an IAccessControl instance.

HRESULT CoInitSecurity (const GUID &appid, DWORD cAuthSvc, SOLE_AUTHENTICATION_SERVICE *asAuthSvc, DWORD dwAuthnLevel, DWORD dwImpLevel, RPC_AUTH_IDENTITY_HANDLE pAuthInfo, DWORD dwCapabilities)
 Initialises the COM security libraries with an APPID.

HRESULT CoInitSecurity (SECURITY_DESCRIPTOR *psd, DWORD cAuthSvc, SOLE_AUTHENTICATION_SERVICE *asAuthSvc, DWORD dwAuthnLevel, DWORD dwImpLevel, RPC_AUTH_IDENTITY_HANDLE pAuthInfo, DWORD dwCapabilities)
 Initialises the COM security libraries with a security descriptor.

c_str_ptr_GUID_proxy< cs_char_a_tc_str_ptr_null_a (GUID const &guid)
 Returns the corresponding ANSI C-string pointer of the GUID guid.

c_str_ptr_GUID_proxy< cs_char_w_tc_str_ptr_null_w (GUID const &guid)
 Returns the corresponding Unicode C-string pointer of the GUID guid.

c_str_ptr_GUID_proxy< cs_char_o_tc_str_ptr_null_o (GUID const &guid)
 Returns the corresponding C-string pointer of the GUID guid.

c_str_ptr_GUID_proxy< cs_char_o_tc_str_ptr_null (GUID const &guid)
 Returns the corresponding C-string pointer of the GUID guid.

c_str_null_VARIANT_proxy c_str_ptr_null (VARIANT const &v)
 Returns the corresponding ANSI C-string pointer of the VARIANT v, or a null pointer.

c_str_ptr_GUID_proxy< cs_char_a_tc_str_ptr_a (GUID const &guid)
 Returns the corresponding ANSI C-string pointer of the GUID guid.

c_str_ptr_GUID_proxy< cs_char_w_tc_str_ptr_w (GUID const &guid)
 Returns the corresponding Unicode C-string pointer of the GUID guid.

c_str_ptr_GUID_proxy< cs_char_o_tc_str_ptr_o (GUID const &guid)
 Returns the corresponding C-string pointer of the GUID guid.

c_str_ptr_GUID_proxy< cs_char_o_tc_str_ptr (GUID const &guid)
 Returns the corresponding C-string pointer of the GUID guid.

c_str_VARIANT_proxy_a c_str_ptr_a (VARIANT const &v)
 Returns the corresponding ANSI C-string pointer of the VARIANT v.

c_str_VARIANT_proxy_w c_str_ptr_w (VARIANT const &v)
 Returns the corresponding Unicode C-string pointer of the VARIANT v.

c_str_VARIANT_proxy_w c_str_ptr (VARIANT const &v)
 Returns the corresponding C-string pointer of the VARIANT v.

cs_size_t c_str_len_a (GUID const &)
 Returns the length (in characters) of the GUID guid, not including the null-terminating character.

cs_size_t c_str_len_w (GUID const &)
 Returns the length (in characters) of the GUID guid, not including the null-terminating character.

cs_size_t c_str_len_o (GUID const &)
 Returns the length (in characters) of the GUID guid, not including the null-terminating character.

cs_size_t c_str_len (GUID const &)
 Returns the length (in characters) of the GUID guid, not including the null-terminating character.

cs_size_t c_str_len (VARIANT const &v)
 Returns the length (in characters) of the VARIANT v, not including the null-terminating character.

cs_size_t c_str_len_a (VARIANT const &v)
 Returns the length (in characters) of the VARIANT v, not including the null-terminating character.

cs_size_t c_str_len_w (VARIANT const &v)
 Returns the length (in characters) of the VARIANT v, not including the null-terminating character.

cs_size_t c_str_size_a (GUID const &guid)
 Returns the size (in bytes) of the GUID guid, not including the null-terminating character.

cs_size_t c_str_size_w (GUID const &guid)
 Returns the size (in bytes) of the GUID guid, not including the null-terminating character.

cs_size_t c_str_size_o (GUID const &guid)
 Returns the size (in bytes) of the GUID guid, not including the null-terminating character.

cs_size_t c_str_size (GUID const &guid)
 Returns the size (in bytes) of the GUID guid, not including the null-terminating character.

cs_size_t c_str_size_a (VARIANT const &v)
 Returns the size (in bytes) of the VARIANT v, not including the null-terminating character.

cs_size_t c_str_size_w (VARIANT const &v)
 Returns the size (in bytes) of the VARIANT v, not including the null-terminating character.

cs_size_t c_str_size (VARIANT const &v)
 Returns the size (in bytes) of the VARIANT v, not including the null-terminating character.

template<typename I> HRESULT MarshalInterThreadInterfaceInStream (I *pitf, LPSTREAM *ppstm)
 Marshal a interface to a stream.

template<typename I> HRESULT GetInterfaceAndReleaseStream (LPSTREAM pstm, I **ppitf)
 Retrieve a marshaled interface pointer from a stream.


Detailed Description

The COMSTL namespace - comstl (aliased to stlsoft::comstl_project) - is the namespace for the COMSTL project.

Typedef Documentation

typedef ::stlsoft:: ss_bool_t cs_bool_t
 

bool

typedef ::stlsoft:: ss_char_a_t cs_char_a_t
 

Ansi char type.

typedef OLECHAR cs_char_o_t
 

COM char type.

typedef ::stlsoft:: ss_char_w_t cs_char_w_t
 

Unicode char type.

typedef DWORD cs_dword_t
 

dword

typedef ::stlsoft:: ss_int16_t cs_int16_t
 

16-bit integer

typedef ::stlsoft:: ss_int32_t cs_int32_t
 

32-bit integer

typedef ::stlsoft:: ss_int_t cs_int_t
 

integer

typedef ::stlsoft:: ss_long_t cs_long_t
 

long

typedef ::stlsoft:: ss_ptrdiff_t cs_ptrdiff_t
 

ptr diff

typedef ::stlsoft:: ss_sint16_t cs_sint16_t
 

16-bit signed integer

typedef ::stlsoft:: ss_sint32_t cs_sint32_t
 

32-bit signed integer

typedef ::stlsoft:: ss_sint8_t cs_sint8_t
 

8-bit signed integer

typedef ::stlsoft:: ss_sint_t cs_sint_t
 

signed integer

typedef ::stlsoft:: ss_size_t cs_size_t
 

size

typedef ::stlsoft:: ss_streamoff_t cs_streamoff_t
 

streamoff

typedef ::stlsoft:: ss_streampos_t cs_streampos_t
 

streampos

typedef ::stlsoft:: ss_uint16_t cs_uint16_t
 

16-bit unsigned integer

typedef ::stlsoft:: ss_uint32_t cs_uint32_t
 

32-bit unsigned integer

typedef ::stlsoft:: ss_uint8_t cs_uint8_t
 

8-bit unsigned integer

typedef ::stlsoft:: ss_uint_t cs_uint_t
 

unsigned integer


Function Documentation

std_mem_fun_t<R, T> std_mem_fun R(STDAPICALLTYPE T::*    f)() [inline]
 

Helper function for std_mem_fun_t.

std_mem_fun_ref_t<R, T> std_mem_fun_ref R(STDAPICALLTYPE T::*    f)() [inline]
 

Helper function for std_mem_fun_ref_t.


STLSoft Libraries documentation © Synesis Software Pty Ltd, 2001-2004