• Classes
  • Modules
  • Namespaces
  • Files
  • Related Pages
  • File List
  • File Members

XMLDOMParseError.h

Go to the documentation of this file.
00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  * 
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  * 
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
00016  */
00017 
00018 /*
00019  * $Id: XMLDOMParseError.h 568078 2007-08-21 11:43:25Z amassari $
00020  */
00021 
00022 #ifndef ___xmldomparseerror_h___
00023 #define ___xmldomparseerror_h___
00024 
00025 #include <xercesc/util/XercesDefs.hpp>
00026 XERCES_CPP_NAMESPACE_USE
00027 
00028 class ATL_NO_VTABLE CXMLDOMParseError : 
00029         public CComObjectRootEx<CComSingleThreadModel>,
00030         public IDispatchImpl<IXMLDOMParseError, &IID_IXMLDOMParseError, &LIBID_Xerces, XERCES_VERSION_MAJOR, INVK_CAT2_RAW_NUMERIC(XERCES_VERSION_MINOR,XERCES_VERSION_REVISION)>
00031 {
00032 public:
00033         CXMLDOMParseError()
00034                 :m_Code          (0)
00035                 ,m_url           (_T(""))
00036                 ,m_Reason        (_T(""))
00037                 ,m_Source        (_T(""))
00038                 ,m_LineNumber(0)
00039                 ,m_LinePos       (0)
00040                 ,m_FilePos       (0)
00041         {}
00042 
00043         HRESULT FinalConstruct();
00044         void    FinalRelease(); 
00045 
00046 DECLARE_NOT_AGGREGATABLE(CXMLDOMParseError)
00047 
00048 DECLARE_PROTECT_FINAL_CONSTRUCT()
00049 
00050 BEGIN_COM_MAP(CXMLDOMParseError)
00051         COM_INTERFACE_ENTRY(IXMLDOMParseError)
00052         COM_INTERFACE_ENTRY(IDispatch)
00053 END_COM_MAP()
00054 
00055         // IXMLDOMParseError methods
00056         STDMETHOD(get_errorCode)(/* [out][retval] */ long  *errorCode);
00057     STDMETHOD(get_url)(/* [out][retval] */ BSTR  *urlString);
00058     STDMETHOD(get_reason)(/* [out][retval] */ BSTR  *reasonString);
00059     STDMETHOD(get_srcText)(/* [out][retval] */ BSTR  *sourceString);
00060     STDMETHOD(get_line)(/* [out][retval] */ long  *lineNumber);
00061     STDMETHOD(get_linepos)(/* [out][retval] */ long  *linePosition);
00062     STDMETHOD(get_filepos)(/* [out][retval] */ long  *filePosition);
00063 
00064         void SetData(long code,
00065                                  const _bstr_t &url,
00066                                  const _bstr_t &reason,
00067                                  const _bstr_t &source,
00068                                  long  lineNumber,
00069                                  long  linePos,
00070                                  long  filePos);
00071         void Reset();
00072 
00073 private:
00074 
00075         long    m_Code;
00076         _bstr_t m_url;
00077         _bstr_t m_Reason;
00078         _bstr_t m_Source;
00079         long    m_LineNumber;
00080         long    m_LinePos;
00081         long    m_FilePos;
00082 
00083         CComCriticalSection     m_CS;
00084 };
00085 
00086 typedef CComObject<CXMLDOMParseError> CXMLDOMParseErrorObj;
00087 
00088 #endif // ___xmldomparseerror_h___

Generated on Thu Jan 12 2012 23:13:51 for ACS-10.0 C++ API by  doxygen 1.7.0