m_IR.Blocks[newIndex.ID].Events.insert(m_IR.Blocks[newIndex.ID].Events.end(), events.begin(), events.end());
}
+ ResetTime();
return {newIndex};
}
}
AutoPop<decltype(m_AttributeStack)> autoPop(m_AttributeStack);
Compile(ast.Block, newIndex);
+ ResetTime();
return {newIndex};
}
void IR2MIDICompiler::CompileBlock(int trackNumber, IR::BlockReference blockRef)
{
- GetTrackContext(trackNumber).EnterBlock();
+ GetTrackContext(trackNumber).ResetTime();
const auto& block = m_IR.Blocks.at(blockRef.ID);
CheckForUnprocessedAttributes(block.Attributes);
{
boost::apply_visitor(*this, varTrackNumber, i);
}
+
+ GetTrackContext(trackNumber).ResetTime();
}
void IR2MIDICompiler::Finalize()