Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*
Copyright (c) 1997-1999 Microsoft Corporation
*/
#ifndef __SDP_TIME_PERIOD_SAFEARRAY__
#define __SDP_TIME_PERIOD_SAFEARRAY__
#include "sdpcommo.h"
#include "sdpsarr.h"
class _DllDecl SDP_TIME_PERIOD_SAFEARRAY : protected SDP_SAFEARRAY_WRAP_EX<SDP_TIME_PERIOD, SDP_TIME_PERIOD_LIST>
{ public:
inline SDP_TIME_PERIOD_SAFEARRAY( IN SDP_TIME_PERIOD_LIST &SdpTimePeriodList );
HRESULT GetSafeArray( OUT VARIANT *IsCompactVariant, OUT VARIANT *UnitVariant, OUT VARIANT *CompactValueVariant, OUT VARIANT *PeriodValueVariant );
inline HRESULT SetSafeArray( IN VARIANT &IsCompactVariant, IN VARIANT &UnitVariant, IN VARIANT &CompactValueVariant, IN VARIANT &PeriodValueVariant );
protected:
VARTYPE m_VarType[4]; VARIANT_BOOL m_IsCompact; CHAR m_Unit; LONG m_CompactValue; LONG m_PeriodValue;
virtual BOOL Get( IN SDP_TIME_PERIOD &ListMember, IN ULONG NumEntries, IN void **Element, OUT HRESULT &HResult );
virtual BOOL Set( IN SDP_TIME_PERIOD &ListMember, IN ULONG NumEntries, IN void ***Element, OUT HRESULT &HResult ); };
inline SDP_TIME_PERIOD_SAFEARRAY::SDP_TIME_PERIOD_SAFEARRAY( IN SDP_TIME_PERIOD_LIST &SdpTimePeriodList ) : SDP_SAFEARRAY_WRAP_EX<SDP_TIME_PERIOD, SDP_TIME_PERIOD_LIST>(SdpTimePeriodList) { m_VarType[0] = VT_BOOL; m_VarType[1] = VT_I1; m_VarType[2] = VT_I4; m_VarType[3] = VT_I4; }
inline HRESULT SDP_TIME_PERIOD_SAFEARRAY::SetSafeArray( IN VARIANT &IsCompactVariant, IN VARIANT &UnitVariant, IN VARIANT &CompactValueVariant, IN VARIANT &PeriodValueVariant ) { VARIANT *VariantArray[] = { &IsCompactVariant, &UnitVariant, &CompactValueVariant, &PeriodValueVariant };
return SetSafeArrays( sizeof(VariantArray)/sizeof(VARIANT *), m_VarType, VariantArray ); }
#endif // __SDP_TIME_PERIOD_SAFEARRAY__
|