ГОСТ Р 53556.5—2013
рование текущего оркестра. Если оркестр будет создаваться узлом
AudioSourco.
а не узлом
AudioFX,
то значение
params
должно быть 0 в каждом канале.
Инструменты могут использовать
params
в качестве
lvalue,
то есть, чтобы присвоить новые значения
используют = оператор. В этом случае, когда инструменту присваивается стандартное имя
params.
значе
ние контроллера на канале, которому присваивается инструментальный экземпляр, связанный с тем кон
текстом.должно быть изменено. Значение
params
изменяется во всех других инструментальных экземпля
рах. связанных с этим каналом, и это изменение должно вступить в силу тогда, когда каждый из этих
инструментальных экземпляров выполняется в
к
уровне.
8.7 Определение кода операции
8.7.1 Синтаксическая форма
Авторы потока битов могутсоздать свои собственные коды операции согласноэтим правилам, чтобы
инкапсулировать функциональность и упростить инструменты и процессавторсхой разработки контента.
<opcode defmition>•> <opcode rate> <ident> ( <formalparam list>) {
<opcode vardeclarations>
<opcode statement block>
}
<opcode rate»
<opcode rate>
<opcode rate>
<opcode rate>
->
aopcodc
->
kopcode
->
iopcode
-> opcode
У определения кода операции есть несколько элементов:
1. Тег уровня, который определяет уровень, на котором выполняется код операции, или указывает, что
код операции является полиморфным уровнем.
2. Идентификатор, который определяет имя кода операции.
3. Списокнулевых или более формальных параметров кода операции.
4. Список нуля или большего количества объявлений переменной кода операции.
5. Блок операторов, определяющих исполнимую функциональность кода операции.
8.7.2 Тег уровня
Тег уровня описывает уровень, на котором код операции должен работать, или указывает, что код
операции является полиморфным уровнем. Существуют четыре тега уровня:
1.
iopcode.
указывая, что код операции работает в
i-rate,
2.
kopcode.
указывая, что код операции работает в
к -rate.
3.
aopcodc,
указывая, что код операции работает в
i-rate.
4.
opcode,
указывая, что код операции является полиморфным уровнем.
8.7.3 Имя кода операции
Любой идентификатор может служить именем кода операции за исключением того, что имя кода
операции не должно быть зарезервированным словом, именем одного из базовых кодов операции, пере
численных в разделе 9. или именем одного из базовых генераторов звуковой таблицы, перечисленных в
разделе 10. Имя кода операции может быть именем переменной влокальном или глобальном счете.
Ни у каких двух инструментов или кодов операции в оркестре недолжно быть того же самого имени.
8.7.4 Формальный список параметра
8.7.4.1 Синтаксическая форма
<formal param list>
->
<formalparam> [. <formalparam list> )
<formal param list>
<formal param>
<formal param>
-> <NULL>
-> <opcodo variable rate> <name>
-> table <ident>
<opcode variable rate> -> asig <opcode variable rate> -> ksig <opcode variable rate>
->
ivar<opcode variable rate> ->xsig
Формальный список параметра определяет интерфейс вызова к кодуоперации. Каждый формальный
параметр в списке имеет имя. тип уровня, и может иметь ширину массива. Если ширина массива будет
специальным маркером
inchannels,
то ширина массива должна быть тем же самым числом каналов ввода
ксвязанному инструментальному инстанцированию. Если ширина массива будет специальным маркером
outchannels.
то ширина массива должна быть тем же самым числом каналов вывода к связанному инстру
ментальному инстанцированию.
36