Files
Slnkdwf/ATL90/source/SProxy/Content.h
Jos Groot Lipman 0e37d774d2 Merge SLNKDWF64 branch
svn path=/Slnkdwf/trunk/; revision=23911
2015-01-21 12:09:31 +00:00

77 lines
1.2 KiB
C++

//
// Content.h
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// CContent represents the complexContent and the simpleContent
#pragma once
#include "stdafx.h"
#include "XSDElement.h"
#include "QName.h"
#include "Util.h"
class CComplexType;
class CContent : public CXSDElement
{
private:
// restriction/extension
CComplexType * m_pType;
BOOL m_bMixed;
CStringW m_strID;
protected:
public:
CContent()
:m_pType(NULL), m_bMixed(FALSE)
{
}
CComplexType * AddType(CComplexType *pContent = NULL);
CComplexType * GetType();
~CContent();
inline HRESULT SetID(const wchar_t *wsz, int cch)
{
m_strID.SetString(wsz, cch);
return S_OK;
}
inline HRESULT SetID(const CStringW& strID)
{
m_strID = strID;
return S_OK;
}
inline HRESULT SetMixed(const wchar_t *wszValue, int cchValue)
{
bool bVal;
HRESULT hr = GetBooleanValue(&bVal, wszValue, cchValue);
if (SUCCEEDED(hr))
{
m_bMixed = (bVal == true) ? TRUE : FALSE;
}
// unknown string
return hr;
}
inline HRESULT SetMixed(BOOL bMixed)
{
m_bMixed = bMixed;
}
inline BOOL GetMixed()
{
return m_bMixed;
}
}; // class CContent