Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
rapidsmpf::streaming::PartitioningSpec Struct Reference

Partitioning specification for a single hierarchical level. More...

#include <channel_metadata.hpp>

Public Types

enum class  Type : std::uint8_t { NONE , INHERIT , HASH }
 Type tag for PartitioningSpec. More...
 

Public Member Functions

bool operator== (PartitioningSpec const &) const =default
 Equality comparison. More...
 

Static Public Member Functions

static PartitioningSpec none ()
 Create a spec indicating no partitioning information. More...
 
static PartitioningSpec inherit ()
 Create a spec indicating partitioning passes through from parent. More...
 
static PartitioningSpec from_hash (HashScheme h)
 Create a spec for hash partitioning. More...
 

Public Attributes

Type type = Type::NONE
 The type of partitioning.
 
std::optional< HashSchemehash
 Valid only when type == HASH.
 

Detailed Description

Partitioning specification for a single hierarchical level.

Represents how data is partitioned at one level of the hierarchy (e.g., inter-rank or local). Use the static factory methods to construct.

Definition at line 44 of file channel_metadata.hpp.

Member Enumeration Documentation

◆ Type

Type tag for PartitioningSpec.

Enumerator
NONE 

No partitioning information at this level.

INHERIT 

Partitioning is inherited from parent level unchanged.

HASH 

Hash partitioning.

Definition at line 48 of file channel_metadata.hpp.

Member Function Documentation

◆ from_hash()

static PartitioningSpec rapidsmpf::streaming::PartitioningSpec::from_hash ( HashScheme  h)
inlinestatic

Create a spec for hash partitioning.

Parameters
hThe hash scheme to use.
Returns
A PartitioningSpec with type HASH.

Definition at line 78 of file channel_metadata.hpp.

◆ inherit()

static PartitioningSpec rapidsmpf::streaming::PartitioningSpec::inherit ( )
inlinestatic

Create a spec indicating partitioning passes through from parent.

Returns
A PartitioningSpec with type INHERIT.

Definition at line 69 of file channel_metadata.hpp.

◆ none()

static PartitioningSpec rapidsmpf::streaming::PartitioningSpec::none ( )
inlinestatic

Create a spec indicating no partitioning information.

Returns
A PartitioningSpec with type NONE.

Definition at line 61 of file channel_metadata.hpp.

◆ operator==()

bool rapidsmpf::streaming::PartitioningSpec::operator== ( PartitioningSpec const &  ) const
default

Equality comparison.

Returns
True if both specs are equal.

The documentation for this struct was generated from the following file: