quickmod/FuseMounter/fuseinterface.h

45 lines
890 B
C++

#ifndef FUSEINTERFACE_H
#define FUSEINTERFACE_H
#include <QObject>
#include <QDir>
#include <QSocketNotifier>
#include <QDateTime>
extern "C" {
#define FUSE_USE_VERSION 31
#include <fuse3/fuse.h>
#include <fuse3/fuse_lowlevel.h>
#include <fcntl.h>
#include <stdarg.h>
#include <unistd.h>
}
class ArchiveManager;
class FSProxy;
class Database;
class FuseInterface : public QObject
{
Q_OBJECT
int m_fuse_id;
struct fuse *m_fuse;
struct fuse_session *m_fuse_session;
ArchiveManager *m_archive;
FSProxy *m_proxy;
Database *m_database;
QMap< QString, QStringList > m_dircache;
QMap<QString, struct stat *> m_shortcuts;
QSocketNotifier *m_notifier;
public:
explicit FuseInterface(QObject *parent = nullptr);
~FuseInterface();
signals:
};
#endif // FUSEINTERFACE_H