AuroraRuntime/Include/Aurora/IO/IOExperimental.hpp
Reece 0c3344fe46 [+] IIOSimpleEventListener
[+] IOProcessor::StartSimpleIOWatch(const AuSPtr<IIOWaitableItem> &object, const AuSPtr<IIOSimpleEventListener> &listener)
[+] IOProcessor::StartSimpleLSWatch(const AuSPtr<Loop::ILoopSource> &source, const AuSPtr<IIOSimpleEventListener> &listener)
[*] IOAdapterAsyncStream should reset the transactions IO state upon reaching end of segment (should this be per tick?) or upon stream error - otherwise, we end up spinning on a stuck event forever
[*] Fix non-linear path under read of the AuByteBuffer
[*] Fix various other nonlinear conditions under AuByteBuffer
[*] IOProcessor releases registered io item from queue upon request
[*] Fix ConsoleMessage::Write -> enumeration of color should be casted to a uint8
[+] Error telemetry under async task creation
[*] Fix various lock ups and non-blocking spins related to erroneous InternalRunOne impl. Residual preemptive batching was fucking with modern io.
[*] Cleanup TaskFrom/JobFrom. More work required to clean up legacy piss
2022-06-22 14:42:17 +01:00

58 lines
1.4 KiB
C++

/***
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: IOExperimental.hpp
Date: 2022-6-6
Author: Reece
***/
#pragma once
#include "EPipeCallbackType.hpp"
#include "IIOProcessorManualInvoker.hpp"
#include "IIOWaitableItem.hpp"
#include "IIOEventListener.hpp"
#include "IIOSimpleEventListener.hpp"
#include "EIOProcessorEventStage.hpp"
#include "IIOPipeEventListener.hpp"
#include "IIOBufferedStreamAvailable.hpp"
#include "IPipeBackend.hpp"
#include "IOPipeCallback.hpp"
#include "IOPipeInputData.hpp" // ipipebackend required
#include "IOPipeRequest.hpp"
#include "IOPipeRequestAIO.hpp"
#include "IOPipeRequestBasic.hpp"
#include "IIOPipeInterceptor.hpp"
#include "IIOPipeWork.hpp"
#include "IIOPipeProcessor.hpp"
#include "IIOProcessorWorkUnit.hpp"
#include "IIOProcessorEventListener.hpp"
#include "IIOProcessorItem.hpp"
#include "IIOProcessor.hpp"
//#include "IBufferedWriterToReader.hpp"
//#include "IBufferedReadProcessorToReader.hpp"
#include "IIOPipeInterceptor.hpp"
#include "IIOBufferedProcessor.hpp"
#include "IByteBufferStreamPair.hpp"
#include "IOAdapterAsyncStream.hpp"
#include "IOAdapterByteBuffer.hpp"
#include "IOAdapterCompression.hpp"
#include "IOAdapterSeeking.hpp"
#include "IIOWaitableTickLimiter.hpp"
#include "IIOWaitableIOTimer.hpp"
#include "IIOWaitableIOLoopSource.hpp"
#include "IOPipeInterceptorNop.hpp"