5#include "../capnp_wrapper.h"
113 uint8_t
major()
const {
return major_; }
119 uint8_t
minor()
const {
return minor_; }
125 uint8_t
patch()
const {
return patch_; }
Base template class for Cap'n Proto wrappers.
Definition capnp_wrapper.h:23
Wrapper for VoyantVersion messages.
Definition voyant_version_wrapper.hpp:43
static VoyantVersionWrapper fromU32Hash(uint32_t hash)
Creates a VoyantVersionWrapper from a 32-bit hash.
void fromProto(VoyantVersion::Reader reader) override
Update wrapper fields from a reader.
uint8_t patch() const
Get patch version number.
Definition voyant_version_wrapper.hpp:125
void setFlags(uint8_t flags)
Set status and component from combined flags.
uint32_t toU32Hash() const
Convert version to a 32-bit hash.
void setComponent(VersionComponent component)
Set component type.
Definition voyant_version_wrapper.hpp:168
void debugString(std::ostream &os) const override
Generate a debug string representation.
void setMajor(uint8_t major)
Set major version number.
Definition voyant_version_wrapper.hpp:144
void toProto(VoyantVersion::Builder &builder) const override
Write wrapper fields to a builder.
std::string toVerboseString() const
Get detailed string representation.
VersionStatus status() const
Get version status.
Definition voyant_version_wrapper.hpp:131
void setPatch(uint8_t patch)
Set patch version number.
Definition voyant_version_wrapper.hpp:156
std::string toString() const
Get string representation in semver format.
VoyantVersionWrapper(uint8_t major, uint8_t minor, uint8_t patch, VersionStatus status, VersionComponent component)
Creates a new version with the specified components.
uint8_t major() const
Get major version number.
Definition voyant_version_wrapper.hpp:113
VoyantVersionWrapper()=default
Default constructor.
uint8_t minor() const
Get minor version number.
Definition voyant_version_wrapper.hpp:119
VersionComponent component() const
Get component type.
Definition voyant_version_wrapper.hpp:137
void setStatus(VersionStatus status)
Set version status.
Definition voyant_version_wrapper.hpp:162
uint8_t flags() const
Get combined status and component flags.
void setMinor(uint8_t minor)
Set minor version number.
Definition voyant_version_wrapper.hpp:150
~VoyantVersionWrapper() override=default
Destructor.
bool isCompatible(const VoyantVersionWrapper &other) const
Checks compatibility between proto versions.
Definition header.capnp.h:269
Definition header.capnp.h:232
VersionStatus
Version status, stored in bits 3-0 of the flags field.
Definition voyant_version_wrapper.hpp:28
@ Deprecated
Deprecated version - Maintained but scheduled for removal.
@ Beta
Beta version - Feature complete but in testing.
@ Legacy
Legacy version - No longer maintained.
@ Development
Development version - Not for external use.
@ Alpha
Alpha version - Early testing phase.
@ Unknown
Unknown version status (default)
@ ReleaseCandidate
Release Candidate - Final testing.
@ Stable
Stable version - Production-ready.
VersionComponent
Component type for a version, stored in bits 7-4 of the flags field.
Definition voyant_version_wrapper.hpp:14
@ Api
Application interface software components.
@ Unknown
Unknown component type (default)
@ Firmware
Device embedded software.
@ Proto
Protocol definitions and message formats.
@ Hdl
Hardware configuration for the FPGA.