PhotonVision C++ dev-v2025.3.1-2-gf92cf62a
Loading...
Searching...
No Matches
photon::PhotonStructSerializable Concept Reference

#include <photon/dataflow/structures/Packet.h>

Concept definition

template<typename T>
concept photon::PhotonStructSerializable = requires(Packet& packet, const T& value) {
typename SerdeType<typename std::remove_cvref_t<T>>;
{
SerdeType<typename std::remove_cvref_t<T>>::GetSchemaHash()
} -> std::convertible_to<std::string_view>;
{
} -> std::convertible_to<std::string_view>;
{
SerdeType<typename std::remove_cvref_t<T>>::Unpack(packet)
} -> std::same_as<typename std::remove_cvref_t<T>>;
{
SerdeType<typename std::remove_cvref_t<T>>::Pack(packet, value)
} -> std::same_as<void>;
}
Definition Packet.h:42
Definition Packet.h:39