diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-12-21 14:51:10 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-12-21 19:13:48 +0100 |
commit | 94b068298de792d5662c21c467e822c32e173434 (patch) | |
tree | cfa455f1fff02ca36c47a96d93e168db3ac50406 /writerfilter/source/dmapper/TagLogger.hxx | |
parent | a3a049840f101cd47e0ec04afef1964c61641a85 (diff) |
TagLogger is used only in dmapper
Change-Id: Ic88909ded4a28b1c019a03eefdaf3716cfbe9079
Diffstat (limited to 'writerfilter/source/dmapper/TagLogger.hxx')
-rw-r--r-- | writerfilter/source/dmapper/TagLogger.hxx | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/writerfilter/source/dmapper/TagLogger.hxx b/writerfilter/source/dmapper/TagLogger.hxx new file mode 100644 index 000000000000..e7043106c5b4 --- /dev/null +++ b/writerfilter/source/dmapper/TagLogger.hxx @@ -0,0 +1,83 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef INCLUDED_WRITERFILTER_SOURCE_DMAPPER_TAGLOGGER_HXX +#define INCLUDED_WRITERFILTER_SOURCE_DMAPPER_TAGLOGGER_HXX + +#include <rtl/ustring.hxx> +#include <com/sun/star/beans/XPropertySet.hpp> +#include <resourcemodel/WW8ResourceModel.hxx> +#include <string> +#include <boost/shared_ptr.hpp> +#include <libxml/xmlwriter.h> + +namespace writerfilter +{ +#ifdef DEBUG_WRITERFILTER + class IdToString + { + public: + typedef boost::shared_ptr<IdToString> Pointer_t; + virtual std::string toString(const Id & id) const = 0; + + protected: + ~IdToString() {} + }; +#endif + + class TagLogger + { + public: + typedef boost::shared_ptr<TagLogger> Pointer_t; + + private: + xmlTextWriterPtr pWriter; + const char* pName; + + TagLogger(const char* name); + + public: + ~TagLogger(); + + static Pointer_t getInstance(const char * name); + +#ifdef DEBUG_WRITERFILTER + void setFileName(const std::string & filename); + void startDocument(); + void endDocument(); + + void element(const std::string & name); + void unoPropertySet(css::uno::Reference<css::beans::XPropertySet> rPropSet); + void startElement(const std::string & name); +#endif + void attribute(const std::string & name, const std::string & value); +#ifdef DEBUG_WRITERFILTER + void attribute(const std::string & name, const OUString & value); + void attribute(const std::string & name, sal_uInt32 value); + void attribute(const std::string & name, const css::uno::Any aAny); + void chars(const std::string & chars); + void chars(const OUString & chars); + void endElement(); +#endif + }; +} + +#endif // INCLUDED_WRITERFILTER_SOURCE_DMAPPER_TAGLOGGER_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |