STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Functions | Variables
Platform::Details Namespace Reference

Classes

struct  __abi_CaptureBase
 
struct  __abi_CapturePtr
 
struct  __abi_FunctorCapture
 
struct  __remove_hat
 
struct  __remove_hat< T^>
 
class  AgileHelper
 
struct  AgileTypeHelper
 
struct  array_helper
 
struct  array_helper< __TArg, false >
 
struct  array_helper< __TArg, true >
 
struct  BoxValueType
 
struct  BoxValueType< true >
 
class  CustomEnum
 
class  CustomValueType
 
struct  EventLock
 
struct  RemoveConst
 
struct  RemoveConst< const __TArg >
 
struct  RemoveCV
 
struct  RemoveVolatile
 
struct  RemoveVolatile< volatile __TArg >
 
class  sealed
 

Functions

 __declspec (dllimport) IUnknown *__stdcall GetObjectContext()
 
template<typename T >
IUnknown IUnknown IUnknown * __declspec (no_refcount) inline HRESULT GetProxy(T^ObjectIn
 
template<typename T >
HRESULT ReleaseInContext (T *ObjectIn, IUnknown *ContextCallBack)
 
template<typename T >
EventLockGetStaticEventLock ()
 
template<typename __HighLevelType , unsigned int __dimension>
::Platform::Array< __HighLevelType, __dimension > __abi_array_attach (void *__src, unsigned int __size, bool __isFastPass, bool __needsInit)
 
template<typename __HighLevelType , unsigned int __dimension>
void __abi_array_copy_to_and_release (::Platform::Array< __HighLevelType, __dimension >^__arr, void **__dest, unsigned int *__size)
 
template<typename __LowLevelType , typename __HighLevelType , unsigned int __dimension>
__LowLevelType * __abi_array_to_raw (const ::Platform::Array< __HighLevelType, __dimension >^)
 
void CreateString (const ::default::char16 *__bufferArg, unsigned int __lengthArg, __abi_HSTRING *__destArg)
 
void CreateString (const ::default::char16 *__sourceStringArg, __abi_HSTRING *__destArg)
 
void DuplicateString (__abi_HSTRING __sourceArg, __abi_HSTRING *__destArg)
 
void CreateStringReference (const ::default::char16 *__sourceStringArg, unsigned int __lengthArg, __Platform_Details_HSTRING_HEADER *__hstringHeaderArg, __abi_HSTRING *__stringArg)
 
void __cdecl ReportUnhandledError (::Platform::Exception^)
 
__declspec(dllexport) long __stdcall ReCreateFromException(__declspec(dllexport) __declspec (dllexport) void *__stdcall GetIBoxArrayVtable(void *)
 
template<typename T >
 CustomBox (T value)
 
template<>
Platform::String ToStringInternal< true > ()
 
template<>
Platform::String ToStringInternal< false > ()
 
template<typename __HighLevelType , unsigned int __dimension>
 __declspec (no_refcount)
 

Variables

 REFIID
 
IUnknown IUnknown IUnknown IUnknown * ContextCallBack
 
IUnknown IUnknown IUnknown IUnknown T * Proxy
 
virtual property T Value
 
unsigned int
 

Function Documentation

template<typename __HighLevelType , unsigned int __dimension>
::Platform::Array<__HighLevelType, __dimension> Platform::Details::__abi_array_attach ( void __src,
unsigned int  __size,
bool  __isFastPass,
bool  __needsInit 
)
template<typename __HighLevelType , unsigned int __dimension>
void Platform::Details::__abi_array_copy_to_and_release ( ::Platform::Array< __HighLevelType, __dimension >^  __arr,
void **  __dest,
unsigned int __size 
)
2017  {
2018  if (__arrArg == nullptr)
2019  {
2020  *__destArg = nullptr;
2021  *__sizeArg = 0;
2022  return;
2023  }
2024 
2025  __HighLevelType **__destHigh = reinterpret_cast<__HighLevelType **>(__destArg);
2026  __arrArg->CopyToOrDetach(__destHigh, __sizeArg);
2027 
2028  // __arrArg is a local variable declared in a wrapper marked with no_refcount
2029  // This function is called from that function, have to release the Array^
2030  reinterpret_cast<__abi_IUnknown*>(static_cast< ::Platform::Object^>(__arrArg))->__abi_Release();
2031  // The caller will not use __arrArg after this function returns
2032  }
template<typename __LowLevelType , typename __HighLevelType , unsigned int __dimension>
__LowLevelType * Platform::Details::__abi_array_to_raw ( const ::Platform::Array< __HighLevelType, __dimension >^  __arrArg)
2038  {
2039  if (__arrArg == nullptr)
2040  {
2041  return nullptr;
2042  }
2043  return reinterpret_cast<__LowLevelType*>(__arrArg->Data);
2044  }
unsigned const void __int64 * Platform::Details::__declspec ( dllimport  )
template<typename T >
IUnknown IUnknown IUnknown* Platform::Details::__declspec ( no_refcount  )
Platform::Details::__declspec ( dllexport  )
template<typename __HighLevelType , unsigned int __dimension>
Platform::Details::__declspec ( no_refcount  )
1992  {
1993  if (static_cast<unsigned int>(-1) / sizeof(__HighLevelType) < __elementcountArg)
1994  {
1995  __abi_WinRTraiseInvalidArgumentException();
1996  }
1997  auto __arr = ref new ::Platform::Array<__HighLevelType, __dimension>(nullptr, 0);
1998 
1999  if (__needsInitArg)
2000  {
2001  __Platform_memset(__srcArg, 0, sizeof(__HighLevelType) * __elementcountArg);
2002  }
2003  if (!__isFastPassArg)
2004  {
2005  __arr->Attach(reinterpret_cast<__HighLevelType*>(__srcArg), __elementcountArg);
2006  }
2007  else
2008  {
2009  __arr->AttachFastPass(reinterpret_cast<__HighLevelType*>(__srcArg), __elementcountArg);
2010  }
2011 
2012  return __arr;
2013  }
reference_wrapper< _Ty > ref(_Ty &_Val) _NOEXCEPT
Definition: xrefwrap:691
void *__cdecl __Platform_memset(void *, int, size_t)
void Platform::Details::CreateString ( const ::default::char16 *  __bufferArg,
unsigned int  __lengthArg,
__abi_HSTRING __destArg 
)
inline
1190  {
1191  __abi_ThrowIfFailed( __Platform_WindowsCreateString((const ::default::char16 *)__bufferArg, __lengthArg, __destArg) );
1192  }
__declspec(non_user_code) __declspec(non_user_code) long __stdcall __Platform_WindowsCreateString(const ::default::char16 *, unsigned int, __abi_HSTRING *)
void __abi_ThrowIfFailed(long __hrArg)
Definition: vccorlib.h:91
void Platform::Details::CreateString ( const ::default::char16 *  __sourceStringArg,
__abi_HSTRING __destArg 
)
inline
1195  {
1196  __abi_ThrowIfFailed( __Platform_WindowsCreateString((const ::default::char16 *)__sourceStringArg, __sourceStringArg ? static_cast<unsigned int>(__Platform_wcslen((const ::default::char16 *)__sourceStringArg)) : 0u, __destArg) );
1197  }
__declspec(non_user_code) __declspec(non_user_code) long __stdcall __Platform_WindowsCreateString(const ::default::char16 *, unsigned int, __abi_HSTRING *)
size_t __cdecl __Platform_wcslen(const ::default::char16 *)
void __abi_ThrowIfFailed(long __hrArg)
Definition: vccorlib.h:91
void Platform::Details::CreateStringReference ( const ::default::char16 *  __sourceStringArg,
unsigned int  __lengthArg,
__Platform_Details_HSTRING_HEADER __hstringHeaderArg,
__abi_HSTRING __stringArg 
)
inline
1211  {
1212  __abi_ThrowIfFailed(__Platform_WindowsCreateStringReference(__sourceStringArg, __lengthArg, __hstringHeaderArg, __stringArg));
1213  }
long __stdcall __Platform_WindowsCreateStringReference(const ::default::char16 *, unsigned int, __Platform_Details_HSTRING_HEADER *, __abi_HSTRING *)
void __abi_ThrowIfFailed(long __hrArg)
Definition: vccorlib.h:91
template<typename T >
Platform::Details::CustomBox ( value)
sealed
1407  : value_(value)
1408  {
1409  *reinterpret_cast<void**>(static_cast< ::Platform::IValueType^>(this)) =
1410  GetIBoxVtable(reinterpret_cast<void*>(static_cast< ::Platform::IBox<T>^>(this)));
1411  }
void Platform::Details::DuplicateString ( __abi_HSTRING  __sourceArg,
__abi_HSTRING __destArg 
)
inline
1200  {
1201  if (__sourceArg == nullptr)
1202  {
1203  *__destArg = __sourceArg;
1204  return;
1205  }
1206 
1207  __abi_ThrowIfFailed( __Platform_WindowsDuplicateString(__sourceArg, __destArg) );
1208  }
void __abi_ThrowIfFailed(long __hrArg)
Definition: vccorlib.h:91
long __stdcall __Platform_WindowsDuplicateString(__abi_HSTRING, __abi_HSTRING *)
template<typename T >
EventLock* Platform::Details::GetStaticEventLock ( )
313  {
314  static EventLock __eventLock = { nullptr, nullptr };
315  return &__eventLock;
316  }
template<typename T >
HRESULT Platform::Details::ReleaseInContext ( T *  ObjectIn,
IUnknown *  ContextCallBack 
)
inline
38  {
39  return ReleaseInContextImpl(ObjectIn, ContextCallBack);
40  }
IUnknown IUnknown IUnknown IUnknown * ContextCallBack
Definition: agile.h:31
void __cdecl Platform::Details::ReportUnhandledError ( ::Platform::Exception^  )
template<>
Platform::String Platform::Details::ToStringInternal< false > ( )
1443  {
1444  return ::__abi_details::__abi_ObjectToString(this, false);
1445  }
template<>
Platform::String Platform::Details::ToStringInternal< true > ( )
1432  {
1433  String^ s = ::__abi_CustomToString(&value_);
1434  if (s)
1435  {
1436  return s;
1437  }
1438  return T::typeid->FullName;
1439  }
__declspec(dllimport) Platform::String __abi_CustomToString(void *)
Definition: vccorlib.h:1382

Variable Documentation

IUnknown IUnknown IUnknown IUnknown* Platform::Details::ContextCallBack
unsigned Platform::Details::int
IUnknown IUnknown IUnknown IUnknown T* Platform::Details::Proxy
Initial value:
{
return GetProxyImpl(*reinterpret_cast<IUnknown**>(&ObjectIn), __uuidof(T^) , ContextCallBack, reinterpret_cast<IUnknown**>(Proxy))
IUnknown IUnknown IUnknown IUnknown T * Proxy
Definition: agile.h:32
IUnknown IUnknown IUnknown IUnknown * ContextCallBack
Definition: agile.h:31
Platform::Details::REFIID
virtual property T Platform::Details::Value
Initial value:
{
T get()
{
return value_;
}
}
virtual Platform::String^ ToString()
{
return ToStringInternal<__is_enum(T)>();
}
private:
template<bool isEnum>
Platform::String^ ToStringInternal()