// // Created by Kirill Zhukov on 20.04.2025. // #ifndef SHAREDCOMMANDQUEUE_H #define SHAREDCOMMANDQUEUE_H #include "Command.h" #include "utils/datastructures/LFCircullarBuffer.h" #include #include namespace usub::core { constexpr size_t SHM_QUEUE_CAPACITY = 1024; struct SharedCommandQueue { SharedCommandQueue(); explicit SharedCommandQueue(size_t cap); bool try_push(const Command& cmd) const; std::optional try_pop() const; size_t capacity; std::unique_ptr> queue; }; } #endif //SHAREDCOMMANDQUEUE_H