载入中...
搜索中...
未找到
VehicleOrderQueueAdapter.cpp
浏览该文件的文档.
44VehicleOrderQueueAdapter::VehicleOrderQueueAdapter(VehicleOrderQueueAdapter&&) noexcept = default;
46VehicleOrderQueueAdapter& VehicleOrderQueueAdapter::operator=(VehicleOrderQueueAdapter&&) noexcept = default;
48eve::Result<std::string> VehicleOrderQueueAdapter::append(const VehicleOrder& order, int priority,
54 return eve::Result<std::string>::success(std::move(key), eve::Status::success(eve::StatusCode::Applied));
57eve::Result<std::string> VehicleOrderQueueAdapter::replace(const VehicleOrder& order, int priority,
64 return eve::Result<std::string>::success(std::move(key), eve::Status::success(eve::StatusCode::Applied));
67eve::Result<std::string> VehicleOrderQueueAdapter::interrupt(const VehicleOrder& order, int priority,
74 return eve::Result<std::string>::success(std::move(key), eve::Status::success(eve::StatusCode::Applied));
82 eve::DiagnosticCode::Conflict, "vehicle order queue has no active order", "order", {}, "vehicle.orders"));
93 eve::DiagnosticCode::Conflict, "vehicle order queue has no active order", "order", {}, "vehicle.orders"));
99eve::Result<void> VehicleOrderQueueAdapter::cancel(const std::string& id, const std::string& reason) {
149 if (record->state == orders::OrderState::Active) legacy.current = static_cast<int>(legacy.queue.size());
std::array< std::uint64_t, kPixelChunkSize *kPixelChunkSize > updated
Definition PixelWorld.cpp:53
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
static Status success(StatusCode code=StatusCode::Ok)
Construct a successful status with an explicit non-error outcome.
Definition Status.h:81
Generic priority order queue with no gameplay or entity semantics.
Definition CommandQueue.h:89
Maps VehicleOrder domain payloads onto an orders::CommandQueue.
Definition VehicleOrderQueueAdapter.h:29
void syncCompatibility(VehicleEntity::Orders &legacy) const
Refreshes the legacy component projection.
Definition VehicleOrderQueueAdapter.cpp:137
const VehicleOrder * current() const
Returns the Vehicle payload for the active generic order, or null.
Definition VehicleOrderQueueAdapter.cpp:116
eve::Result< std::string > replace(const VehicleOrder &order, int priority=0, double timeoutSeconds=0.0)
Cancels unfinished orders and starts a replacement.
Definition VehicleOrderQueueAdapter.cpp:57
eve::Result< std::string > interrupt(const VehicleOrder &order, int priority=0, double timeoutSeconds=0.0)
Interrupts the active order when the generic priority permits.
Definition VehicleOrderQueueAdapter.cpp:67
int activeOrQueuedCount() const
Returns the number of active and queued Vehicle orders.
Definition VehicleOrderQueueAdapter.cpp:124
~VehicleOrderQueueAdapter()
Releases the owned generic queue and domain payloads.
void update(double dtSeconds)
Advances generic timeout handling.
Definition VehicleOrderQueueAdapter.cpp:105
eve::Result< void > failCurrent(const std::string &reason)
Fails the current generic order and activates the next one.
Definition VehicleOrderQueueAdapter.cpp:88
VehicleOrderQueueAdapter & operator=(const VehicleOrderQueueAdapter &)
Deep-copies generic lifecycle state and Vehicle payloads.
Definition VehicleOrderQueueAdapter.cpp:39
VehicleOrderQueueAdapter()
Creates an empty adapter with an owned generic queue.
Definition VehicleOrderQueueAdapter.cpp:32
eve::Result< void > cancel(const std::string &id, const std::string &reason="cancelled")
Cancels an active or queued generic order by stable id.
Definition VehicleOrderQueueAdapter.cpp:99
eve::Result< std::string > append(const VehicleOrder &order, int priority=0, double timeoutSeconds=0.0)
Appends a Vehicle domain order to the generic queue.
Definition VehicleOrderQueueAdapter.cpp:48
eve::Result< void > completeCurrent()
Completes the current generic order and activates the next one.
Definition VehicleOrderQueueAdapter.cpp:77
void clear()
Clears generic queue history and Vehicle domain payloads.
Definition VehicleOrderQueueAdapter.cpp:111
@ Active
@ Queued
const char * vehicleOrderTypeName(VehicleOrderType type)
命令类型的字符串名("move" | "attack_move" | ...)。
Definition Vehicle.cpp:79
@ Conflict
@ Applied
Definition Container.h:602
One entity-agnostic command and its lifecycle metadata.
Definition CommandQueue.h:67
Vehicle order lifecycle adapter and compatibility projection.
Definition VehicleTypes.h:256
std::unique_ptr< VehicleOrderQueueAdapter > adapter
Definition VehicleTypes.h:260
Orders & operator=(const Orders &other)
Deep-copies the queue and domain payload projection for ECS staging.
Definition VehicleOrderQueueAdapter.cpp:164
std::vector< VehicleOrder > queue
Definition VehicleTypes.h:257
std::unordered_map< std::string, VehicleOrder > payloads
Definition VehicleOrderQueueAdapter.cpp:16
orders::CommandQueue queue
Definition VehicleOrderQueueAdapter.cpp:15
一条 Vehicle 领域命令(生命周期由 Vehicle order adapter 执行)。
Definition VehicleTypes.h:61