Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
endpoint_helpers.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2019 Roc Streaming authors
3 *
4 * This Source Code Form is subject to the terms of the Mozilla Public
5 * License, v. 2.0. If a copy of the MPL was not distributed with this
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 */
8
9//! @file roc_pipeline/endpoint_helpers.h
10//! @brief Validate endpoint protocols consistency.
11
12#ifndef ROC_PIPELINE_ENDPOINT_HELPERS_H_
13#define ROC_PIPELINE_ENDPOINT_HELPERS_H_
14
17#include "roc_packet/fec.h"
18
19namespace roc {
20namespace pipeline {
21
22//! Validate endpoint type and protocol.
24
25//! Validate consistency of the endpoint and the pipeline FEC scheme.
28 address::Protocol proto);
29
30//! Validate consistency of the two endpoints.
32 address::Protocol repair_proto);
33
34} // namespace pipeline
35} // namespace roc
36
37#endif // ROC_PIPELINE_ENDPOINT_HELPERS_H_
FEC packet.
Interface ID.
Interface
Interface ID.
Definition interface.h:19
Protocol
Protocol ID.
Definition protocol.h:19
FecScheme
FECFRAME scheme.
Definition fec.h:23
bool validate_endpoint(address::Interface iface, address::Protocol proto)
Validate endpoint type and protocol.
bool validate_endpoint_and_pipeline_consistency(packet::FecScheme pipeline_fec_scheme, address::Interface iface, address::Protocol proto)
Validate consistency of the endpoint and the pipeline FEC scheme.
bool validate_endpoint_pair_consistency(address::Protocol source_proto, address::Protocol repair_proto)
Validate consistency of the two endpoints.
Root namespace.
Protocol ID.