FastLED 3.9.15
Loading...
Searching...
No Matches
fl::task Namespace Reference

Namespaces

namespace  anonymous_namespace{task.cpp.hpp}
 
namespace  detail
 

Classes

class  Coroutine
 
struct  CoroutineConfig
 Configuration for OS-level coroutine tasks. More...
 
class  CoroutineTask
 
struct  Error
 Error type for promises. More...
 
class  Executor
 Task executor (singleton) — manages registered runners. More...
 
class  Handle
 Task Handle with fluent API (was class fl::task, renamed to avoid namespace collision) More...
 
class  ITaskImpl
 
class  Promise
 Promise class that provides fluent .then() and .catch_() semantics This is a lightweight wrapper around a shared PromiseImpl for easy copying/sharing. More...
 
class  PromiseResult
 Result type for promise operations. More...
 
class  Runner
 Generic task runner interface. More...
 
class  Scheduler
 
class  TimeTask
 

Enumerations

enum class  ExecFlags : u8 { TASKS = 1 << 0 , COROUTINES = 1 << 1 , SYSTEM = 1 << 2 , ALL = (1 << 0) | (1 << 1) | (1 << 2) }
 Flags controlling which subsystems run() pumps. More...
 
enum class  TaskType {
  kEveryMs , kAtFramerate , kBeforeFrame , kAfterFrame ,
  kCoroutine
}
 

Functions

size_t active_tasks ()
 Get the number of active tasks across all systems.
 
Handle after_frame ()
 
Handle after_frame (const TracePoint &trace)
 
Handle after_frame (function< void()> on_then)
 
Handle after_frame (function< void()> on_then, const TracePoint &trace)
 
Handle at_framerate (int fps)
 
Handle at_framerate (int fps, const TracePoint &trace)
 
template<typename T>
PromiseResult< T > await (Promise< T > p)
 Await promise completion in a coroutine (Trampoline to platform implementation)
 
template<typename T>
PromiseResult< T > await_top_level (Promise< T > p)
 Synchronously wait for a promise to complete (ONLY safe in top-level contexts)
 
Handle before_frame ()
 
Handle before_frame (const TracePoint &trace)
 
Handle coroutine (const CoroutineConfig &config)
 
Handle every_ms (int interval_ms)
 
Handle every_ms (int interval_ms, const TracePoint &trace)
 
void exit_current ()
 
bool has_tasks ()
 Check if any systems have active tasks.
 
template<typename T>
PromiseResult< T > make_error (const char *message)
 Helper function to create an error result from C-string.
 
template<typename T>
PromiseResult< T > make_error (const Error &error)
 Helper function to create an error result.
 
template<typename T>
PromiseResult< T > make_error (const fl::string &message)
 Helper function to create an error result from string.
 
template<typename T>
PromiseResult< T > make_error (Error &&error)
 Helper function to create an error result (move)
 
template<typename T>
Promise< T > make_rejected_promise (const char *error_message) FL_NOEXCEPT
 Convenience function to create a rejected Promise (const char* overload)
 
template<typename T>
Promise< T > make_rejected_promise (const fl::string &error_message) FL_NOEXCEPT
 Convenience function to create a rejected Promise.
 
template<typename T>
Promise< T > make_resolved_promise (T value) FL_NOEXCEPT
 Convenience function to create a resolved Promise.
 
template<typename T>
PromiseResult< T > make_success (const T &value)
 Helper function to create a successful result.
 
template<typename T>
PromiseResult< T > make_success (T &&value)
 Helper function to create a successful result (move)
 
bool operator& (ExecFlags a, ExecFlags b)
 
ExecFlags operator| (ExecFlags a, ExecFlags b)
 
void run (fl::u32 microseconds=1000, ExecFlags flags=ExecFlags::ALL)
 Run selected task subsystems.