merge the formfield patch from ooo-build
[ooovba.git] / writerfilter / source / doctok / WW8StreamImpl.hxx
blob6f19a90229f1477ab9f4e250ec4637e3bd332af3
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: WW8StreamImpl.hxx,v $
10 * $Revision: 1.6 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #include <com/sun/star/uno/XComponentContext.hpp>
32 #include <com/sun/star/io/XInputStream.hpp>
33 #include <com/sun/star/container/XNameContainer.hpp>
34 #include <doctok/WW8Document.hxx>
35 #ifndef INCLUDED_OUTPUT_WITH_DEPTH_HXX
36 #include <resourcemodel/OutputWithDepth.hxx>
37 #endif
39 namespace writerfilter {
40 namespace doctok
42 using namespace ::com::sun::star;
44 class WW8StreamImpl : public WW8Stream
46 uno::Reference<uno::XComponentContext> mrComponentContext;
47 uno::Reference<io::XInputStream> mrStream;
48 uno::Reference<container::XNameContainer> xOLESimpleStorage;
49 uno::Reference<lang::XMultiComponentFactory> xFactory;
51 public:
52 WW8StreamImpl(uno::Reference<uno::XComponentContext> rContext,
53 uno::Reference<io::XInputStream> rStream);
54 virtual ~WW8StreamImpl();
56 virtual WW8Stream::Pointer_t getSubStream(const ::rtl::OUString & rId);
58 virtual Sequence get(sal_uInt32 nOffset, sal_uInt32 nCount)
59 const;
61 //virtual bool put(sal_uInt32 nOffset, const Sequence & rSeq);
63 virtual string getSubStreamNames() const;
64 virtual uno::Sequence<rtl::OUString> getSubStreamUNames() const;
66 virtual void dump(OutputWithDepth<string> & o) const;