comstl Namespace Reference


Detailed Description

The comstl namespace contains all components in the COMSTL project.

By default, the comstl namespace is actually an alias for the namespace stlsoft::comstl_project, which is where all the COMSTL components actually reside. This measure allows all components within the main the STLSoft project (which are defined within the stlsoft namespace) to be visible to all components "within" the comstl namespace. (Otherwise, there would be a whole lot of onerous qualification throughout the code of all sub-projects.)

Note:
If either/both of the symbols _STLSOFT_NO_NAMESPACES and _COMSTL_NO_NAMESPACE are defined, all COMSTL components will be defined in the global namespace. Conversely, if the _STLSOFT_NO_NAMESPACE symbol (not to be confused with the _STLSOFT_NO_NAMESPACES symbol!) is defined - meaning that all main project components are to be defined in the global namespace, and _COMSTL_NO_NAMESPACE is not defined, then all COMSTL components will be defined within a bona fide comstl namespace.

This is a vestige of compatibility with compilers with no (or no sensible) namespace support that is maintained for reasons of backwards compatiblity and because it is, in rare circumstances, a useful facility.


Classes

class  collection_sequence
 A template for adapting COM collections to STL-compatible sequence iteration. More...
class  clone_failure
 Exception class thrown when Clone() method fails. More...
struct  noncloneable_enumerator_tag
 Policy tag type that indicates an enumerator's Clone() method will fail. More...
struct  cloneable_enumerator_tag
 Policy tag type that indicates an enumerator's Clone() method will succeed. More...
struct  repeatable_enumerator_tag
 Policy tag type that indicates an enumerator's Clone() method will succeed, and return an enumerator that will provide the same sequence of items as the source instance. More...
struct  input_cloning_policy
 Policy type that causes COM enumerator cloning according the STL Input Iterator concept. More...
struct  cloneable_cloning_policy
 Policy type that causes COM enumerator cloning according the STL Input Iterator concept. More...
struct  forward_cloning_policy
 Policy type that causes COM enumerator cloning according the STL Forward Iterator concept. More...
struct  value_policy_adaptor
 Adapts a value policy to a function class based interface. More...
struct  policy_adaptor
 [DEPRECATED] Adapts a value policy to a function class based interface More...
struct  new_enum_property_policy
 Acquires an enumerator from a collection assuming _NewEnum property. More...
struct  new_enum_method_policy
 Acquires an enumerator from a collection assuming _NewEnum method. More...
struct  new_enum_by_dispid_policy
 Acquires an enumerator from a collection by looking up the DISPID_NEWENUM on the collection's IDispatch interface. More...
class  enumerator_sequence
 A template for adapting COM enumerators to STL-compatible sequence iteration. More...
class  safearray_sequence
 Provides an STL-iterable view over a COM SAFEARRAY. More...
struct  ignore_interface_cast_exception
 A function class that does not throw any exceptions. More...
struct  throw_bad_interface_cast_exception
 A function class that throws the bad_interface_cast exception class. More...
struct  noaddref_release
 A function class that calls Release() on the interface. More...
struct  addref_release
 A function class that does not call Release() on the interface. More...
class  interface_cast_base
 Base class for the interface cast classes comstl::interface_cast_noaddref and comstl::interface_cast_addref. More...
class  interface_cast_noaddref
 Interface cast for raw pointers that does not add a net reference count. More...
class  interface_cast_addref
 Interface cast for raw pointers that does add a net reference count. More...
class  bad_interface_cast
 Exception class thrown by the interface cast classes and functions when interface queries fail. More...
class  errorinfo_desc
 Provides access to the COM Error Info objecg. More...
class  com_exception
 General exception class for COM-related failures. More...
class  variant_type_exception
 Indicates variant type mismatches. More...
struct  exception_policy_base
 Policy adaptor template for exception throwing. More...
struct  com_SUCCEEDED_tester_1_stdcall
 A unary function adaptor for pointers to COM functions, that will cause them to act as predicates. More...
struct  com_SUCCEEDED_tester_2_stdcall
 A binary function adaptor for pointers to COM functions, that will cause them to act as predicates. More...
struct  com_S_OK_tester_1_stdcall
 A unary function adaptor for pointers to COM functions, that will cause them to act as predicates. More...
struct  com_S_OK_tester_2_stdcall
 A binary function adaptor for pointers to COM functions, that will cause them to act as predicates. More...
struct  com_SUCCEEDED_tester_1_cdecl
 A unary function adaptor for pointers to COM functions, that will cause them to act as predicates. More...
struct  com_SUCCEEDED_tester_2_cdecl
 A binary function adaptor for pointers to COM functions, that will cause them to act as predicates. More...
struct  com_S_OK_tester_1_cdecl
 A unary function adaptor for pointers to COM functions, that will cause them to act as predicates. More...
struct  com_S_OK_tester_2_cdecl
 A binary function adaptor for pointers to COM functions, that will cause them to act as predicates. More...
struct  interface_release
 A function class that releases COM interfaces. More...
struct  interface_addref
 A function class that adds references to COM interfaces. More...
struct  BSTR_close
 A function class that closes BSTRs. More...
struct  olestring_close
 A function class that closes OLE strings. More...
struct  task_memory_close
 A function class that closes task memory blocks. More...
struct  VARIANT_close
 A function class that closes VARIANTs. More...
class  task_allocator
 STL Allocator based on the COM task allocator. 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_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_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...
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  interface_ptr
 [DEPRECATED] Manages a COM interface pointer, ensuring that it is released More...
class  bstr
 Facade for the COM BSTR type. More...
struct  IAcyclicSide
 Interface for acyclic communication. More...
class  acyclic_connector
 A component that allows two objects to be connected without creating cyclic dependencies. More...
class  guid
 Facade for the COM GUID type. More...
class  com_initialisation_exception
 Exception class thrown for COM initialisation failures. More...
struct  com_initialisation_exception_policy
 Exception policy whose action is to do nothing. More...
class  initialiser
 Initialises the COM libraries. More...
struct  CoInitialize_policy
 A policy type, for use with comstl::initialiser, that causes initialisation/uninitialisation of the COM libraries with CoInitialize()/CoInitializeEx() and CoUninitialize(). More...
struct  OleInitialize_policy
 A policy type, for use with comstl::initialiser, that causes initialisation/uninitialisation of the COM libraries with OleInitialize() and OleUninitialize(). More...
struct  IID_traits
 Interface identifier traits. More...
struct  GUID_policy
 Value policy for GUID. More...
struct  BSTR_policy
 Value policy for BSTR. More...
struct  LPOLESTR_policy
 Value policy for LPOLESTR. More...
struct  VARIANT_policy
 Value policy for VARIANT. More...
struct  interface_policy
 Value policy for interface. More...
struct  LPUNKNOWN_policy
 Value policy for LPUNKNOWN. More...
struct  STATSTG_policy
 Value policy for STATSTG. More...
struct  FORMATETC_policy
 Value policy for FORMATETC. More...
class  variant
 Facade for the COM VARIANT type. More...

Typedefs

typedef exception_policy_base
< com_exception
com_exception_policy
 The policy class, which throws a com_exception class.
typedef exception_policy_base
< variant_type_exception
variant_type_exception_policy
 The policy class, which throws a com_exception class.
typedef
stlsoft::null_exception_policy 
ignore_initialisation_exception_policy
 Exception policy whose action is to do nothing.
typedef initialiser
< CoInitialize_policy,
ignore_initialisation_exception_policy
com_init_nothrow
 Specialisation of comstl::initialiser that initialises via CoInitialize() but does not throw on failure.
typedef initialiser
< OleInitialize_policy,
ignore_initialisation_exception_policy
ole_init_nothrow
 Specialisation of comstl::initialiser that initialises via OleInitialize() but does not throw on failure.
typedef initialiser
< CoInitialize_policy,
com_initialisation_exception_policy
com_init
 Specialisation of comstl::initialiser that initialises via CoInitialize() and throws on failure.
typedef initialiser
< OleInitialize_policy,
com_initialisation_exception_policy
ole_init
 Specialisation of comstl::initialiser that initialises via OleInitialize() and throws on failure.
typedef com_init_nothrow com_initialiser
 [DEPRECATED] Specialisation of comstl::initialiser that initialises via CoInitialize() but does not throw on failure.
typedef ole_init_nothrow ole_initialiser
 [DEPRECATED] Specialisation of comstl::initialiser that initialises via OleInitialize() but does not throw on failure.
typedef com_initialiser com_initializer
 Equivalent to com_initialiser.
typedef ole_initialiser ole_initializer
 Equivalent to ole_initialiser.

Functions

template<typename I>
I * simple_interface_cast (I *pi)
template<typename I>
interface AddRef ()
 STDMETHOD_ (ULONG, Release)()
template<typename IDest, typename ISrc>
bool interface_cast_test (ISrc *src)
 Determines whether an interface is available on an object.
template<typename IDest, typename ISrc>
bool interface_cast_test (stlsoft::ref_ptr< ISrc > &src)
 Determines whether an interface is available on an object.
template<typename IDest, typename ISrc>
stlsoft::ref_ptr< IDest > interface_cast (ISrc *src)
 Casts a raw interface pointer to a wrapped instance.
template<typename IDest, typename ISrc>
stlsoft::ref_ptr< IDest > interface_cast (stlsoft::ref_ptr< ISrc > src)
 Casts between instances of wrapped instances.
template<typename IDest, typename ISrc>
stlsoft::ref_ptr< IDest > try_interface_cast (ISrc *src)
 Attempts to cast a raw interface pointer to a wrapped instance.
template<typename IDest, typename ISrc>
stlsoft::ref_ptr< IDest > try_interface_cast (stlsoft::ref_ptr< ISrc > src)
 Attempts to cast between instances of wrapped instances.
template<typename I, typename X>
get_ptr (comstl_ns_qual(interface_cast_noaddref)< I, X > &p)
 Attribute shim to retrieve the interface pointer of the given cast instance.
template<typename I, typename X>
get_ptr (comstl_ns_qual(interface_cast_noaddref)< I, X > const &p)
 Attribute shim to retrieve the interface pointer of the given cast instance.
template<typename I, typename X>
get_ptr (comstl_ns_qual(interface_cast_addref)< I, X > &p)
 Attribute shim to retrieve the interface pointer of the given cast instance.
template<typename I, typename X>
I const get_ptr (comstl_ns_qual(interface_cast_addref)< I, X > const &p)
 Attribute shim to retrieve the interface pointer of the given cast instance.
ss_sint8_t & transfer_resource (ss_sint8_t &r, ss_sint8_t v)
ss_uint8_t & transfer_resource (ss_uint8_t &r, ss_uint8_t v)
ss_sint16_t & transfer_resource (ss_sint16_t &r, ss_sint16_t v)
ss_uint16_t & transfer_resource (ss_uint16_t &r, ss_uint16_t v)
ss_sint32_t & transfer_resource (ss_sint32_t &r, ss_sint32_t v)
ss_uint32_t & transfer_resource (ss_uint32_t &r, ss_uint32_t v)
float & transfer_resource (float &r, float v)
double & transfer_resource (double &r, double v)
long double & transfer_resource (long double &r, long double v)
bool & transfer_resource (bool &r, VARIANT_BOOL v)
template<typename R, typename V>
R *& transfer_resource (R *&r, V *v)
template<typename R, typename C, typename V>
method_cast (C &c, HRESULT(C::*pfn)(V *))
template<typename R, typename C, typename V>
method_cast (C *c, HRESULT(STDAPICALLTYPE C::*pfn)(V *))
LPCTSTR c_str_data (comstl_ns_qual(errorinfo_desc) const &eid)
 c_str_data String Access Shim for errorinfo_desc
size_t c_str_len (comstl_ns_qual(errorinfo_desc) const &eid)
 c_str_len String Access Shim for errorinfo_desc
LPCTSTR c_str_ptr (comstl_ns_qual(errorinfo_desc) const &eid)
 c_str_ptr String Access Shim for errorinfo_desc
LPCTSTR c_str_ptr_null (comstl_ns_qual(errorinfo_desc) const &eid)
 c_str_ptr_null String Access Shim for errorinfo_desc
template<typename S>
S & operator<< (S &s, comstl_ns_qual(errorinfo_desc) const &eid)
 stream insertion shim for comstl::errorinfo_desc
HRESULT set_error_info (char const *description)
 Sets the description of the current error object to the given ANSI string.
HRESULT set_error_info (wchar_t const *description)
 Sets the description of the current error object to the given Unicode string.
HRESULT set_error_info (char const *description, char const *source)
 Sets the description and source of the current error object to the given ANSI string.
HRESULT set_error_info (wchar_t const *description, wchar_t const *source)
 Sets the description and source of the current error object to the given Unicode string.
HRESULT set_error_info (char const *description, char const *source, REFGUID guid)
 Sets the description, source and GUID of the current error object to the given ANSI string.
HRESULT set_error_info (wchar_t const *description, wchar_t const *source, REFGUID guid)
 Sets the description, source and GUID of the current error object to the given Unicode string.
void EXCEPINFO_free (EXCEPINFO *pxi)
 Releases the resources associated with the EXCEPINFO instance.
template<typename A0>
com_SUCCEEDED_tester_1_cdecl< A0 > com_SUCCEEDED (HRESULT(1 *pfn)(A0))
 Creator function to adapt pointers to unary COM functions, causing them to act as predicates.
template<typename A0, typename A1>
com_SUCCEEDED_tester_2_stdcall
< A0, A1 > 
com_SUCCEEDED (HRESULT(__stdcall *pfn)(A0, A1))
 Creator function to adapt pointers to binary COM functions, causing them to act as predicates.
template<typename A0, typename A1>
com_SUCCEEDED_tester_2_cdecl
< A0, A1 > 
com_SUCCEEDED (HRESULT(1 *pfn)(A0, A1))
 Creator function to adapt pointers to binary COM functions, causing them to act as predicates.
template<typename A0>
com_S_OK_tester_1_cdecl< A0 > com_S_OK (HRESULT(1 *pfn)(A0))
 Creator function to adapt pointers to unary COM functions, causing them to act as predicates.
template<typename A0, typename A1>
com_S_OK_tester_2_stdcall< A0, A1 > com_S_OK (HRESULT(__stdcall *pfn)(A0, A1))
 Creator function to adapt pointers to binary COM functions, causing them to act as predicates.
template<typename A0, typename A1>
com_S_OK_tester_2_cdecl< A0, A1 > com_S_OK (HRESULT(1 *pfn)(A0, A1))
 Creator function to adapt pointers to binary COM functions, causing them to act as predicates.
size_t 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.
HRESULT CoInitSecurity (LPUNKNOWN punkAccessControl, LONG 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 (GUID const &appid, LONG 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, LONG 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.
size_t guid2string_w (GUID const &guid, wchar_t buff[1+COMSTL_CCH_GUID])
size_t guid2string_a (GUID const &guid, char buff[1+COMSTL_CCH_GUID])
template<typename C>
bool operator== (C const *lhs, c_str_ptr_GUID_proxy< C > const &rhs)
template<typename C>
bool operator== (c_str_ptr_GUID_proxy< C > const &lhs, C const *rhs)
template<typename C>
bool operator!= (C const *lhs, c_str_ptr_GUID_proxy< C > const &rhs)
template<typename C>
bool operator!= (c_str_ptr_GUID_proxy< C > const &lhs, C const *rhs)
template<typename C, typename S>
S & operator<< (S &s, c_str_ptr_GUID_proxy< C > const &shim)
c_str_ptr_GUID_proxy< TCHAR > c_str_data (GUID const &guid)
 Returns the corresponding possibly unterminated C-string pointer of the GUID guid.
size_t c_str_len (GUID const &)
 Returns the length (in characters) of the GUID guid, not including the null-terminating character.
c_str_ptr_GUID_proxy< TCHAR > c_str_ptr (GUID const &guid)
 Returns the corresponding C-string pointer of the GUID guid.
c_str_ptr_GUID_proxy< TCHAR > c_str_ptr_null (GUID const &guid)
 Returns the corresponding C-string pointer of the GUID guid.
bool operator== (LPCOLESTR lhs, c_str_null_VARIANT_proxy const &rhs)
bool operator== (c_str_null_VARIANT_proxy const &lhs, LPCOLESTR rhs)
bool operator!= (LPCOLESTR lhs, c_str_null_VARIANT_proxy const &rhs)
bool operator!= (c_str_null_VARIANT_proxy const &lhs, LPCOLESTR rhs)
bool operator== (LPCSTR lhs, c_str_VARIANT_proxy_a const &rhs)
bool operator== (c_str_VARIANT_proxy_a const &lhs, LPCSTR rhs)
bool operator!= (LPCSTR lhs, c_str_VARIANT_proxy_a const &rhs)
bool operator!= (c_str_VARIANT_proxy_a const &lhs, LPCSTR rhs)
bool operator== (LPCOLESTR lhs, c_str_VARIANT_proxy_w const &rhs)
bool operator== (c_str_VARIANT_proxy_w const &lhs, LPCOLESTR rhs)
bool operator!= (LPCOLESTR lhs, c_str_VARIANT_proxy_w const &rhs)
bool operator!= (c_str_VARIANT_proxy_w const &lhs, LPCOLESTR rhs)
template<typename S>
S & operator<< (S &s, c_str_null_VARIANT_proxy const &shim)
template<typename S>
S & operator<< (S &s, c_str_VARIANT_proxy_w const &shim)
template<typename S>
S & operator<< (S &s, c_str_VARIANT_proxy_a const &shim)
c_str_VARIANT_proxy_a c_str_data (VARIANT const &v)
 Returns the corresponding possibly unterminated C-string pointer of the VARIANT v.
size_t c_str_len_a (VARIANT const &v)
 Returns the length (in characters) of the VARIANT v, not including the null-terminating character.
size_t c_str_len_w (VARIANT const &v)
 Returns the length (in characters) of the VARIANT v, not including the null-terminating character.
size_t c_str_len (VARIANT const &v)
 Returns the length (in characters) of the VARIANT v, not including the null-terminating character.
c_str_VARIANT_proxy_a c_str_ptr (VARIANT const &v)
 Returns the corresponding C-string pointer of the VARIANT v.
c_str_null_VARIANT_proxy c_str_ptr_null_w (VARIANT const &v)
 Returns the corresponding ANSI C-string pointer of the VARIANT v, or a null pointer.
template<typename T>
void swap (interface_ptr< T > &lhs, interface_ptr< T > &rhs)
template<typename T>
T * get_ptr (interface_ptr< T > const &p)
bstr::const_pointer c_str_data (comstl_ns_qual(bstr) const &b)
 c_str_data String Access Shim for comstl::bstr
size_t c_str_len (comstl_ns_qual(bstr) const &b)
 c_str_len String Access Shim for comstl::bstr
bstr::const_pointer c_str_ptr (comstl_ns_qual(bstr) const &b)
 c_str_ptr String Access Shim for comstl::bstr
bstr::const_pointer c_str_ptr_null (comstl_ns_qual(bstr) const &b)
 c_str_ptr_null String Access Shim for comstl::bstr
bool operator== (bstr const &lhs, bstr const &rhs)
bool operator!= (bstr const &lhs, bstr const &rhs)
bool operator== (bstr const &lhs, BSTR const &rhs)
bool operator!= (bstr const &lhs, BSTR const &rhs)
bool operator== (BSTR const &lhs, bstr const &rhs)
bool operator!= (BSTR const &lhs, bstr const &rhs)
BSTR bstr_create_w (wchar_t const *s)
 Creates a BSTR from a Unicode string.
BSTR bstr_create_w (wchar_t const *s, size_t len)
 Creates a BSTR from a Unicode string.
BSTR bstr_create_a (char const *s)
 Creates a BSTR from an ANSI string.
BSTR bstr_create_a (char const *s, size_t len)
 Creates a BSTR from an ANSI string.
BSTR bstr_create (char const *s)
 Creates a BSTR from an ANSI string.
BSTR bstr_create (char const *s, size_t len)
 Creates a BSTR from an ANSI string.
BSTR bstr_create (wchar_t const *s)
 Creates a BSTR from a Unicode string.
BSTR bstr_create (wchar_t const *s, size_t len)
 Creates a BSTR from a Unicode string.
void bstr_destroy (BSTR bstr)
 Destroys a BSTR.
BSTR bstr_dup (BSTR bstr)
 Duplicates a BSTR.
int bstr_compare (BSTR s1, BSTR s2)
 Compares two BSTR strings.
LPOLESTR olestring_create_a (char const *s)
 Creates an OLE string from an ANSI string.
LPOLESTR olestring_create_w (wchar_t const *s)
 Creates an OLE string from a Unicode string.
LPOLESTR olestring_create (char const *s)
 Creates an OLE string from an ANSI string.
LPOLESTR olestring_create (wchar_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.
template<typename I>
HRESULT co_create_instance (REFCLSID clsid, I **ppi, DWORD dwClsContext=CLSCTX_ALL)
 Type-safe creation of a COM object, acquiring the requisite interface pointer.
template<typename I>
HRESULT co_create_instance (LPCOLESTR id, I **ppi, DWORD dwClsContext=CLSCTX_ALL)
 Type-safe creation of a COM object from a Programmatic Id, acquiring the requisite interface pointer.
template<typename T, typename I, typename U>
HRESULT co_create_instance (REFCLSID clsid, stlsoft::ref_ptr< T, I, U > &wi, DWORD dwClsContext=CLSCTX_ALL)
 Type-safe creation of a COM object, acquiring the requisite interface pointer into an interface wrapper instance.
template<typename T, typename I, typename U>
HRESULT co_create_instance (LPCOLESTR id, stlsoft::ref_ptr< T, I, U > &wi, DWORD dwClsContext=CLSCTX_ALL)
 Type-safe creation of a COM object from a Programmatic Id, acquiring the requisite interface wrapper instance.
int CY_compare (CY const *lhs, CY const *rhs)
 [C++ only] Compares two CY structures
int CY_compare (CY const &lhs, CY const &rhs)
 [C++ only] Compares two CY structures
int DECIMAL_compare (DECIMAL const *lhs, DECIMAL const *rhs)
 [C++ only] Compares two DECIMAL structures
int DECIMAL_compare (DECIMAL const &lhs, DECIMAL const &rhs)
 [C++ only] Compares two DECIMAL structures
c_str_ptr_GUID_proxy< TCHAR > c_str_data (comstl_ns_qual(guid) const &g)
 c_str_data String Access Shim for comstl::guid
size_t c_str_len (comstl_ns_qual(guid) const &g)
 c_str_len String Access Shim for comstl::guid
c_str_ptr_GUID_proxy< TCHAR > c_str_ptr (comstl_ns_qual(guid) const &g)
 c_str_ptr String Access Shim for comstl::guid
c_str_ptr_GUID_proxy< TCHAR > c_str_ptr_null (comstl_ns_qual(guid) const &g)
 c_str_ptr_null String Access Shim for comstl::guid
bool operator== (guid const &lhs, guid const &rhs)
bool operator!= (guid const &lhs, guid const &rhs)
bool operator== (guid const &lhs, GUID const &rhs)
bool operator!= (guid const &lhs, GUID const &rhs)
bool operator== (GUID const &lhs, guid const &rhs)
bool operator!= (GUID const &lhs, guid const &rhs)
HRESULT get_object_identity (LPUNKNOWN p, LPUNKNOWN *identity)
 Evaluates an object's identity.
HRESULT is_same_object (LPUNKNOWN p1, LPUNKNOWN p2)
 Determines whether two interfaces refer to the same object.
HRESULT is_interface_implemented (LPUNKNOWN p, REFIID riid)
 Determines whether an object implements a given interface without adding a reference count.
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 get_stream_size (LPSTREAM pstm, ULARGE_INTEGER *psize)
 Gets the size of a stream.
HRESULT get_stream_size (LPSTREAM pstm, ULARGE_INTEGER &size)
 Gets the size of a stream.
HRESULT get_stream_size (LPSTREAM pstm, cs_uint64_t &size)
 Gets the size of a stream.
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.
bool operator== (variant const &lhs, variant const &rhs)
bool operator!= (variant const &lhs, variant const &rhs)
bool operator== (variant const &lhs, VARIANT const &rhs)
bool operator!= (variant const &lhs, VARIANT const &rhs)
bool operator== (VARIANT const &lhs, variant const &rhs)
bool operator!= (VARIANT const &lhs, variant const &rhs)
bool VARIANT_equal (VARIANT const *lhs, VARIANT const *rhs, HRESULT *comparisonSucceeded)
 [C++ only] Indicates whether two VARIANT structures are equal
bool VARIANT_equal (VARIANT const &lhs, VARIANT const &rhs, HRESULT *comparisonSucceeded)
 [C++ only] Indicates whether two VARIANT structures are equal

Variables

const size_t COMSTL_CCH_GUID = 38
com_SUCCEEDED_tester_1_stdcall
< A0 > 
com_SUCCEEDED (HRESULT(__stdcall *pfn)(A0))
 Creator function to adapt pointers to unary COM functions, causing them to act as predicates.
com_S_OK_tester_1_stdcall< A0 > com_S_OK (HRESULT(__stdcall *pfn)(A0))
 Creator function to adapt pointers to unary COM functions, causing them to act as predicates.


Function Documentation

HRESULT comstl::get_object_identity ( LPUNKNOWN  p,
LPUNKNOWN *  identity 
) [inline]

Evaluates an object's identity.

Parameters:
p The pointer to the object whose identity will be evaluated
identity 
Returns:
A status code indicating whether the identity was retrieved
Return values:
S_OK The pointers refer to the same object
E_POINTER If p is null
E_INVALIDARG If identity is null
any-other-code Indicates an error from the call to QueryInterface()
Precondition:
p is a NULL pointer, or a valid pointer to a COM interface.
Remarks:
If the function success, the caller must release the reference count associated with the interface pointer in *identity.
Note:
Implemented in terms of the C-compatible function comstl__get_object_identity().

References comstl__get_object_identity().

HRESULT comstl::is_interface_implemented ( LPUNKNOWN  p,
REFIID  riid 
) [inline]

Determines whether an object implements a given interface without adding a reference count.

Returns:
A status code indicating whether the given interface is implemented
Return values:
S_OK The interface is implemented and accessible
E_NOINTERFACE The interface is not implemented
any-other-code Indicates an error from the call to QueryInterface()
Precondition:
p is a non-NULL pointer to a COM interface.

References comstl__is_interface_implemented().

HRESULT comstl::is_same_object ( LPUNKNOWN  p1,
LPUNKNOWN  p2 
) [inline]

Determines whether two interfaces refer to the same object.

Returns:
A status code indicating whether the two pointers refer to the same object
Return values:
S_OK The pointers refer to the same object
S_FALSE The pointers refer to different objects
E_POINTER One or both pointers are NULL.
any-other-code Indicates an error from one of the calls to QueryInterface()
Precondition:
p1 and p2 are NULL pointers, or are valid pointers to COM interfaces.

References comstl__is_same_object().


Generated on Thu Jun 10 08:58:25 2010 for STLSoft by  doxygen 1.5.6