diff options
Diffstat (limited to 'fcp/aggregation/protocol/checkpoint_aggregator.h')
-rw-r--r-- | fcp/aggregation/protocol/checkpoint_aggregator.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/fcp/aggregation/protocol/checkpoint_aggregator.h b/fcp/aggregation/protocol/checkpoint_aggregator.h index b7b9617..2f0502b 100644 --- a/fcp/aggregation/protocol/checkpoint_aggregator.h +++ b/fcp/aggregation/protocol/checkpoint_aggregator.h @@ -49,10 +49,22 @@ class CheckpointAggregator { // Returns INVALID_ARGUMENT if the configuration is invalid. static absl::Status ValidateConfig(const Configuration& configuration); + // Validates the Intrinsics that will subsequently be used to create an + // instance of CheckpointAggregator. + // Returns INVALID_ARGUMENT if the configuration is invalid. + static absl::Status ValidateIntrinsics( + const std::vector<Intrinsic>& intrinsics); + // Creates an instance of CheckpointAggregator. static absl::StatusOr<std::unique_ptr<CheckpointAggregator>> Create( const Configuration& configuration); + // Creates an instance of CheckpointAggregator. + // The `intrinsics` are expected to be created using `ParseFromConfig` which + // validates the configuration. + static absl::StatusOr<std::unique_ptr<CheckpointAggregator>> Create( + std::vector<Intrinsic> intrinsics); + // Accumulates a checkpoint via nested tensor aggregators. The tensors are // provided by the CheckpointParser instance. absl::Status Accumulate(CheckpointParser& checkpoint_parser); |