void init_backend();
int (*d_open)(const char *pathname, int flags, ...);
int (*d_close)(int fd);
- int (*d_ioctl)(int fd, unsigned long int request, ...);
+ int (*d_ioctl)(int fd, ioctl_req_t request, ...);
ssize_t (*d_read)(int fd, void *buffer, size_t count);
ssize_t (*d_write)(int fd, const void *buffer, size_t count);
void clear_reserved();
void set_reserved();
void unreserve_device();
+
+ /* Methods in vol_mgr.c */
bool can_i_use_volume();
+ bool can_i_write_volume();
/* Methods in mount.c */
bool mount_next_write_volume();
bool m_swapping; /* set when swapping to another drive */
bool m_in_use; /* set when volume reserved or in use */
int32_t m_slot; /* slot of swapping volume */
+ uint32_t m_JobId; /* JobId for read volumes */
public:
dlink link;
char *vol_name; /* Volume name */
void set_slot(int32_t slot) { m_slot = slot; };
void clear_slot() { m_slot = -1; };
int32_t get_slot() const { return m_slot; };
+ uint32_t get_jobid() const { return m_JobId; };
+ void set_jobid(uint32_t JobId) { m_JobId = JobId; };
};