00001
00002
00003 #ifndef _LIBGNOMEVFSMM_RESOLVE_HANDLE_H
00004 #define _LIBGNOMEVFSMM_RESOLVE_HANDLE_H
00005
00006
00007 #include <glibmm.h>
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include <libgnomevfsmm/address.h>
00027 #include <glibmm.h>
00028 #include <libgnomevfs/gnome-vfs-resolve.h>
00029
00030
00031 namespace Gnome
00032 {
00033
00034 namespace Vfs
00035 {
00036
00037
00038 class ResolveHandle
00039 {
00040 public:
00041 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00042 typedef ResolveHandle CppObjectType;
00043 typedef GnomeVFSResolveHandle BaseObjectType;
00044 #endif
00045
00046 private:
00047
00048
00049 public:
00050 ResolveHandle();
00051 ~ResolveHandle();
00052
00053 void resolve(const Glib::ustring& hostname);
00054
00055 bool next_address(Address& address);
00056 void reset_to_beginning();
00057
00058 GnomeVFSResolveHandle* gobj() { return gobject_; }
00059 const GnomeVFSResolveHandle* gobj() const { return gobject_; }
00060 GnomeVFSResolveHandle** gobj_addr() { return &gobject_; }
00061
00062 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00063 void assign_gobj(GnomeVFSResolveHandle* src);
00064 #endif
00065
00066 protected:
00067 GnomeVFSResolveHandle* gobject_;
00068
00069 private:
00070 ResolveHandle(const ResolveHandle&);
00071 ResolveHandle& operator=(const ResolveHandle&);
00072
00073
00074 };
00075
00076 }
00077 }
00078
00079
00080 #endif
00081