Mobile API Reference  MicroStrategy 2019
Msi_objbase.h
Go to the documentation of this file.
1 // File: objbase.h
2 // Date: August 14, 2001
3 // Author: Liqun Jin
4 //
5 // Copyright (C) 2001 MicroStrategy Incorporated
6 // All rights reserved
7 
8 // This header file replaces the objbase.h file from ATL on UNIX
9 // File only declares similar symbols and classes to the corresponding VC++ file, which is used by Intelligence Server
10 
11 #ifndef __OBJBASE_H__
12 #define __OBJBASE_H__
13 
14 #include "MsiCOM/MsiCOM/Msi_ole2.h"
15 #include "PDCHeader/PDCrpc.h"
16 
17 #include "Base/Base/GUID.h"
18 // Make the GUID operators part of the global namespace (as they are in COM)
19 using MBase::operator ==;
20 using MBase::operator !=;
21 using MBase::IsEqualGUID;
22 
23 // COM Memory Allocation
24 WINOLEAPI_(LPVOID) DLL_MSICOM_EXIM CoTaskMemAlloc(ULONG cb);
26 WINOLEAPI_(void) DLL_MSICOM_EXIM CoTaskMemFree(LPVOID pv);
27 
28 // Marshaling
30  DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags);
32  DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags);
38 WINOLEAPI DLL_MSICOM_EXIM CoLockObjectExternal(LPUNKNOWN pUnk, BOOL fLock, BOOL fLastUnlockReleases);
40  DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags,
41  LPMARSHAL FAR* ppMarshal);
42 
44  LPUNKNOWN FAR* ppUnkInner);
46  ULONG cItfs,
47  IID **arIIDs,
48  UUID **arIPIDs,
49  DWORD dwBindingFlags,
50  ULONG cBindings,
51  LPUNKNOWN *pBindings,
52  IUnknown **ppUnkInner);
53 
54 /* flags for CoGetStdMarshalEx */
55 typedef enum tagSTDMSHLFLAGS
56 {
57  SMEXF_SERVER = 0x01, // server side aggregated std marshaler
58  SMEXF_HANDLER = 0x02 // client side (handler) agg std marshaler
59 } STDMSHLFLAGS;
60 
61 
62 WINOLEAPI_(BOOL) DLL_MSICOM_EXIM CoIsHandlerConnected(LPUNKNOWN pUnk);
63 WINOLEAPI_(BOOL) DLL_MSICOM_EXIM CoHasStrongExternalConnections(LPUNKNOWN pUnk);
64 
65 // Apartment model inter-thread interface passing helpers
67  LPSTREAM *ppStm);
68 
70  LPVOID FAR* ppv);
71 
73  LPUNKNOWN *ppunkMarshal);
74 
75 
77 // added by yma, 8/29/01
82 WINOLEAPI_(BOOL) DLL_MSICOM_EXIM CoIsOle1Class(REFCLSID rclsid);
85 WINOLEAPI_(int) DLL_MSICOM_EXIM StringFromGUID2(REFGUID rguid, LPOLESTR lpsz, int cbMax);
86 
88 
89 #ifndef HUGEP
90 #define HUGEP
91 #endif
92 
93 
94 
95 
96 #endif
signed char BOOL
Definition: PDCwtypes.h:101
#define REFGUID
Definition: PDCwtypes.h:318
#define WINOLEAPI
Definition: Msi_ole2.h:26
LPOLESTR lpsz
Definition: Msi_objbase.h:85
Definition: Msi_objbase.h:57
IStream __RPC_FAR * LPSTREAM
Definition: Msi_objidl.h:121
IUnknown __RPC_FAR * LPUNKNOWN
Definition: Msi_oaidl.h:53
bool IsEqualGUID(const ::GUID &irGUID1, const ::GUID &irGUID2)
Definition: Base/Base/GUID.h:64
WINOLEAPI DLL_MSICOM_EXIM CoGetStaticMarshal(IUnknown *pUnkControl, ULONG cItfs, IID **arIIDs, UUID **arIPIDs, DWORD dwBindingFlags, ULONG cBindings, LPUNKNOWN *pBindings, IUnknown **ppUnkInner)
IMarshal __RPC_FAR * LPMARSHAL
Definition: Msi_objidl.h:168
WINOLEAPI DLL_MSICOM_EXIM CoLockObjectExternal(LPUNKNOWN pUnk, BOOL fLock, BOOL fLastUnlockReleases)
WINOLEAPI DLL_MSICOM_EXIM CoCreateGuid(GUID FAR *pguid)
WINOLEAPI_(LPVOID) DLL_MSICOM_EXIM CoTaskMemAlloc(ULONG cb)
#define REFCLSID
Definition: PDCwtypes.h:328
WINOLEAPI DLL_MSICOM_EXIM CoCreateFreeThreadedMarshaler(LPUNKNOWN punkOuter, LPUNKNOWN *ppunkMarshal)
WINOLEAPI DLL_MSICOM_EXIM CoGetInterfaceAndReleaseStream(LPSTREAM pStm, REFIID iid, LPVOID FAR *ppv)
long HRESULT
Definition: FragmentedString.h:20
WINOLEAPI DLL_MSICOM_EXIM CoMarshalHresult(LPSTREAM pstm, HRESULT hresult)
WINOLEAPI DLL_MSICOM_EXIM CoGetStdMarshalEx(LPUNKNOWN pUnkOuter, DWORD smexflags, LPUNKNOWN FAR *ppUnkInner)
void * LPVOID
Definition: PDCwtypes.h:136
WINOLEAPI DLL_MSICOM_EXIM IIDFromString(LPOLESTR lpsz, LPIID lpiid)
WINOLEAPI DLL_MSICOM_EXIM CoGetStandardMarshal(REFIID riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags, LPMARSHAL FAR *ppMarshal)
WINOLEAPI DLL_MSICOM_EXIM StringFromCLSID(REFCLSID rclsid, LPOLESTR FAR *lplpsz)
REFIID LPVOID * ppv
Definition: Msi_atlbase.h:90
Definition: Msi_objbase.h:58
WINOLEAPI DLL_MSICOM_EXIM CoMarshalInterface(LPSTREAM pStm, REFIID riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags)
WINOLEAPI DLL_MSICOM_EXIM CLSIDFromProgID(LPCOLESTR lpszProgID, LPCLSID lpclsid)
tagSTDMSHLFLAGS
Definition: Msi_objbase.h:55
WINOLEAPI DLL_MSICOM_EXIM CoMarshalInterThreadInterfaceInStream(REFIID riid, LPUNKNOWN pUnk, LPSTREAM *ppStm)
enum tagSTDMSHLFLAGS STDMSHLFLAGS
WINOLEAPI DLL_MSICOM_EXIM CoGetMarshalSizeMax(ULONG *pulSize, REFIID riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags)
WINOLEAPI DLL_MSICOM_EXIM CoDisconnectObject(LPUNKNOWN pUnk, DWORD dwReserved)
REFIID riid
Definition: Msi_atlbase.h:90
Definition: Msi_oaidl.h:41
WINOLEAPI DLL_MSICOM_EXIM CoReleaseMarshalData(LPSTREAM pStm)
ULONG cb
Definition: Msi_objbase.h:25
#define DLL_MSICOM_EXIM
Definition: MsiCOM.h:19
LPOLESTR int cbMax
Definition: Msi_objbase.h:85
WINOLEAPI DLL_MSICOM_EXIM StringFromIID(REFIID rclsid, LPOLESTR FAR *lplpsz)
OLECHAR __RPC_FAR * LPOLESTR
Definition: PDCwtypes.h:392
#define FAR
Definition: PDCwtypes.h:68
const OLECHAR __RPC_FAR * LPCOLESTR
Definition: PDCwtypes.h:394
WINOLEAPI DLL_MSICOM_EXIM CoUnmarshalInterface(LPSTREAM pStm, REFIID riid, LPVOID FAR *ppv)
WINOLEAPI DLL_MSICOM_EXIM CLSIDFromString(LPOLESTR lpsz, LPCLSID pclsid)
WINOLEAPI DLL_MSICOM_EXIM CoUnmarshalHresult(LPSTREAM pstm, HRESULT FAR *phresult)
DWORD ULONG
Definition: PDCwtypes.h:127
unsigned long DWORD
Definition: PDCwtypes.h:121
#define REFIID
Definition: PDCwtypes.h:321
Definition: Base/Base/GUID.h:32
WINOLEAPI DLL_MSICOM_EXIM ProgIDFromCLSID(REFCLSID clsid, LPOLESTR FAR *lplpszProgID)