conduit 0.6.0
Modern C++23 header-only event-dispatching / event-transport library
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
flags.hpp File Reference

Conduit flag tags, built atop comms::Flag / comms::FlagSet. More...

#include <commons/color.hpp>
#include <commons/display_info.hpp>
#include <commons/flag.hpp>
#include <commons/icon.hpp>
#include <commons/icons.hpp>
Include dependency graph for flags.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  conduit::flags::ConduitFlagCategory
 Single category for all conduit-defined flags. More...
 
struct  conduit::flags::Direct
 Force same-thread dispatch even in Queue / ThreadPool execution modes. More...
 
struct  conduit::flags::Durable
 Hint to durable transports that they should persist the envelope. More...
 
struct  conduit::flags::Persistent
 Hint to transports to use a persistent (human-readable) wire format. More...
 
struct  conduit::flags::NoMiddleware
 Skip the middleware pipeline for this envelope. More...
 
struct  conduit::flags::RequireAck
 Request the broker / transport acknowledge the publish before returning. More...
 
struct  conduit::flags::Broadcast
 Hint that this envelope is intended for fan-out broadcast. More...
 
struct  conduit::flags::LocalOnly
 Restrict dispatch to transports with TransportScope::Local. More...
 
struct  conduit::flags::RemoteOnly
 Restrict dispatch to transports with TransportScope::Remote. More...
 

Namespaces

namespace  conduit
 
namespace  conduit::flags
 

Typedefs

template<comms::FixedString Name, typename Category = ConduitFlagCategory>
using conduit::flags::Flag = comms::Flag< Name, Category >
 Template alias mirroring comms::Flag with ConduitFlagCategory as the default — preserves the old Flag<"name"> syntax for downstream code.
 
using conduit::flags::FlagSet = comms::FlagSet
 

Functions

 conduit::flags::COMMONS_REGISTER_FLAG (Direct)
 
 conduit::flags::COMMONS_REGISTER_FLAG (Durable)
 
 conduit::flags::COMMONS_REGISTER_FLAG (Persistent)
 
 conduit::flags::COMMONS_REGISTER_FLAG (NoMiddleware)
 
 conduit::flags::COMMONS_REGISTER_FLAG (RequireAck)
 
 conduit::flags::COMMONS_REGISTER_FLAG (Broadcast)
 
 conduit::flags::COMMONS_REGISTER_FLAG (LocalOnly)
 
 conduit::flags::COMMONS_REGISTER_FLAG (RemoteOnly)
 

Detailed Description

Conduit flag tags, built atop comms::Flag / comms::FlagSet.

Each conduit flag is a distinct type deriving from comms::Flag<Name, ConduitFlagCategory>. The fixed-string name is the flag's stable identity — across processes, across translation units, and on the wire — so serialization just lists the names directly. Every built-in flag also carries a comms::DisplayInfo (name, description, mdi icon, MUI palette color) so UI tooling that consumes comms::DisplayInfo can render conduit flags out of the box.