Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
#define P6_IMPLEMENT_ICOM13 (   classname,
  interface1,
  interface2,
  interface3,
  interface4,
  interface5,
  interface6,
  interface7,
  interface8,
  interface9,
  interface10,
  interface11,
  interface12,
  interface13 
)
Value:
P6ERR classname::queryInterface(const P6REFIID iid, P6R::P6VOID** ppv) { \
if(!ppv) \
return P6R::eAccessFault; \
*ppv = NULL; \
if(iid == IID_p6ICom) *ppv = static_cast<interface1*>(this); \
else if(iid == IID_##interface1) *ppv = static_cast<interface1*>(this); \
else if(iid == IID_##interface2) *ppv = static_cast<interface2*>(this); \
else if(iid == IID_##interface3) *ppv = static_cast<interface3*>(this); \
else if(iid == IID_##interface4) *ppv = static_cast<interface4*>(this); \
else if(iid == IID_##interface5) *ppv = static_cast<interface5*>(this); \
else if(iid == IID_##interface6) *ppv = static_cast<interface6*>(this); \
else if(iid == IID_##interface7) *ppv = static_cast<interface7*>(this); \
else if(iid == IID_##interface8) *ppv = static_cast<interface8*>(this); \
else if(iid == IID_##interface9) *ppv = static_cast<interface9*>(this); \
else if(iid == IID_##interface10) *ppv = static_cast<interface10*>(this); \
else if(iid == IID_##interface11) *ppv = static_cast<interface11*>(this); \
else if(iid == IID_##interface12) *ppv = static_cast<interface12*>(this); \
else if(iid == IID_##interface13) *ppv = static_cast<interface13*>(this); \
else return P6R::eNoInterface; \
reinterpret_cast<p6ICom*>(*ppv)->addref(); \
return P6R::eOk; \
} \
#define P6REFIID
Definition: p6defs.h:197
P6UINT32 P6ERR
COM err return type see P6ERR.h.
Definition: p6types.h:141
#define P6_IMPLEMENT_THREADSAFE_ADDREF(classname)
Definition: p6comhlpr.h:91
void P6VOID
Definition: p6types.h:109
#define P6_IMPLEMENT_CREATEINSTANCE_NO_AGG(classname)
Definition: p6comhlpr.h:66
#define P6_IMPLEMENT_THREADSAFE_RELEASE(classname)
Definition: p6comhlpr.h:98

Definition at line 354 of file p6comhlpr.h.