Class OutputFrameJoin
- Namespace
- easyar
Output frame joiner. Used to merge output frames from multiple components into one output frame. All members of this class are thread-safe. Note that connecting and disconnecting its multiple inputs should not be done while data is flowing in; otherwise, it may get stuck in a state where it cannot output. (It is recommended to complete data flow connections before Camera starts.)
Methods
input
Input port.
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)
Parameters
| Name | Type | Description |
|---|---|---|
| index | Int32 |
Returns
| Type | Description |
|---|---|
| OutputFrameSink |
output
Output port.
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()
Returns
| Type | Description |
|---|---|
| OutputFrameSource |
inputCount
Input count.
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()
Returns
| Type | Description |
|---|---|
| Int32 |
create
Creates using the default join function, which takes the input frame from the first input and the first result from each input. For each input, if there is no result, an empty result is used. The first result of each input is placed at the corresponding input index in results of the final output frame.
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)
Parameters
| Name | Type | Description |
|---|---|---|
| inputCount | Int32 |
Returns
| Type | Description |
|---|---|
| OutputFrameJoin |
createWithJoiner
Creates using a custom join function.
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)
Parameters
| Name | Type | Description |
|---|---|---|
| inputCount | Int32 | |
| joiner | Func<List<OutputFrame>,> |
Returns
| Type | Description |
|---|---|
| OutputFrameJoin |