MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ composite_initialize()

void MayaFlux::Nodes::detail::composite_initialize ( const std::vector< std::shared_ptr< Node > > &  inputs,
NodeGraphManager manager,
ProcessingToken  token,
const std::shared_ptr< Node > &  self 
)

Definition at line 249 of file NodeCombine.cpp.

254 {
255 uint32_t combined_mask = 0;
256 for (const auto& input : inputs)
257 combined_mask |= input->get_channel_mask().load();
258
259 if (combined_mask != 0) {
260 for (auto ch : get_active_channels(combined_mask, 0))
261 manager.add_to_root(self, token, ch);
262 } else {
263 manager.add_to_root(self, token, 0);
264 }
265 }
Core::GlobalInputConfig input
Definition Config.cpp:36
void add_to_root(const std::shared_ptr< Node > &node, ProcessingToken token, unsigned int channel=0)
Add node to specific processing token and channel.
std::vector< uint32_t > get_active_channels(const std::shared_ptr< Nodes::Node > &node, uint32_t fallback_channel)
Extracts active channel list from a node's channel mask.

References MayaFlux::Nodes::NodeGraphManager::add_to_root(), MayaFlux::Nodes::get_active_channels(), and input.

+ Here is the call graph for this function: