summaryrefslogtreecommitdiffstats
path: root/writerperfect/source/stream/WPXSvStream.h
blob: cf12b286a904a81ac63622956a9779e55611081a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#ifndef WPXSVSTREAM_H
#define WPXSVSTREAM_H

#ifndef _COM_SUN_STAR_IO_XINPUTSTREAM_H_
#include <com/sun/star/io/XInputStream.hpp>
#endif

#include <libwpd/WPXStream.h>

class WPXSvInputStream : public WPXInputStream
{
public:
    WPXSvInputStream( ::com::sun::star::uno::Reference<
                      ::com::sun::star::io::XInputStream > xStream );
    virtual ~WPXSvInputStream();

    virtual bool isOLEStream();
    virtual WPXInputStream * getDocumentOLEStream();

    virtual const uint8_t *read(size_t numBytes);
    virtual int seek(long offset, WPX_SEEK_TYPE seekType);
    virtual long tell();
    virtual bool atEOS();

private:
    ::com::sun::star::uno::Reference<
              ::com::sun::star::io::XInputStream > mxStream;
    ::com::sun::star::uno::Sequence< sal_Int8 > maData;
    sal_Int64 mnOffset;
    sal_Int64 mnLength;
};

#endif