ReadFile.h

См. документацию.
00001 /*
00002  * ReadFile.h
00003  *
00004  *  Created on: 12.06.2011
00005  *      Author: nick
00006  */
00007 
00008 #ifndef READFILE_H_
00009 #define READFILE_H_
00010 #include "../XML/TagIQ.h"
00011 #define ReadFile_xmlns "read-file"
00012 #define ReadFileArgs_xmlns "read-file#args"
00013 #define ReadFile_xmlnsDir "read-file#dir"
00014 //#define ReadFile_xmlnsFlags "read-file#flags"
00015 //#define ReadFile_xmlnsDesc "read-file#desc"
00016 //#define ReadFile_xmlnsResult "read-file#result"
00017 #define ReadFile_xmlnsResultSize "read-file#result-size"
00018 #define ReadFile_xmlnsResultPID "read-file#result-packetID"
00019 #include "FileInfoSubtag.h"
00020 #include <fuse.h>
00021 #include <iostream>
00022 #include <string.h>
00023 
00024 using namespace std;
00025 
00026 class ReadFile:public TagIQ {
00027 public:
00028         void setSubmite();
00029         void setResult(unsigned int packetid, size_t size_for_read);
00030         void getResult(unsigned int &packetid, size_t &size_for_read);
00031         ReadFile(Node* parent=NULL,string from="", string to="", IQType type=TagIQ::Get, string id="");
00032         void getFileData(string &path, size_t &offset, size_t &size,  fuse_file_info &fi);
00033         void setFileData(const string &path, size_t offset, size_t size, const fuse_file_info &fi);
00034         ReadFile(const Node &basedNode);
00035         virtual ~ReadFile();
00036 };
00037 
00038 #endif /* READFILE_H_ */