Flush Event

Fires when the OS needs to flush an open file's data out to storage before the file is closed.

Syntax

class FUSEFlushEventParams {
public:
  const QString &Path();
  int FileContext();
  int Result();
  void SetResult(int iResult);
  int EventRetVal();
  void SetEventRetVal(int iRetVal);
};
// To handle, connect one or more slots to this signal. void Flush(FUSEFlushEventParams *e);
// Or, subclass FUSE and override this emitter function. virtual int FireFlush(FUSEFlushEventParams *e) {...}

Remarks

This event fires anytime the OS needs the virtual filesystem to flush data out to storage when the file is about to be closed. The file to flush is identified by either Path or FileContext.

When the file is opened several times, the event will be fired for each file close. Linux: The OS gives no guarantee regarding how much times (if any) the event will fire.

To handle this event properly, applications must flush the requested data, writing it out to their backend storage.

The ResultCode parameter will always be 0 when the event is fired. If the event cannot be handled in a "successful" manner for some reason (e.g., a resource isn't available, security checks failed, etc.), set it to a negative error code value (e.g. -ENOENT to indicate that the file does not exist) to report an appropriate error. Please refer to the Error Reporting and Handling topic for more information.

Copyright (c) 2022 Callback Technologies, Inc. - All rights reserved.
CBFS FUSE 2020 Qt Edition - Version 20.0 [Build 8348]