3 #ifndef _LIBGNOMEVFSMM_ASYNC_HANDLE_H
4 #define _LIBGNOMEVFSMM_ASYNC_HANDLE_H
26 #include <libgnomevfs/gnome-vfs-async-ops.h>
27 #include <libgnomevfs/gnome-vfs-file-info.h>
48 #ifndef DOXYGEN_SHOULD_SKIP_THIS
49 struct FileInfoResultTraits
52 typedef const GnomeVFSGetFileInfoResult* CType;
53 typedef GnomeVFSGetFileInfoResult* CTypeNonConst;
55 static CType to_c_type (
const CppType& obj) {
return obj.
gobj(); }
56 static CType to_c_type (
const CType& obj) {
return obj; }
57 static CppType to_cpp_type (
const CType& obj) {
return CppType(const_cast<CTypeNonConst>(obj),
true); }
58 static void release_c_type (
const CType&) {}
60 #endif //DOXYGEN_SHOULD_SKIP_THIS
64 #ifndef DOXYGEN_SHOULD_SKIP_THIS
65 struct FindDirectoryResultTraits
68 typedef const GnomeVFSFindDirectoryResult* CType;
69 typedef GnomeVFSFindDirectoryResult* CTypeNonConst;
71 static CType to_c_type (
const CppType& obj) {
return obj.
gobj(); }
72 static CType to_c_type (
const CType& obj) {
return obj; }
73 static CppType to_cpp_type (
const CType& obj) {
return CppType(const_cast<CTypeNonConst>(obj),
true); }
74 static void release_c_type (
const CType&) {}
76 #endif //DOXYGEN_SHOULD_SKIP_THIS
85 #ifndef DOXYGEN_SHOULD_SKIP_THIS
86 typedef Handle CppObjectType;
87 typedef GnomeVFSAsyncHandle BaseObjectType;
97 typedef sigc::slot<void, const Async::Handle&, Result>
SlotOpen;
100 void open(
const Glib::ustring& text_uri,
OpenMode open_mode,
int priority,
const SlotOpen& slot);
101 void open(
const Glib::RefPtr<Uri>& uri,
OpenMode open_mode,
int priority,
const SlotOpen& slot);
104 void open_as_channel(
const Glib::ustring& text_uri,
OpenMode open_mode, guint advised_block_size,
int priority,
const SlotOpenAsChannel& slot);
105 void open_as_channel(
const Glib::RefPtr<Uri>& uri,
OpenMode open_mode, guint advised_block_size,
int priority,
const SlotOpenAsChannel& slot);
107 void create(
const Glib::ustring& text_uri,
OpenMode open_mode,
bool exclusive, guint perm,
int priority,
const SlotOpen& slot);
108 void create(
const Glib::RefPtr<Uri>& uri,
OpenMode open_mode,
bool exclusive, guint perm,
int priority,
const SlotOpen& slot);
110 void create_symbolic_link(
const Glib::RefPtr<Uri>& uri,
const Glib::ustring& uri_reference,
int priority,
const SlotOpen& slot);
113 void create_as_channel(
const Glib::ustring& text_uri,
OpenMode open_mode,
bool exclusive, guint perm,
int priority,
const SlotCreateAsChannel& slot);
117 void close(
const SlotClose& slot);
119 typedef sigc::slot<void, const Async::Handle&, Result, gpointer, FileSize, FileSize>
SlotRead;
120 void read(gpointer buffer, guint bytes,
const SlotRead& slot);
122 typedef sigc::slot<void, const Async::Handle&, Result, gconstpointer, FileSize, FileSize>
SlotWrite;
123 void write(gconstpointer buffer, guint bytes,
const SlotWrite& slot);
125 typedef sigc::slot<void, const Async::Handle&, ListHandleFileInfoResults >
SlotGetFileInfo;
128 typedef sigc::slot<void, const Async::Handle&, Result, const Glib::RefPtr<FileInfo>& >
SlotSetFileInfo;
131 typedef sigc::slot<void, const Async::Handle&, Result, Glib::ListHandle<Glib::RefPtr<FileInfo> >,
int>
SlotLoadDirectory;
132 void load_directory(
const Glib::ustring& text_uri,
FileInfoOptions options, guint items_per_notification,
int priority,
const SlotLoadDirectory& slot);
133 void load_directory(
const Glib::RefPtr<Uri>& uri,
FileInfoOptions options, guint items_per_notification,
int priority,
const SlotLoadDirectory& slot);
136 #ifdef GLIBMM_EXCEPTIONS_ENABLED
139 void transfer(
const ListHandleUris& source_uri_list,
const ListHandleUris& target_uri_list,
TransferOptions xfer_options,
ErrorMode error_mode,
OverwriteMode overwrite_mode,
int priority,
const SlotTransferProgress& progress_update_callback,
const Transfer::SlotProgress& progress_sync_callback, std::auto_ptr<Gnome::Vfs::exception>& error);
142 typedef sigc::slot<void, const Async::Handle&, ListHandleFindDirectoryResult >
SlotFindDirectory;
143 void find_directory(
const ListHandleUris& near_uri_list,
FindDirectoryKind kind,
bool create_if_needed,
bool find_if_needed, guint permissions,
int priority,
const SlotFindDirectory& slot);
146 void file_control(
const Glib::ustring& operation, gpointer operation_data,
const SlotFileControl& slot);
160 #ifndef DOXYGEN_SHOULD_SKIP_THIS
161 void assign_gobj(GnomeVFSAsyncHandle* src);
sigc::slot< void, const Async::Handle &, const Glib::RefPtr< Glib::IOChannel > &, Result > SlotOpenAsChannel
Definition: async-handle.h:103
void create_as_channel(const Glib::ustring &text_uri, OpenMode open_mode, bool exclusive, guint perm, int priority, const SlotCreateAsChannel &slot)
sigc::slot< void, const Async::Handle &, Result, gpointer > SlotFileControl
Definition: async-handle.h:145
sigc::slot< void, const Async::Handle &, Result > SlotOpen
Definition: async-handle.h:97
SlotOpen SlotClose
Definition: async-handle.h:98
Encapsulates the details of an individual file info request that was part of a mass file info request...
Definition: async-handle-2.h:47
sigc::slot< int, const Async::Handle &, Transfer::ProgressInfo & > SlotTransferProgress
Definition: async-handle.h:135
sigc::slot< void, const Async::Handle &, Result, gconstpointer, FileSize, FileSize > SlotWrite
Definition: async-handle.h:122
This class is passed to a Async2::Handle::SlotFindDirectory by Async2::Handle::find_directory() and c...
Definition: async-handle-2.h:91
Definition: async-handle.h:82
GnomeVFSGetFileInfoResult * gobj()
Definition: async-handle-2.h:65
Glib::ListHandle< FileInfoResult, FileInfoResultTraits > ListHandleFileInfoResults
Definition: async-handle.h:62
Glib::ListHandle< Glib::RefPtr< const Uri > > ListHandleUris
Definition: async-handle.h:46
void cancel()
Cancel an asynchronous operation and close all its callbacks.
void load_directory(const Glib::ustring &text_uri, FileInfoOptions options, guint items_per_notification, int priority, const SlotLoadDirectory &slot)
sigc::slot< void, const Async::Handle &, Result, const Glib::RefPtr< FileInfo > & > SlotSetFileInfo
Definition: async-handle.h:128
GnomeVFSFindDirectoryResult * gobj()
Definition: async-handle-2.h:109
void find_directory(const ListHandleUris &near_uri_list, FindDirectoryKind kind, bool create_if_needed, bool find_if_needed, guint permissions, int priority, const SlotFindDirectory &slot)
void read(gpointer buffer, guint bytes, const SlotRead &slot)
void file_control(const Glib::ustring &operation, gpointer operation_data, const SlotFileControl &slot)
void get_file_info(const ListHandleUris &uri_list, FileInfoOptions options, int priority, const SlotGetFileInfo &slot) const
GnomeVFSAsyncHandle * gobject_
Definition: async-handle.h:165
SlotOpenAsChannel SlotCreateAsChannel
Definition: async-handle.h:112
GnomeVFSAsyncHandle ** gobj_addr()
Definition: async-handle.h:158
void write(gconstpointer buffer, guint bytes, const SlotWrite &slot)
sigc::slot< void, const Async::Handle &, Result, gpointer, FileSize, FileSize > SlotRead
Definition: async-handle.h:119
sigc::slot< bool, const ProgressInfo & > SlotProgress
For instance, int on_transfer_progress(GnomeVFSXferProgressInfo* info);.
Definition: transfer.h:46
void open(const Glib::ustring &text_uri, OpenMode open_mode, int priority, const SlotOpen &slot)
GnomeVFSAsyncHandle * gobj()
Definition: async-handle.h:156
void open_as_channel(const Glib::ustring &text_uri, OpenMode open_mode, guint advised_block_size, int priority, const SlotOpenAsChannel &slot)
void transfer(const ListHandleUris &source_uri_list, const ListHandleUris &target_uri_list, TransferOptions xfer_options, ErrorMode error_mode, OverwriteMode overwrite_mode, int priority, const SlotTransferProgress &progress_update_callback, const Transfer::SlotProgress &progress_sync_callback)
sigc::slot< void, const Async::Handle &, ListHandleFindDirectoryResult > SlotFindDirectory
Definition: async-handle.h:142
void set_file_info(const Glib::RefPtr< Uri > &uri, const Glib::RefPtr< FileInfo > &info, SetFileInfoMask mask, FileInfoOptions options, int priority, const SlotSetFileInfo &slot)
sigc::slot< void, const Async::Handle &, Result, Glib::ListHandle< Glib::RefPtr< FileInfo > >, int > SlotLoadDirectory
Definition: async-handle.h:131
void close(const SlotClose &slot)
const GnomeVFSAsyncHandle * gobj() const
Definition: async-handle.h:157
sigc::slot< void, const Async::Handle &, ListHandleFileInfoResults > SlotGetFileInfo
Definition: async-handle.h:125
void create(const Glib::ustring &text_uri, OpenMode open_mode, bool exclusive, guint perm, int priority, const SlotOpen &slot)
Glib::ListHandle< FindDirectoryResult, FindDirectoryResultTraits > ListHandleFindDirectoryResult
Definition: async-handle.h:78
void create_symbolic_link(const Glib::RefPtr< Uri > &uri, const Glib::ustring &uri_reference, int priority, const SlotOpen &slot)