26 lines
801 B
C++
26 lines
801 B
C++
/***
|
|
Copyright (C) 2021 J Reece Wilson (a/k/a "Reece"). All rights reserved.
|
|
|
|
File: AFIO.hpp
|
|
Date: 2021-8-21
|
|
Author: Reece
|
|
***/
|
|
#pragma once
|
|
|
|
namespace Aurora::IO::FS
|
|
{
|
|
|
|
// WARNING: ASYNC FILE IS SINGLE THREAD ONLY.
|
|
// THESE APIS ARE NOT YET MT SAFE
|
|
// LOOP SOURCES ARE THE ONLY EXCEPTION
|
|
|
|
AUKN_SHARED_API(OpenAsync, IAsyncFileStream, const AuString &path, EFileOpenMode openMode, bool directIO = false, EFileAdvisoryLockLevel lock = EFileAdvisoryLockLevel::eNoSafety);
|
|
|
|
/**
|
|
* Waits for at least one file IO event
|
|
* @param transactions An array mask of FIO transactions
|
|
* @param timeout Timeout in milliseconds, zero = indefinite
|
|
*/
|
|
|
|
AUKN_SYM AuUInt32 WaitMultiple(const AuList<AuSPtr<IAsyncTransaction>> &transactions, AuUInt32 timeout);
|
|
} |