0a3a2e29cb35d88c0b3595d9a973ad168be77cf9
[framework/web/wrt-installer.git] / src / commons / drm / CXMLFile.h
1 \r
2 /********************************************************************************\r
3 * Copyright ? 2004-2009 by INKA Entworks, Inc (www.inka.co.kr).                                 *\r
4 * All rights reserved.                                                                  * \r
5 *                                                                                       * \r
6 * No parts of this source code may be in any way copied, reproduced, modified   *\r
7 * or distributed without the prior written consent of INKA Entworks, Inc.       *\r
8 * CXMLFile.h: interface for the CXMLFile class.                                                                 *\r
9 *********************************************************************************/ \r
10 \r
11 #if !defined(AFX_CXMLFILE_H__21F76587_B9C8_4407_9C16_186F3D47ADE1__INCLUDED_)\r
12 #define AFX_CXMLFILE_H__21F76587_B9C8_4407_9C16_186F3D47ADE1__INCLUDED_\r
13 \r
14 //#include "Shp.h"\r
15 #include "InkaTypes.h"\r
16 #include "CXMLElement.h"\r
17 \r
18 #if _MSC_VER > 1000\r
19 #pragma once\r
20 #endif // _MSC_VER > 1000\r
21 \r
22 #ifndef IN\r
23         #define IN\r
24 #endif\r
25 \r
26 #ifndef OUT\r
27         #define OUT\r
28 #endif\r
29 \r
30 #define ELEMENT_QUEUE_MAX               2048\r
31 class CXMLFile  \r
32 {\r
33 protected:\r
34         LPCTSTR                                                 m_pszXML;\r
35         CXMLElement*                                    m_paElementQueue[ ELEMENT_QUEUE_MAX ];\r
36         int                                                             m_nQueueIndex;\r
37         CXMLElement*                                    m_pRoot;\r
38         \r
39         int                                     _Parse();\r
40         int                                             _GetElementName(  LPTSTR pszElementName );\r
41         CXMLElement*                            _Pop();\r
42         int                                             _Push( CXMLElement* p );\r
43         int                                             _GetAttributeNameAndValue(  LPTSTR pszName,  LPTSTR pszValue );\r
44 \r
45 public:\r
46         CXMLFile();\r
47         virtual ~CXMLFile();\r
48 \r
49         int                                             LoadFromStream(  LPCTSTR pszXML );\r
50         int                                             LoadFromFile(  LPCTSTR pszFileName );\r
51         inline CXMLElement*             GetRoot() { return m_pRoot; }\r
52 };\r
53 \r
54 #endif // !defined(AFX_CXMLFILE_H__21F76587_B9C8_4407_9C16_186F3D47ADE1__INCLUDED_)\r