205 lines
6.2 KiB
C
205 lines
6.2 KiB
C
|
/*
|
||
|
File automatically generated by SOAdvancedDissector.py
|
||
|
More information at http://indefero.soutade.fr/p/soadvanceddissector
|
||
|
*/
|
||
|
|
||
|
#ifndef _DPIO_H
|
||
|
#define _DPIO_H
|
||
|
|
||
|
#include <dp.h>
|
||
|
#include <dpdev.h>
|
||
|
#include <dputils.h>
|
||
|
|
||
|
namespace dpio {
|
||
|
|
||
|
class StreamClient;
|
||
|
class BufferedStreamClient;
|
||
|
class DataStream;
|
||
|
class FileRemover;
|
||
|
class FileStream;
|
||
|
class FileWriter;
|
||
|
class Partition;
|
||
|
class FilesystemPartition;
|
||
|
class MessagePipe;
|
||
|
class Stream;
|
||
|
class UniqueFileCreator;
|
||
|
|
||
|
|
||
|
class StreamClient: public dp::Unknown
|
||
|
{
|
||
|
public:
|
||
|
StreamClient();
|
||
|
|
||
|
virtual ~StreamClient();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void propertyReady(dp::String const&, dp::String const&) = 0;
|
||
|
virtual void totalLengthReady(unsigned int) = 0;
|
||
|
virtual void propertiesReady() = 0;
|
||
|
virtual void bytesReady(unsigned int, dp::Data const&, bool) = 0;
|
||
|
virtual void reportError(dp::String const&) = 0;
|
||
|
|
||
|
void* fields[20];
|
||
|
};
|
||
|
|
||
|
class BufferedStreamClient: public dpio::StreamClient
|
||
|
{
|
||
|
public:
|
||
|
BufferedStreamClient();
|
||
|
|
||
|
virtual ~BufferedStreamClient();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void propertyReady(dp::String const&, dp::String const&);
|
||
|
virtual void totalLengthReady(unsigned int);
|
||
|
virtual void propertiesReady();
|
||
|
virtual void bytesReady(unsigned int, dp::Data const&, bool);
|
||
|
virtual void reportError(dp::String const&);
|
||
|
|
||
|
void* getBuffer() const;
|
||
|
void safeBufferAppend(unsigned char const*, unsigned int);
|
||
|
|
||
|
};
|
||
|
|
||
|
class DataStream: public dputils::GuardedStream
|
||
|
{
|
||
|
public:
|
||
|
DataStream(dp::String const&, dp::Data const&, dpio::StreamClient*, dp::Callback*);
|
||
|
|
||
|
virtual ~DataStream();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual int getCapabilities();
|
||
|
virtual void requestInfo();
|
||
|
virtual void requestBytes(unsigned int, unsigned int);
|
||
|
virtual void reportWriteError(dp::String const&);
|
||
|
virtual void adjustModifiedStream();
|
||
|
virtual void deleteThis();
|
||
|
|
||
|
void* fields[10];
|
||
|
};
|
||
|
|
||
|
class FileRemover
|
||
|
{
|
||
|
public:
|
||
|
static void remove(dpio::Partition*, dp::String const&, dp::Callback*);
|
||
|
|
||
|
};
|
||
|
|
||
|
class FileStream: public dputils::GuardedStream
|
||
|
{
|
||
|
public:
|
||
|
FileStream(dpio::Partition*, dp::String const&, dpio::StreamClient*, unsigned int);
|
||
|
|
||
|
virtual ~FileStream();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void setStreamClient(dpio::StreamClient*);
|
||
|
virtual int getCapabilities();
|
||
|
virtual void requestInfo();
|
||
|
virtual void requestBytes(unsigned int, unsigned int);
|
||
|
virtual void reportWriteError(dp::String const&);
|
||
|
virtual void adjustModifiedStream();
|
||
|
virtual void deleteThis();
|
||
|
virtual void virtfunc12(){}
|
||
|
void propertiesReady(){}
|
||
|
|
||
|
void closeHandles();
|
||
|
void getTemporaryFolder();
|
||
|
void isFolder(dpio::Partition*, dp::String const&);
|
||
|
void listFolder(dpio::Partition*, dp::String const&);
|
||
|
|
||
|
void* fields[10];
|
||
|
|
||
|
};
|
||
|
|
||
|
class FileWriter: public dpio::StreamClient
|
||
|
{
|
||
|
public:
|
||
|
FileWriter();
|
||
|
|
||
|
virtual ~FileWriter();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void propertyReady(dp::String const&, dp::String const&);
|
||
|
virtual void totalLengthReady(unsigned int);
|
||
|
virtual void propertiesReady();
|
||
|
virtual void bytesReady(unsigned int, dp::Data const&, bool);
|
||
|
virtual void reportError(dp::String const&);
|
||
|
|
||
|
void write(dpio::Partition*, dp::String const&, dpio::Stream*, dp::Callback*);
|
||
|
|
||
|
void* fields[5];
|
||
|
|
||
|
};
|
||
|
|
||
|
class Partition: public dp::Unknown
|
||
|
{
|
||
|
public:
|
||
|
virtual ~Partition();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual dpdev::Device* getDevice() = 0;
|
||
|
virtual int getIndex() = 0;
|
||
|
virtual dp::String getPartitionName() = 0;
|
||
|
virtual dp::String getPartitionType() = 0;
|
||
|
virtual dp::String getRootURL() = 0;
|
||
|
virtual dp::String getDocumentFolderURL() = 0;
|
||
|
virtual dp::String getTemporaryFolderURL() = 0;
|
||
|
virtual dpio::Stream* readFile(dp::String const&, dpio::StreamClient*, unsigned int);
|
||
|
virtual void createUniqueFile(dp::String const&, dp::String const&, dp::Callback*) = 0;
|
||
|
virtual void writeFile(dp::String const&, dpio::Stream*, dp::Callback*) = 0;
|
||
|
virtual void removeFile(dp::String const&, dp::Callback*) = 0;
|
||
|
|
||
|
static dpio::FilesystemPartition* createFileSystemPartition(dpdev::Device*, int index, dp::String const& type, dp::String const& rootPath, dp::String const& docPath, dp::String const& tempPath);
|
||
|
void findPartitionForURL(dp::String const&);
|
||
|
void releaseFileSystemPartition(dpio::Partition*);
|
||
|
void setFileSystemPartitionIndex(dpio::Partition*, int);
|
||
|
|
||
|
};
|
||
|
|
||
|
class FilesystemPartition: public dpio::Partition
|
||
|
{
|
||
|
public:
|
||
|
FilesystemPartition(dpdev::Device*, int, dp::String const&, dp::String const&, dp::String const&, dp::String const&);
|
||
|
|
||
|
virtual ~FilesystemPartition();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void* getOptionalInterface(char const*);
|
||
|
virtual dpdev::Device* getDevice();
|
||
|
virtual int getIndex();
|
||
|
virtual dp::String getPartitionName();
|
||
|
virtual dp::String getPartitionType();
|
||
|
virtual dp::String getRootURL();
|
||
|
virtual dp::String getDocumentFolderURL();
|
||
|
virtual dp::String getTemporaryFolderURL();
|
||
|
virtual dpio::Stream* readFile(dp::String const&, dpio::StreamClient*, unsigned int);
|
||
|
virtual void createUniqueFile(dp::String const&, dp::String const&, dp::Callback*);
|
||
|
virtual void writeFile(dp::String const&, dpio::Stream*, dp::Callback*);
|
||
|
virtual void removeFile(dp::String const&, dp::Callback*);
|
||
|
|
||
|
void setIndex(int);
|
||
|
|
||
|
void* fields[10];
|
||
|
};
|
||
|
|
||
|
class MessagePipe
|
||
|
{
|
||
|
public:
|
||
|
~MessagePipe();
|
||
|
|
||
|
void processBroadcasts();
|
||
|
|
||
|
};
|
||
|
|
||
|
class UniqueFileCreator: public dp::Unknown
|
||
|
{
|
||
|
public:
|
||
|
virtual ~UniqueFileCreator();
|
||
|
virtual void* getOptionalInterface(char const*);
|
||
|
|
||
|
void createUnique(dpio::Partition*, dp::String const&, dp::String const&, dp::Callback*);
|
||
|
|
||
|
};
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
#endif // _DPIO_H
|