WriteFile.h

См. документацию.
00001 /* 
00002  * File:   WriteFile.h
00003  * Author: nick
00004  *
00005  * Created on 6 Сентябрь 2011 г., 12:24
00006  */
00007 
00008 #ifndef _WRITEFILE_H
00009 #define _WRITEFILE_H
00010 /*
00011  * ReadFile.h
00012  *
00013  *  Created on: 12.06.2011
00014  *      Author: nick
00015  */
00016 
00017 #include "../XML/TagIQ.h"
00018 #define WriteFile_xmlns "write-file"
00019 #define WriteFileArgs_xmlns "write-file#args"
00020 #define WriteFile_xmlnsDir "write-file#dir"
00021 //#define WriteFile_xmlnsFlags "write-file#flags"
00022 //#define WriteFile_xmlnsDesc "write-file#desc"
00023 //#define WriteFile_xmlnsResult "write-file#result"
00024 #define WriteFile_xmlnsResultSize "write-file#result-size"
00025 #define WriteFile_xmlnsResultPID "write-file#result-packetID"
00026 #include "FileInfoSubtag.h"
00027 #include <fuse.h>
00028 #include <iostream>
00029 #include <string.h>
00030 
00031 using namespace std;
00032 
00033 class WriteFile:public TagIQ {
00034 public:
00035         void setSubmite();
00036         void setResult(unsigned int packetid, size_t size_for_read);
00037         void getResult(unsigned int &packetid, size_t &size_for_read);
00038         WriteFile(Node* parent=NULL,string from="", string to="", IQType type=TagIQ::Get, string id="");
00039         void getFileData(string &path, size_t &offset, size_t &size,  fuse_file_info &fi);
00040         void setFileData(const string &path, size_t offset, size_t size, const fuse_file_info &fi);
00041         WriteFile(const Node &basedNode);
00042         virtual ~WriteFile();
00043 };
00044 
00045 #endif  /* _WRITEFILE_H */
00046