Class OutputFrameJoin
- Пространство имен
- easyar
Выходной объединитель кадров. Используется для объединения выходных кадров нескольких компонентов в один выходной кадр. Все члены этого класса являются потокобезопасными. Обратите внимание, что подключение и отключение нескольких входов не должно выполняться одновременно с потоком данных, иначе может возникнуть состояние, при котором вывод невозможен. (Рекомендуется завершить подключение потока данных до запуска камеры).
Методы
input
Входной порт.
void easyar_OutputFrameJoin_input(easyar_OutputFrameJoin * This, int index, easyar_OutputFrameSink * * Return)
std::shared_ptr<OutputFrameSink> input(int index)
public @Nonnull OutputFrameSink input(int index)
fun input(index: Int): OutputFrameSink
- (easyar_OutputFrameSink *)input:(int)index
public func input(_ index: Int32) -> OutputFrameSink
public virtual OutputFrameSink input(int index)
Параметры
| Имя | Тип | Описание |
|---|---|---|
| index | Int32 |
Возвращаемое значение
| Тип | Описание |
|---|---|
| OutputFrameSink |
output
Выходной порт.
void easyar_OutputFrameJoin_output(easyar_OutputFrameJoin * This, easyar_OutputFrameSource * * Return)
std::shared_ptr<OutputFrameSource> output()
public @Nonnull OutputFrameSource output()
fun output(): OutputFrameSource
- (easyar_OutputFrameSource *)output
public func output() -> OutputFrameSource
public virtual OutputFrameSource output()
Возвращаемое значение
| Тип | Описание |
|---|---|
| OutputFrameSource |
inputCount
Количество входов.
int easyar_OutputFrameJoin_inputCount(easyar_OutputFrameJoin * This)
int inputCount()
public int inputCount()
fun inputCount(): Int
- (int)inputCount
public func inputCount() -> Int32
public virtual int inputCount()
Возвращаемое значение
| Тип | Описание |
|---|---|
| Int32 |
create
Создать. Использует функцию объединения по умолчанию, которая реализована как взятие входного кадра с первого входа и взятие первого результата каждого входа. Для каждого входа, если результат отсутствует, берется пустой результат. Первый результат каждого входа будет помещен в соответствующую позицию индекса входа в финальном выходном кадре в разделе результатов.
void easyar_OutputFrameJoin_create(int inputCount, easyar_OutputFrameJoin * * Return)
static std::shared_ptr<OutputFrameJoin> create(int inputCount)
public static @Nonnull OutputFrameJoin create(int inputCount)
companion object fun create(inputCount: Int): OutputFrameJoin
+ (easyar_OutputFrameJoin *)create:(int)inputCount
public static func create(_ inputCount: Int32) -> OutputFrameJoin
public static OutputFrameJoin create(int inputCount)
Параметры
| Имя | Тип | Описание |
|---|---|---|
| inputCount | Int32 |
Возвращаемое значение
| Тип | Описание |
|---|---|
| OutputFrameJoin |
createWithJoiner
Создать. Использует пользовательскую функцию объединения.
void easyar_OutputFrameJoin_createWithJoiner(int inputCount, easyar_FunctorOfOutputFrameFromListOfOutputFrame joiner, easyar_OutputFrameJoin * * Return)
static std::shared_ptr<OutputFrameJoin> createWithJoiner(int inputCount, std::function<std::shared_ptr<OutputFrame>(std::vector<std::shared_ptr<OutputFrame>>)> joiner)
public static @Nonnull OutputFrameJoin createWithJoiner(int inputCount, @Nonnull FunctorOfOutputFrameFromListOfOutputFrame joiner)
companion object fun createWithJoiner(inputCount: Int, joiner: FunctorOfOutputFrameFromListOfOutputFrame): OutputFrameJoin
+ (easyar_OutputFrameJoin *)createWithJoiner:(int)inputCount joiner:(easyar_OutputFrame * (^)(NSArray<easyar_OutputFrame *> *))joiner
public static func createWithJoiner(_ inputCount: Int32, _ joiner: @escaping ([OutputFrame]) -> OutputFrame) -> OutputFrameJoin
public static OutputFrameJoin createWithJoiner(int inputCount, Func<List<OutputFrame>, OutputFrame> joiner)
Параметры
| Имя | Тип | Описание |
|---|---|---|
| inputCount | Int32 | |
| joiner | Func<List<OutputFrame>,> |
Возвращаемое значение
| Тип | Описание |
|---|---|
| OutputFrameJoin |