fprime/Os/QueueString.hpp
Rob Bocchino abeb39bdb1
Update FPP to v3.0.0a3 (#3393)
* Revise String.hpp

Remove explicit keyword

* Revise FppTest

Update FPP version
Re-enable commented-out ports

* Revise ActiveTest

* Revise FppTest for components

* Revise FppTest tests for components

* Revise FppTest for components

* Revise FppTest

* Revise FppTest

* Revise FppTest

* Fix warnings on fprime dev machine

* Update fpp version

* Remove external keyword from constructors
2025-03-26 14:07:42 -07:00

55 lines
1.4 KiB
C++

// ======================================================================
// @file QueueString.hpp
// @author F Prime
// @brief A string sized for an OS queue name
// ======================================================================
#ifndef OS_QUEUE_STRING_HPP
#define OS_QUEUE_STRING_HPP
#include <FpConfig.hpp>
#include "Fw/Types/StringBase.hpp"
namespace Os {
class QueueString final : public Fw::StringBase {
public:
enum { STRING_SIZE = FW_QUEUE_NAME_BUFFER_SIZE, SERIALIZED_SIZE = STATIC_SERIALIZED_SIZE(STRING_SIZE) };
QueueString() : StringBase() { *this = ""; }
QueueString(const QueueString& src) : StringBase() { *this = src; }
QueueString(const StringBase& src) : StringBase() { *this = src; }
explicit QueueString(const char* src) : StringBase() { *this = src; }
~QueueString() {}
QueueString& operator=(const QueueString& src) {
(void)StringBase::operator=(src);
return *this;
}
QueueString& operator=(const StringBase& src) {
(void)StringBase::operator=(src);
return *this;
}
QueueString& operator=(const char* src) {
(void)StringBase::operator=(src);
return *this;
}
const char* toChar() const { return this->m_buf; }
StringBase::SizeType getCapacity() const { return sizeof this->m_buf; }
private:
char m_buf[BUFFER_SIZE(STRING_SIZE)];
};
} // namespace Os
#endif