Monopoly — Portage moderne 0.1.0
Portage moderne C/C++23 du Monopoly de 1999
Loading...
Searching...
No Matches
monopoly::sequence::SequenceCommandQueue Class Referencefinal

#include <SequenceCommands.hpp>

Public Member Functions

 SequenceCommandQueue (SequenceRuntime &runtime) noexcept
 
std::expected< void, CommandQueueError > enqueue (StartSequenceCommand command)
 
std::expected< void, CommandQueueError > enqueue (StopSequenceCommand command)
 
std::expected< void, CommandQueueError > enqueue (MoveSequenceCommand command)
 
std::expected< void, CommandQueueError > enqueue (SetSequenceEndingActionCommand command)
 
std::expected< void, CommandQueueError > enqueue (SetSequenceVolumeCommand command)
 
std::expected< void, CommandQueueError > enqueue (SetSequencePitchCommand command)
 
std::expected< void, CommandQueueError > enqueue (SetSequencePanningCommand command)
 
std::expected< void, CommandQueueError > enqueue (ForceRedrawSequenceCommand command)
 
std::expected< void, CommandQueueError > enqueue (SetViewportCommand command)
 
std::expected< void, CommandQueueError > enqueue (SetCameraCommand command)
 
const SetViewportCommand * viewportState (std::uint8_t renderSlot) const noexcept
 
const SetCameraCommand * cameraState (std::uint8_t renderSlot) const noexcept
 
std::expected< int, CommandQueueError > collect ()
 
std::expected< int, CommandQueueError > execute ()
 
std::expected< void, RuntimeError > processUserCommands ()
 
std::expected< void, RuntimeError > updateCycle (std::int32_t parentClock)
 
std::size_t pendingCount () const noexcept
 
int percentageFull () const noexcept
 
int nestingLevel () const noexcept
 
std::span< const SequenceCommandOutcome > outcomes () const noexcept
 
std::span< const SequenceEvent > cycleEvents () const noexcept
 
const std::optional< RuntimeError > & lastCycleError () const noexcept
 

Static Public Attributes

static constexpr std::size_t Capacity = 500
 

Detailed Description

Definition at line 127 of file SequenceCommands.hpp.

Constructor & Destructor Documentation

◆ SequenceCommandQueue()

monopoly::sequence::SequenceCommandQueue::SequenceCommandQueue ( SequenceRuntime &  runtime)
explicitnoexcept

Definition at line 25 of file SequenceCommands.cpp.

Member Function Documentation

◆ cameraState()

const SetCameraCommand * monopoly::sequence::SequenceCommandQueue::cameraState ( std::uint8_t  renderSlot) const
noexcept

Definition at line 118 of file SequenceCommands.cpp.

◆ collect()

std::expected< int, CommandQueueError > monopoly::sequence::SequenceCommandQueue::collect ( )

Definition at line 125 of file SequenceCommands.cpp.

◆ cycleEvents()

std::span< const SequenceEvent > monopoly::sequence::SequenceCommandQueue::cycleEvents ( ) const
inlinenoexcept

Definition at line 171 of file SequenceCommands.hpp.

◆ enqueue() [1/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( ForceRedrawSequenceCommand  command)

Definition at line 85 of file SequenceCommands.cpp.

◆ enqueue() [2/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( MoveSequenceCommand  command)

Definition at line 53 of file SequenceCommands.cpp.

◆ enqueue() [3/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( SetCameraCommand  command)

Definition at line 99 of file SequenceCommands.cpp.

◆ enqueue() [4/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( SetSequenceEndingActionCommand  command)

Definition at line 59 of file SequenceCommands.cpp.

◆ enqueue() [5/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( SetSequencePanningCommand  command)

Definition at line 79 of file SequenceCommands.cpp.

◆ enqueue() [6/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( SetSequencePitchCommand  command)

Definition at line 73 of file SequenceCommands.cpp.

◆ enqueue() [7/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( SetSequenceVolumeCommand  command)

Definition at line 67 of file SequenceCommands.cpp.

◆ enqueue() [8/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( SetViewportCommand  command)

Definition at line 91 of file SequenceCommands.cpp.

◆ enqueue() [9/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( StartSequenceCommand  command)

Definition at line 39 of file SequenceCommands.cpp.

◆ enqueue() [10/10]

std::expected< void, CommandQueueError > monopoly::sequence::SequenceCommandQueue::enqueue ( StopSequenceCommand  command)

Definition at line 47 of file SequenceCommands.cpp.

◆ execute()

std::expected< int, CommandQueueError > monopoly::sequence::SequenceCommandQueue::execute ( )

Definition at line 132 of file SequenceCommands.cpp.

◆ lastCycleError()

const std::optional< RuntimeError > & monopoly::sequence::SequenceCommandQueue::lastCycleError ( ) const
inlinenoexcept

Definition at line 173 of file SequenceCommands.hpp.

◆ nestingLevel()

int monopoly::sequence::SequenceCommandQueue::nestingLevel ( ) const
inlinenoexcept

Definition at line 168 of file SequenceCommands.hpp.

◆ outcomes()

std::span< const SequenceCommandOutcome > monopoly::sequence::SequenceCommandQueue::outcomes ( ) const
inlinenoexcept

Definition at line 169 of file SequenceCommands.hpp.

◆ pendingCount()

std::size_t monopoly::sequence::SequenceCommandQueue::pendingCount ( ) const
inlinenoexcept

Definition at line 166 of file SequenceCommands.hpp.

◆ percentageFull()

int monopoly::sequence::SequenceCommandQueue::percentageFull ( ) const
noexcept

Definition at line 270 of file SequenceCommands.cpp.

◆ processUserCommands()

std::expected< void, RuntimeError > monopoly::sequence::SequenceCommandQueue::processUserCommands ( )

Definition at line 153 of file SequenceCommands.cpp.

◆ updateCycle()

std::expected< void, RuntimeError > monopoly::sequence::SequenceCommandQueue::updateCycle ( std::int32_t  parentClock)

Definition at line 256 of file SequenceCommands.cpp.

◆ viewportState()

const SetViewportCommand * monopoly::sequence::SequenceCommandQueue::viewportState ( std::uint8_t  renderSlot) const
noexcept

Definition at line 110 of file SequenceCommands.cpp.

Member Data Documentation

◆ Capacity

constexpr std::size_t monopoly::sequence::SequenceCommandQueue::Capacity = 500
staticconstexpr

Definition at line 130 of file SequenceCommands.hpp.


The documentation for this class was generated from the following files: