libshevek
file.hh
1 /* file.hh - files with fd
2  * Copyright 2003 Bas Wijnen <wijnen@debian.org>
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program. If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 #ifndef SHEVEK_FILE_HH
19 #define SHEVEK_FILE_HH
20 
21 #include "fd.hh"
22 
23 namespace shevek
24 {
26  class file : public fd
27  {
28  file (Glib::RefPtr <Glib::MainContext> main);
29  virtual ~file ();
30  public:
32  static Glib::RefPtr <file> create (Glib::RefPtr <Glib::MainContext> main
33  = Glib::MainContext::get_default () );
35  void open (std::string name, bool read, bool write);
37  void close ();
38  };
39 }
40 
41 #endif
Use normal files with the fd class.
Definition: file.hh:26
void close()
Close the file.
static Glib::RefPtr< file > create(Glib::RefPtr< Glib::MainContext > main=Glib::MainContext::get_default())
Create a new file object.
Definition: args.hh:52
void write(std::string const &data, write_done_t cb=write_done_t())
Write data and set a callback (defaults to none).
void open(std::string name, bool read, bool write)
Open a new file in the object.
The fd class is a generic wrapper for a file descriptor to use it in the Glib event loop...
Definition: fd.hh:29
void read(read_t cb)
Poll for read and set read callback (resets custom callback)