IXMLOStr.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2005 Palmsource, Inc.
00003  * 
00004  * This software is licensed as described in the file LICENSE, which
00005  * you should have received as part of this distribution. The terms
00006  * are also available at http://www.openbinder.org/license.html.
00007  * 
00008  * This software consists of voluntary contributions made by many
00009  * individuals. For the exact contribution history, see the revision
00010  * history and logs, available at http://www.openbinder.org
00011  */
00012 
00013 #ifndef _XML2_IXMLOSTR_H
00014 #define _XML2_IXMLOSTR_H
00015 
00016 #include <support/IInterface.h>
00017 #include <support/String.h>
00018 
00019 #if _SUPPORTS_NAMESPACE
00020 namespace palmos {
00021 namespace xml {
00022 using namespace support;
00023 #endif
00024 
00025 /**************************************************************************************/
00026 
00027 class IXMLOStr : public IInterface
00028 {
00029     public:
00030 
00031         //the following could be B_DECLARE_META_INTERFACE(), but we've no RXMLOStr
00032         B_DECLARE_META_INTERFACE(XMLOStr)
00033 
00034         virtual status_t    StartTag(SString &name, SValue &attributes) = 0;
00035         virtual status_t    EndTag(SString &name) = 0;
00036         virtual status_t    Content(const char  *data, int32_t size) = 0;
00037         virtual status_t    Comment(const char *data, int32_t size);
00038 };
00039 
00040 /**************************************************************************************/
00041 
00042 #if _SUPPORTS_NAMESPACE
00043 } } // namespace palmos::xml
00044 #endif
00045 
00046 #endif /* _XML2_XMLOSTR_H */