aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Desktop Editor/.gitignore (renamed from desktop_editor/.gitignore)0
-rw-r--r--Desktop Editor/README.md (renamed from desktop_editor/README.md)0
-rw-r--r--Desktop Editor/babel.config.js (renamed from desktop_editor/babel.config.js)0
-rw-r--r--Desktop Editor/jsconfig.json (renamed from desktop_editor/jsconfig.json)0
-rw-r--r--Desktop Editor/package-lock.json (renamed from desktop_editor/package-lock.json)11
-rw-r--r--Desktop Editor/package.json (renamed from desktop_editor/package.json)1
-rw-r--r--Desktop Editor/public/ModelRepo[1.4.1].xml (renamed from desktop_editor/public/ModelRepo[1.4.1].xml)0
-rw-r--r--Desktop Editor/public/Vienna.pb (renamed from desktop_editor/public/Vienna.pb)bin16371 -> 16371 bytes
-rw-r--r--Desktop Editor/public/favicon.ico (renamed from desktop_editor/public/favicon.ico)bin4286 -> 4286 bytes
-rw-r--r--Desktop Editor/public/index.html (renamed from desktop_editor/public/index.html)0
-rw-r--r--Desktop Editor/public/setlist_example.xml (renamed from desktop_editor/public/setlist_example.xml)0
-rw-r--r--Desktop Editor/src/App.vue (renamed from desktop_editor/src/App.vue)0
-rw-r--r--Desktop Editor/src/assets/decoded_preset_example.json (renamed from desktop_editor/src/assets/decoded_preset_example.json)0
-rw-r--r--Desktop Editor/src/assets/logo.png (renamed from desktop_editor/src/assets/logo.png)bin6849 -> 6849 bytes
-rw-r--r--Desktop Editor/src/assets/setlist_example.json (renamed from desktop_editor/src/assets/setlist_example.json)0
-rw-r--r--Desktop Editor/src/assets/setlist_example.xml (renamed from desktop_editor/src/assets/setlist_example.xml)0
-rw-r--r--Desktop Editor/src/components/PresetBlock.vue (renamed from desktop_editor/src/components/PresetBlock.vue)0
-rw-r--r--Desktop Editor/src/components/PresetChain.vue (renamed from desktop_editor/src/components/PresetChain.vue)0
-rw-r--r--Desktop Editor/src/components/PresetGrid.vue (renamed from desktop_editor/src/components/PresetGrid.vue)0
-rw-r--r--Desktop Editor/src/main.ts (renamed from desktop_editor/src/main.ts)0
-rw-r--r--Desktop Editor/src/models/Presets/Preset_pb.d.ts661
-rw-r--r--Desktop Editor/src/models/Presets/Preset_pb.js5296
-rw-r--r--Desktop Editor/src/models/Presets/index.ts1
-rw-r--r--Desktop Editor/src/protos/Preset.proto (renamed from desktop_editor/public/protos/Preset.proto)0
-rw-r--r--Desktop Editor/src/shims-vue.d.ts (renamed from desktop_editor/src/shims-vue.d.ts)0
-rw-r--r--Desktop Editor/src/store.ts (renamed from desktop_editor/src/store.ts)0
-rw-r--r--Desktop Editor/src/views/PresetBrowserView.vue (renamed from desktop_editor/src/views/PresetBrowserView.vue)24
-rw-r--r--Desktop Editor/src/views/PresetViewer.vue (renamed from desktop_editor/src/views/PresetViewer.vue)0
-rw-r--r--Desktop Editor/tsconfig.json (renamed from desktop_editor/tsconfig.json)0
-rw-r--r--Desktop Editor/vue.config.js (renamed from desktop_editor/vue.config.js)0
30 files changed, 5979 insertions, 15 deletions
diff --git a/desktop_editor/.gitignore b/Desktop Editor/.gitignore
index 403adbc..403adbc 100644
--- a/desktop_editor/.gitignore
+++ b/Desktop Editor/.gitignore
diff --git a/desktop_editor/README.md b/Desktop Editor/README.md
index 5a20baa..5a20baa 100644
--- a/desktop_editor/README.md
+++ b/Desktop Editor/README.md
diff --git a/desktop_editor/babel.config.js b/Desktop Editor/babel.config.js
index e955840..e955840 100644
--- a/desktop_editor/babel.config.js
+++ b/Desktop Editor/babel.config.js
diff --git a/desktop_editor/jsconfig.json b/Desktop Editor/jsconfig.json
index 4aafc5f..4aafc5f 100644
--- a/desktop_editor/jsconfig.json
+++ b/Desktop Editor/jsconfig.json
diff --git a/desktop_editor/package-lock.json b/Desktop Editor/package-lock.json
index d3acf12..07a7d4c 100644
--- a/desktop_editor/package-lock.json
+++ b/Desktop Editor/package-lock.json
@@ -10,6 +10,7 @@
"dependencies": {
"axios": "^1.2.1",
"core-js": "^3.8.3",
+ "google-protobuf": "^3.21.2",
"protobufjs": "^7.1.2",
"stream": "^0.0.2",
"vue": "^3.2.13",
@@ -7036,6 +7037,11 @@
"node": "*"
}
},
+ "node_modules/google-protobuf": {
+ "version": "3.21.2",
+ "resolved": "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.21.2.tgz",
+ "integrity": "sha512-3MSOYFO5U9mPGikIYCzK0SaThypfGgS6bHqrUGXG3DPHCrb+txNqeEcns1W0lkGfk0rCyNXm7xB9rMxnCiZOoA=="
+ },
"node_modules/graceful-fs": {
"version": "4.2.10",
"resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz",
@@ -18676,6 +18682,11 @@
}
}
},
+ "google-protobuf": {
+ "version": "3.21.2",
+ "resolved": "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.21.2.tgz",
+ "integrity": "sha512-3MSOYFO5U9mPGikIYCzK0SaThypfGgS6bHqrUGXG3DPHCrb+txNqeEcns1W0lkGfk0rCyNXm7xB9rMxnCiZOoA=="
+ },
"graceful-fs": {
"version": "4.2.10",
"resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz",
diff --git a/desktop_editor/package.json b/Desktop Editor/package.json
index 13809fe..55678d0 100644
--- a/desktop_editor/package.json
+++ b/Desktop Editor/package.json
@@ -10,6 +10,7 @@
"dependencies": {
"axios": "^1.2.1",
"core-js": "^3.8.3",
+ "google-protobuf": "^3.21.2",
"protobufjs": "^7.1.2",
"stream": "^0.0.2",
"vue": "^3.2.13",
diff --git a/desktop_editor/public/ModelRepo[1.4.1].xml b/Desktop Editor/public/ModelRepo[1.4.1].xml
index bb469ca..bb469ca 100644
--- a/desktop_editor/public/ModelRepo[1.4.1].xml
+++ b/Desktop Editor/public/ModelRepo[1.4.1].xml
diff --git a/desktop_editor/public/Vienna.pb b/Desktop Editor/public/Vienna.pb
index d12d253..d12d253 100644
--- a/desktop_editor/public/Vienna.pb
+++ b/Desktop Editor/public/Vienna.pb
Binary files differ
diff --git a/desktop_editor/public/favicon.ico b/Desktop Editor/public/favicon.ico
index df36fcf..df36fcf 100644
--- a/desktop_editor/public/favicon.ico
+++ b/Desktop Editor/public/favicon.ico
Binary files differ
diff --git a/desktop_editor/public/index.html b/Desktop Editor/public/index.html
index 3e5a139..3e5a139 100644
--- a/desktop_editor/public/index.html
+++ b/Desktop Editor/public/index.html
diff --git a/desktop_editor/public/setlist_example.xml b/Desktop Editor/public/setlist_example.xml
index e43ae5c..e43ae5c 100644
--- a/desktop_editor/public/setlist_example.xml
+++ b/Desktop Editor/public/setlist_example.xml
diff --git a/desktop_editor/src/App.vue b/Desktop Editor/src/App.vue
index 3feca32..3feca32 100644
--- a/desktop_editor/src/App.vue
+++ b/Desktop Editor/src/App.vue
diff --git a/desktop_editor/src/assets/decoded_preset_example.json b/Desktop Editor/src/assets/decoded_preset_example.json
index 57e4a87..57e4a87 100644
--- a/desktop_editor/src/assets/decoded_preset_example.json
+++ b/Desktop Editor/src/assets/decoded_preset_example.json
diff --git a/desktop_editor/src/assets/logo.png b/Desktop Editor/src/assets/logo.png
index f3d2503..f3d2503 100644
--- a/desktop_editor/src/assets/logo.png
+++ b/Desktop Editor/src/assets/logo.png
Binary files differ
diff --git a/desktop_editor/src/assets/setlist_example.json b/Desktop Editor/src/assets/setlist_example.json
index 2709371..2709371 100644
--- a/desktop_editor/src/assets/setlist_example.json
+++ b/Desktop Editor/src/assets/setlist_example.json
diff --git a/desktop_editor/src/assets/setlist_example.xml b/Desktop Editor/src/assets/setlist_example.xml
index 80b7894..80b7894 100644
--- a/desktop_editor/src/assets/setlist_example.xml
+++ b/Desktop Editor/src/assets/setlist_example.xml
diff --git a/desktop_editor/src/components/PresetBlock.vue b/Desktop Editor/src/components/PresetBlock.vue
index 5e59787..5e59787 100644
--- a/desktop_editor/src/components/PresetBlock.vue
+++ b/Desktop Editor/src/components/PresetBlock.vue
diff --git a/desktop_editor/src/components/PresetChain.vue b/Desktop Editor/src/components/PresetChain.vue
index 9e5357e..9e5357e 100644
--- a/desktop_editor/src/components/PresetChain.vue
+++ b/Desktop Editor/src/components/PresetChain.vue
diff --git a/desktop_editor/src/components/PresetGrid.vue b/Desktop Editor/src/components/PresetGrid.vue
index 482d0af..482d0af 100644
--- a/desktop_editor/src/components/PresetGrid.vue
+++ b/Desktop Editor/src/components/PresetGrid.vue
diff --git a/desktop_editor/src/main.ts b/Desktop Editor/src/main.ts
index 4d89664..4d89664 100644
--- a/desktop_editor/src/main.ts
+++ b/Desktop Editor/src/main.ts
diff --git a/Desktop Editor/src/models/Presets/Preset_pb.d.ts b/Desktop Editor/src/models/Presets/Preset_pb.d.ts
new file mode 100644
index 0000000..1bf823d
--- /dev/null
+++ b/Desktop Editor/src/models/Presets/Preset_pb.d.ts
@@ -0,0 +1,661 @@
+import * as jspb from 'google-protobuf'
+
+
+
+export class BinaryPreset extends jspb.Message {
+ getName(): string;
+ setName(value: string): BinaryPreset;
+
+ getHash(): number;
+ setHash(value: number): BinaryPreset;
+
+ getDate(): string;
+ setDate(value: string): BinaryPreset;
+
+ getVolume(): number;
+ setVolume(value: number): BinaryPreset;
+
+ getPan(): number;
+ setPan(value: number): BinaryPreset;
+
+ getDefaultScene(): number;
+ setDefaultScene(value: number): BinaryPreset;
+
+ getAuthorName(): string;
+ setAuthorName(value: string): BinaryPreset;
+
+ getAuthorId(): string;
+ setAuthorId(value: string): BinaryPreset;
+
+ getTempo(): number;
+ setTempo(value: number): BinaryPreset;
+
+ getChainsList(): Array<Chain>;
+ setChainsList(value: Array<Chain>): BinaryPreset;
+ clearChainsList(): BinaryPreset;
+ addChains(value?: Chain, index?: number): Chain;
+
+ getTagsList(): Array<string>;
+ setTagsList(value: Array<string>): BinaryPreset;
+ clearTagsList(): BinaryPreset;
+ addTags(value: string, index?: number): BinaryPreset;
+
+ getLegacyStompModeStompDataList(): Array<LegacyStompModeStompData>;
+ setLegacyStompModeStompDataList(value: Array<LegacyStompModeStompData>): BinaryPreset;
+ clearLegacyStompModeStompDataList(): BinaryPreset;
+ addLegacyStompModeStompData(value?: LegacyStompModeStompData, index?: number): LegacyStompModeStompData;
+
+ getSceneTempoList(): Array<number>;
+ setSceneTempoList(value: Array<number>): BinaryPreset;
+ clearSceneTempoList(): BinaryPreset;
+ addSceneTempo(value: number, index?: number): BinaryPreset;
+
+ getSceneLabelsList(): Array<string>;
+ setSceneLabelsList(value: Array<string>): BinaryPreset;
+ clearSceneLabelsList(): BinaryPreset;
+ addSceneLabels(value: string, index?: number): BinaryPreset;
+
+ getMidiMessagesList(): Array<MidiMessageInfo>;
+ setMidiMessagesList(value: Array<MidiMessageInfo>): BinaryPreset;
+ clearMidiMessagesList(): BinaryPreset;
+ addMidiMessages(value?: MidiMessageInfo, index?: number): MidiMessageInfo;
+
+ getMidiMessagesGeneralList(): Array<MidiMessageInfo>;
+ setMidiMessagesGeneralList(value: Array<MidiMessageInfo>): BinaryPreset;
+ clearMidiMessagesGeneralList(): BinaryPreset;
+ addMidiMessagesGeneral(value?: MidiMessageInfo, index?: number): MidiMessageInfo;
+
+ getBypassList(): Array<Bypass>;
+ setBypassList(value: Array<Bypass>): BinaryPreset;
+ clearBypassList(): BinaryPreset;
+ addBypass(value?: Bypass, index?: number): Bypass;
+
+ getTempoprogramdataList(): Array<Model>;
+ setTempoprogramdataList(value: Array<Model>): BinaryPreset;
+ clearTempoprogramdataList(): BinaryPreset;
+ addTempoprogramdata(value?: Model, index?: number): Model;
+
+ getLayoutCode1List(): Array<number>;
+ setLayoutCode1List(value: Array<number>): BinaryPreset;
+ clearLayoutCode1List(): BinaryPreset;
+ addLayoutCode1(value: number, index?: number): BinaryPreset;
+
+ getLayoutCode2List(): Array<number>;
+ setLayoutCode2List(value: Array<number>): BinaryPreset;
+ clearLayoutCode2List(): BinaryPreset;
+ addLayoutCode2(value: number, index?: number): BinaryPreset;
+
+ getCreatedVersionList(): Array<string>;
+ setCreatedVersionList(value: Array<string>): BinaryPreset;
+ clearCreatedVersionList(): BinaryPreset;
+ addCreatedVersion(value: string, index?: number): BinaryPreset;
+
+ getModifiedVersionList(): Array<string>;
+ setModifiedVersionList(value: Array<string>): BinaryPreset;
+ clearModifiedVersionList(): BinaryPreset;
+ addModifiedVersion(value: string, index?: number): BinaryPreset;
+
+ getOldestCompatibleVersionList(): Array<string>;
+ setOldestCompatibleVersionList(value: Array<string>): BinaryPreset;
+ clearOldestCompatibleVersionList(): BinaryPreset;
+ addOldestCompatibleVersion(value: string, index?: number): BinaryPreset;
+
+ getCloudIdList(): Array<string>;
+ setCloudIdList(value: Array<string>): BinaryPreset;
+ clearCloudIdList(): BinaryPreset;
+ addCloudId(value: string, index?: number): BinaryPreset;
+
+ getDescriptionList(): Array<string>;
+ setDescriptionList(value: Array<string>): BinaryPreset;
+ clearDescriptionList(): BinaryPreset;
+ addDescription(value: string, index?: number): BinaryPreset;
+
+ getStompModeAssignmentsList(): Array<StompModeAssignment>;
+ setStompModeAssignmentsList(value: Array<StompModeAssignment>): BinaryPreset;
+ clearStompModeAssignmentsList(): BinaryPreset;
+ addStompModeAssignments(value?: StompModeAssignment, index?: number): StompModeAssignment;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): BinaryPreset.AsObject;
+ static toObject(includeInstance: boolean, msg: BinaryPreset): BinaryPreset.AsObject;
+ static serializeBinaryToWriter(message: BinaryPreset, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): BinaryPreset;
+ static deserializeBinaryFromReader(message: BinaryPreset, reader: jspb.BinaryReader): BinaryPreset;
+}
+
+export namespace BinaryPreset {
+ export type AsObject = {
+ name: string,
+ hash: number,
+ date: string,
+ volume: number,
+ pan: number,
+ defaultScene: number,
+ authorName: string,
+ authorId: string,
+ tempo: number,
+ chainsList: Array<Chain.AsObject>,
+ tagsList: Array<string>,
+ legacyStompModeStompDataList: Array<LegacyStompModeStompData.AsObject>,
+ sceneTempoList: Array<number>,
+ sceneLabelsList: Array<string>,
+ midiMessagesList: Array<MidiMessageInfo.AsObject>,
+ midiMessagesGeneralList: Array<MidiMessageInfo.AsObject>,
+ bypassList: Array<Bypass.AsObject>,
+ tempoprogramdataList: Array<Model.AsObject>,
+ layoutCode1List: Array<number>,
+ layoutCode2List: Array<number>,
+ createdVersionList: Array<string>,
+ modifiedVersionList: Array<string>,
+ oldestCompatibleVersionList: Array<string>,
+ cloudIdList: Array<string>,
+ descriptionList: Array<string>,
+ stompModeAssignmentsList: Array<StompModeAssignment.AsObject>,
+ }
+}
+
+export class Chain extends jspb.Message {
+ getModelsList(): Array<Model>;
+ setModelsList(value: Array<Model>): Chain;
+ clearModelsList(): Chain;
+ addModels(value?: Model, index?: number): Model;
+
+ getSplitControlPointsList(): Array<SplitControlPoints>;
+ setSplitControlPointsList(value: Array<SplitControlPoints>): Chain;
+ clearSplitControlPointsList(): Chain;
+ addSplitControlPoints(value?: SplitControlPoints, index?: number): SplitControlPoints;
+
+ getSplitterList(): Array<Model>;
+ setSplitterList(value: Array<Model>): Chain;
+ clearSplitterList(): Chain;
+ addSplitter(value?: Model, index?: number): Model;
+
+ getMixerList(): Array<Model>;
+ setMixerList(value: Array<Model>): Chain;
+ clearMixerList(): Chain;
+ addMixer(value?: Model, index?: number): Model;
+
+ getOutputControlList(): Array<Model>;
+ setOutputControlList(value: Array<Model>): Chain;
+ clearOutputControlList(): Chain;
+ addOutputControl(value?: Model, index?: number): Model;
+
+ getSplitbypassList(): Array<SceneBypass>;
+ setSplitbypassList(value: Array<SceneBypass>): Chain;
+ clearSplitbypassList(): Chain;
+ addSplitbypass(value?: SceneBypass, index?: number): SceneBypass;
+
+ getMixbypassList(): Array<SceneBypass>;
+ setMixbypassList(value: Array<SceneBypass>): Chain;
+ clearMixbypassList(): Chain;
+ addMixbypass(value?: SceneBypass, index?: number): SceneBypass;
+
+ getCombinedSplitterList(): Array<Model>;
+ setCombinedSplitterList(value: Array<Model>): Chain;
+ clearCombinedSplitterList(): Chain;
+ addCombinedSplitter(value?: Model, index?: number): Model;
+
+ getInputControlList(): Array<Model>;
+ setInputControlList(value: Array<Model>): Chain;
+ clearInputControlList(): Chain;
+ addInputControl(value?: Model, index?: number): Model;
+
+ getInPortid(): number;
+ setInPortid(value: number): Chain;
+
+ getOutPortid(): number;
+ setOutPortid(value: number): Chain;
+
+ getRow(): number;
+ setRow(value: number): Chain;
+
+ getInPortidCase(): Chain.InPortidCase;
+
+ getOutPortidCase(): Chain.OutPortidCase;
+
+ getRowCase(): Chain.RowCase;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): Chain.AsObject;
+ static toObject(includeInstance: boolean, msg: Chain): Chain.AsObject;
+ static serializeBinaryToWriter(message: Chain, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): Chain;
+ static deserializeBinaryFromReader(message: Chain, reader: jspb.BinaryReader): Chain;
+}
+
+export namespace Chain {
+ export type AsObject = {
+ modelsList: Array<Model.AsObject>,
+ splitControlPointsList: Array<SplitControlPoints.AsObject>,
+ splitterList: Array<Model.AsObject>,
+ mixerList: Array<Model.AsObject>,
+ outputControlList: Array<Model.AsObject>,
+ splitbypassList: Array<SceneBypass.AsObject>,
+ mixbypassList: Array<SceneBypass.AsObject>,
+ combinedSplitterList: Array<Model.AsObject>,
+ inputControlList: Array<Model.AsObject>,
+ inPortid: number,
+ outPortid: number,
+ row: number,
+ }
+
+ export enum InPortidCase {
+ _IN_PORTID_NOT_SET = 0,
+ IN_PORTID = 1,
+ }
+
+ export enum OutPortidCase {
+ _OUT_PORTID_NOT_SET = 0,
+ OUT_PORTID = 2,
+ }
+
+ export enum RowCase {
+ _ROW_NOT_SET = 0,
+ ROW = 14,
+ }
+}
+
+export class Model extends jspb.Message {
+ getParamsList(): Array<Param>;
+ setParamsList(value: Array<Param>): Model;
+ clearParamsList(): Model;
+ addParams(value?: Param, index?: number): Param;
+
+ getBypassExpressionList(): Array<Expression>;
+ setBypassExpressionList(value: Array<Expression>): Model;
+ clearBypassExpressionList(): Model;
+ addBypassExpression(value?: Expression, index?: number): Expression;
+
+ getExpressionBypassInfoList(): Array<ExpressionBypassInfo>;
+ setExpressionBypassInfoList(value: Array<ExpressionBypassInfo>): Model;
+ clearExpressionBypassInfoList(): Model;
+ addExpressionBypassInfo(value?: ExpressionBypassInfo, index?: number): ExpressionBypassInfo;
+
+ getHash(): number;
+ setHash(value: number): Model;
+
+ getColumn(): number;
+ setColumn(value: number): Model;
+
+ getHashCase(): Model.HashCase;
+
+ getColumnCase(): Model.ColumnCase;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): Model.AsObject;
+ static toObject(includeInstance: boolean, msg: Model): Model.AsObject;
+ static serializeBinaryToWriter(message: Model, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): Model;
+ static deserializeBinaryFromReader(message: Model, reader: jspb.BinaryReader): Model;
+}
+
+export namespace Model {
+ export type AsObject = {
+ paramsList: Array<Param.AsObject>,
+ bypassExpressionList: Array<Expression.AsObject>,
+ expressionBypassInfoList: Array<ExpressionBypassInfo.AsObject>,
+ hash: number,
+ column: number,
+ }
+
+ export enum HashCase {
+ _HASH_NOT_SET = 0,
+ HASH = 1,
+ }
+
+ export enum ColumnCase {
+ _COLUMN_NOT_SET = 0,
+ COLUMN = 5,
+ }
+}
+
+export class SplitControlPoints extends jspb.Message {
+ getSplit(): number;
+ setSplit(value: number): SplitControlPoints;
+
+ getMix(): number;
+ setMix(value: number): SplitControlPoints;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): SplitControlPoints.AsObject;
+ static toObject(includeInstance: boolean, msg: SplitControlPoints): SplitControlPoints.AsObject;
+ static serializeBinaryToWriter(message: SplitControlPoints, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): SplitControlPoints;
+ static deserializeBinaryFromReader(message: SplitControlPoints, reader: jspb.BinaryReader): SplitControlPoints;
+}
+
+export namespace SplitControlPoints {
+ export type AsObject = {
+ split: number,
+ mix: number,
+ }
+}
+
+export class Bypass extends jspb.Message {
+ getColbypassList(): Array<ColBypass>;
+ setColbypassList(value: Array<ColBypass>): Bypass;
+ clearColbypassList(): Bypass;
+ addColbypass(value?: ColBypass, index?: number): ColBypass;
+
+ getRow(): number;
+ setRow(value: number): Bypass;
+
+ getRowCase(): Bypass.RowCase;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): Bypass.AsObject;
+ static toObject(includeInstance: boolean, msg: Bypass): Bypass.AsObject;
+ static serializeBinaryToWriter(message: Bypass, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): Bypass;
+ static deserializeBinaryFromReader(message: Bypass, reader: jspb.BinaryReader): Bypass;
+}
+
+export namespace Bypass {
+ export type AsObject = {
+ colbypassList: Array<ColBypass.AsObject>,
+ row: number,
+ }
+
+ export enum RowCase {
+ _ROW_NOT_SET = 0,
+ ROW = 2,
+ }
+}
+
+export class ColBypass extends jspb.Message {
+ getScenebypassList(): Array<SceneBypass>;
+ setScenebypassList(value: Array<SceneBypass>): ColBypass;
+ clearScenebypassList(): ColBypass;
+ addScenebypass(value?: SceneBypass, index?: number): SceneBypass;
+
+ getColumn(): number;
+ setColumn(value: number): ColBypass;
+
+ getColumnCase(): ColBypass.ColumnCase;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): ColBypass.AsObject;
+ static toObject(includeInstance: boolean, msg: ColBypass): ColBypass.AsObject;
+ static serializeBinaryToWriter(message: ColBypass, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): ColBypass;
+ static deserializeBinaryFromReader(message: ColBypass, reader: jspb.BinaryReader): ColBypass;
+}
+
+export namespace ColBypass {
+ export type AsObject = {
+ scenebypassList: Array<SceneBypass.AsObject>,
+ column: number,
+ }
+
+ export enum ColumnCase {
+ _COLUMN_NOT_SET = 0,
+ COLUMN = 2,
+ }
+}
+
+export class SceneBypass extends jspb.Message {
+ getBypass(): boolean;
+ setBypass(value: boolean): SceneBypass;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): SceneBypass.AsObject;
+ static toObject(includeInstance: boolean, msg: SceneBypass): SceneBypass.AsObject;
+ static serializeBinaryToWriter(message: SceneBypass, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): SceneBypass;
+ static deserializeBinaryFromReader(message: SceneBypass, reader: jspb.BinaryReader): SceneBypass;
+}
+
+export namespace SceneBypass {
+ export type AsObject = {
+ bypass: boolean,
+ }
+}
+
+export class Param extends jspb.Message {
+ getParamValuesList(): Array<ParamValue>;
+ setParamValuesList(value: Array<ParamValue>): Param;
+ clearParamValuesList(): Param;
+ addParamValues(value?: ParamValue, index?: number): ParamValue;
+
+ getExpression(): number;
+ setExpression(value: number): Param;
+
+ getExpressionMin(): number;
+ setExpressionMin(value: number): Param;
+
+ getExpressionMax(): number;
+ setExpressionMax(value: number): Param;
+
+ getSceneMode(): boolean;
+ setSceneMode(value: boolean): Param;
+
+ getIndex(): number;
+ setIndex(value: number): Param;
+
+ getExpressionCase(): Param.ExpressionCase;
+
+ getExpressionMinCase(): Param.ExpressionMinCase;
+
+ getExpressionMaxCase(): Param.ExpressionMaxCase;
+
+ getSceneModeCase(): Param.SceneModeCase;
+
+ getIndexCase(): Param.IndexCase;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): Param.AsObject;
+ static toObject(includeInstance: boolean, msg: Param): Param.AsObject;
+ static serializeBinaryToWriter(message: Param, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): Param;
+ static deserializeBinaryFromReader(message: Param, reader: jspb.BinaryReader): Param;
+}
+
+export namespace Param {
+ export type AsObject = {
+ paramValuesList: Array<ParamValue.AsObject>,
+ expression: number,
+ expressionMin: number,
+ expressionMax: number,
+ sceneMode: boolean,
+ index: number,
+ }
+
+ export enum ExpressionCase {
+ _EXPRESSION_NOT_SET = 0,
+ EXPRESSION = 1,
+ }
+
+ export enum ExpressionMinCase {
+ _EXPRESSION_MIN_NOT_SET = 0,
+ EXPRESSION_MIN = 2,
+ }
+
+ export enum ExpressionMaxCase {
+ _EXPRESSION_MAX_NOT_SET = 0,
+ EXPRESSION_MAX = 3,
+ }
+
+ export enum SceneModeCase {
+ _SCENE_MODE_NOT_SET = 0,
+ SCENE_MODE = 4,
+ }
+
+ export enum IndexCase {
+ _INDEX_NOT_SET = 0,
+ INDEX = 6,
+ }
+}
+
+export class ParamValue extends jspb.Message {
+ getIntValue(): number;
+ setIntValue(value: number): ParamValue;
+
+ getFloatValue(): number;
+ setFloatValue(value: number): ParamValue;
+
+ getStringValue(): string;
+ setStringValue(value: string): ParamValue;
+
+ getValueCase(): ParamValue.ValueCase;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): ParamValue.AsObject;
+ static toObject(includeInstance: boolean, msg: ParamValue): ParamValue.AsObject;
+ static serializeBinaryToWriter(message: ParamValue, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): ParamValue;
+ static deserializeBinaryFromReader(message: ParamValue, reader: jspb.BinaryReader): ParamValue;
+}
+
+export namespace ParamValue {
+ export type AsObject = {
+ intValue: number,
+ floatValue: number,
+ stringValue: string,
+ }
+
+ export enum ValueCase {
+ VALUE_NOT_SET = 0,
+ INT_VALUE = 1,
+ FLOAT_VALUE = 2,
+ STRING_VALUE = 3,
+ }
+}
+
+export class LegacyStompModeStompData extends jspb.Message {
+ getRow(): number;
+ setRow(value: number): LegacyStompModeStompData;
+
+ getColumn(): number;
+ setColumn(value: number): LegacyStompModeStompData;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): LegacyStompModeStompData.AsObject;
+ static toObject(includeInstance: boolean, msg: LegacyStompModeStompData): LegacyStompModeStompData.AsObject;
+ static serializeBinaryToWriter(message: LegacyStompModeStompData, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): LegacyStompModeStompData;
+ static deserializeBinaryFromReader(message: LegacyStompModeStompData, reader: jspb.BinaryReader): LegacyStompModeStompData;
+}
+
+export namespace LegacyStompModeStompData {
+ export type AsObject = {
+ row: number,
+ column: number,
+ }
+}
+
+export class StompModeAssignment extends jspb.Message {
+ getRow(): number;
+ setRow(value: number): StompModeAssignment;
+
+ getColumn(): number;
+ setColumn(value: number): StompModeAssignment;
+
+ getStompIndex(): number;
+ setStompIndex(value: number): StompModeAssignment;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): StompModeAssignment.AsObject;
+ static toObject(includeInstance: boolean, msg: StompModeAssignment): StompModeAssignment.AsObject;
+ static serializeBinaryToWriter(message: StompModeAssignment, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): StompModeAssignment;
+ static deserializeBinaryFromReader(message: StompModeAssignment, reader: jspb.BinaryReader): StompModeAssignment;
+}
+
+export namespace StompModeAssignment {
+ export type AsObject = {
+ row: number,
+ column: number,
+ stompIndex: number,
+ }
+}
+
+export class MidiMessageInfo extends jspb.Message {
+ getType(): number;
+ setType(value: number): MidiMessageInfo;
+
+ getChannel(): number;
+ setChannel(value: number): MidiMessageInfo;
+
+ getParam1(): number;
+ setParam1(value: number): MidiMessageInfo;
+
+ getParam2(): number;
+ setParam2(value: number): MidiMessageInfo;
+
+ getParam3(): number;
+ setParam3(value: number): MidiMessageInfo;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): MidiMessageInfo.AsObject;
+ static toObject(includeInstance: boolean, msg: MidiMessageInfo): MidiMessageInfo.AsObject;
+ static serializeBinaryToWriter(message: MidiMessageInfo, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): MidiMessageInfo;
+ static deserializeBinaryFromReader(message: MidiMessageInfo, reader: jspb.BinaryReader): MidiMessageInfo;
+}
+
+export namespace MidiMessageInfo {
+ export type AsObject = {
+ type: number,
+ channel: number,
+ param1: number,
+ param2: number,
+ param3: number,
+ }
+}
+
+export class Expression extends jspb.Message {
+ getExpression(): number;
+ setExpression(value: number): Expression;
+
+ getExpressionMin(): number;
+ setExpressionMin(value: number): Expression;
+
+ getExpressionMax(): number;
+ setExpressionMax(value: number): Expression;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): Expression.AsObject;
+ static toObject(includeInstance: boolean, msg: Expression): Expression.AsObject;
+ static serializeBinaryToWriter(message: Expression, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): Expression;
+ static deserializeBinaryFromReader(message: Expression, reader: jspb.BinaryReader): Expression;
+}
+
+export namespace Expression {
+ export type AsObject = {
+ expression: number,
+ expressionMin: number,
+ expressionMax: number,
+ }
+}
+
+export class ExpressionBypassInfo extends jspb.Message {
+ getType(): number;
+ setType(value: number): ExpressionBypassInfo;
+
+ getInvert(): boolean;
+ setInvert(value: boolean): ExpressionBypassInfo;
+
+ getDelayMs(): number;
+ setDelayMs(value: number): ExpressionBypassInfo;
+
+ getLatchEmulation(): boolean;
+ setLatchEmulation(value: boolean): ExpressionBypassInfo;
+
+ serializeBinary(): Uint8Array;
+ toObject(includeInstance?: boolean): ExpressionBypassInfo.AsObject;
+ static toObject(includeInstance: boolean, msg: ExpressionBypassInfo): ExpressionBypassInfo.AsObject;
+ static serializeBinaryToWriter(message: ExpressionBypassInfo, writer: jspb.BinaryWriter): void;
+ static deserializeBinary(bytes: Uint8Array): ExpressionBypassInfo;
+ static deserializeBinaryFromReader(message: ExpressionBypassInfo, reader: jspb.BinaryReader): ExpressionBypassInfo;
+}
+
+export namespace ExpressionBypassInfo {
+ export type AsObject = {
+ type: number,
+ invert: boolean,
+ delayMs: number,
+ latchEmulation: boolean,
+ }
+}
+
diff --git a/Desktop Editor/src/models/Presets/Preset_pb.js b/Desktop Editor/src/models/Presets/Preset_pb.js
new file mode 100644
index 0000000..a2d8be7
--- /dev/null
+++ b/Desktop Editor/src/models/Presets/Preset_pb.js
@@ -0,0 +1,5296 @@
+// source: NDSP/Presets/Preset.proto
+/**
+ * @fileoverview
+ * @enhanceable
+ * @suppress {missingRequire} reports error on implicit type usages.
+ * @suppress {messageConventions} JS Compiler reports an error if a variable or
+ * field starts with 'MSG_' and isn't a translatable message.
+ * @public
+ */
+// GENERATED CODE -- DO NOT EDIT!
+/* eslint-disable */
+// @ts-nocheck
+
+var jspb = require('google-protobuf');
+var goog = jspb;
+var global = (function() {
+ if (this) { return this; }
+ if (typeof window !== 'undefined') { return window; }
+ if (typeof global !== 'undefined') { return global; }
+ if (typeof self !== 'undefined') { return self; }
+ return Function('return this')();
+}.call(null));
+
+goog.exportSymbol('proto.BinaryPreset', null, global);
+goog.exportSymbol('proto.Bypass', null, global);
+goog.exportSymbol('proto.Bypass.RowCase', null, global);
+goog.exportSymbol('proto.Chain', null, global);
+goog.exportSymbol('proto.Chain.InPortidCase', null, global);
+goog.exportSymbol('proto.Chain.OutPortidCase', null, global);
+goog.exportSymbol('proto.Chain.RowCase', null, global);
+goog.exportSymbol('proto.ColBypass', null, global);
+goog.exportSymbol('proto.ColBypass.ColumnCase', null, global);
+goog.exportSymbol('proto.Expression', null, global);
+goog.exportSymbol('proto.ExpressionBypassInfo', null, global);
+goog.exportSymbol('proto.LegacyStompModeStompData', null, global);
+goog.exportSymbol('proto.MidiMessageInfo', null, global);
+goog.exportSymbol('proto.Model', null, global);
+goog.exportSymbol('proto.Model.ColumnCase', null, global);
+goog.exportSymbol('proto.Model.HashCase', null, global);
+goog.exportSymbol('proto.Param', null, global);
+goog.exportSymbol('proto.Param.ExpressionCase', null, global);
+goog.exportSymbol('proto.Param.ExpressionMaxCase', null, global);
+goog.exportSymbol('proto.Param.ExpressionMinCase', null, global);
+goog.exportSymbol('proto.Param.IndexCase', null, global);
+goog.exportSymbol('proto.Param.SceneModeCase', null, global);
+goog.exportSymbol('proto.ParamValue', null, global);
+goog.exportSymbol('proto.ParamValue.ValueCase', null, global);
+goog.exportSymbol('proto.SceneBypass', null, global);
+goog.exportSymbol('proto.SplitControlPoints', null, global);
+goog.exportSymbol('proto.StompModeAssignment', null, global);
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.BinaryPreset = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.BinaryPreset.repeatedFields_, null);
+};
+goog.inherits(proto.BinaryPreset, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.BinaryPreset.displayName = 'proto.BinaryPreset';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.Chain = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.Chain.repeatedFields_, proto.Chain.oneofGroups_);
+};
+goog.inherits(proto.Chain, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.Chain.displayName = 'proto.Chain';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.Model = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.Model.repeatedFields_, proto.Model.oneofGroups_);
+};
+goog.inherits(proto.Model, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.Model.displayName = 'proto.Model';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.SplitControlPoints = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.SplitControlPoints, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.SplitControlPoints.displayName = 'proto.SplitControlPoints';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.Bypass = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.Bypass.repeatedFields_, proto.Bypass.oneofGroups_);
+};
+goog.inherits(proto.Bypass, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.Bypass.displayName = 'proto.Bypass';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.ColBypass = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.ColBypass.repeatedFields_, proto.ColBypass.oneofGroups_);
+};
+goog.inherits(proto.ColBypass, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.ColBypass.displayName = 'proto.ColBypass';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.SceneBypass = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.SceneBypass, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.SceneBypass.displayName = 'proto.SceneBypass';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.Param = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.Param.repeatedFields_, proto.Param.oneofGroups_);
+};
+goog.inherits(proto.Param, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.Param.displayName = 'proto.Param';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.ParamValue = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, proto.ParamValue.oneofGroups_);
+};
+goog.inherits(proto.ParamValue, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.ParamValue.displayName = 'proto.ParamValue';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.LegacyStompModeStompData = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.LegacyStompModeStompData, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.LegacyStompModeStompData.displayName = 'proto.LegacyStompModeStompData';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.StompModeAssignment = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.StompModeAssignment, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.StompModeAssignment.displayName = 'proto.StompModeAssignment';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.MidiMessageInfo = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.MidiMessageInfo, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.MidiMessageInfo.displayName = 'proto.MidiMessageInfo';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.Expression = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.Expression, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.Expression.displayName = 'proto.Expression';
+}
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.ExpressionBypassInfo = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.ExpressionBypassInfo, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ /**
+ * @public
+ * @override
+ */
+ proto.ExpressionBypassInfo.displayName = 'proto.ExpressionBypassInfo';
+}
+
+/**
+ * List of repeated fields within this message type.
+ * @private {!Array<number>}
+ * @const
+ */
+proto.BinaryPreset.repeatedFields_ = [11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27];
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.BinaryPreset.prototype.toObject = function(opt_includeInstance) {
+ return proto.BinaryPreset.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.BinaryPreset} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.BinaryPreset.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ name: jspb.Message.getFieldWithDefault(msg, 2, ""),
+ hash: jspb.Message.getFieldWithDefault(msg, 3, 0),
+ date: jspb.Message.getFieldWithDefault(msg, 4, ""),
+ volume: jspb.Message.getFloatingPointFieldWithDefault(msg, 5, 0.0),
+ pan: jspb.Message.getFloatingPointFieldWithDefault(msg, 6, 0.0),
+ defaultScene: jspb.Message.getFieldWithDefault(msg, 7, 0),
+ authorName: jspb.Message.getFieldWithDefault(msg, 8, ""),
+ authorId: jspb.Message.getFieldWithDefault(msg, 9, ""),
+ tempo: jspb.Message.getFieldWithDefault(msg, 10, 0),
+ chainsList: jspb.Message.toObjectList(msg.getChainsList(),
+ proto.Chain.toObject, includeInstance),
+ tagsList: (f = jspb.Message.getRepeatedField(msg, 12)) == null ? undefined : f,
+ legacyStompModeStompDataList: jspb.Message.toObjectList(msg.getLegacyStompModeStompDataList(),
+ proto.LegacyStompModeStompData.toObject, includeInstance),
+ sceneTempoList: (f = jspb.Message.getRepeatedField(msg, 14)) == null ? undefined : f,
+ sceneLabelsList: (f = jspb.Message.getRepeatedField(msg, 15)) == null ? undefined : f,
+ midiMessagesList: jspb.Message.toObjectList(msg.getMidiMessagesList(),
+ proto.MidiMessageInfo.toObject, includeInstance),
+ midiMessagesGeneralList: jspb.Message.toObjectList(msg.getMidiMessagesGeneralList(),
+ proto.MidiMessageInfo.toObject, includeInstance),
+ bypassList: jspb.Message.toObjectList(msg.getBypassList(),
+ proto.Bypass.toObject, includeInstance),
+ tempoprogramdataList: jspb.Message.toObjectList(msg.getTempoprogramdataList(),
+ proto.Model.toObject, includeInstance),
+ layoutCode1List: (f = jspb.Message.getRepeatedField(msg, 20)) == null ? undefined : f,
+ layoutCode2List: (f = jspb.Message.getRepeatedField(msg, 21)) == null ? undefined : f,
+ createdVersionList: (f = jspb.Message.getRepeatedField(msg, 22)) == null ? undefined : f,
+ modifiedVersionList: (f = jspb.Message.getRepeatedField(msg, 23)) == null ? undefined : f,
+ oldestCompatibleVersionList: (f = jspb.Message.getRepeatedField(msg, 24)) == null ? undefined : f,
+ cloudIdList: (f = jspb.Message.getRepeatedField(msg, 25)) == null ? undefined : f,
+ descriptionList: (f = jspb.Message.getRepeatedField(msg, 26)) == null ? undefined : f,
+ stompModeAssignmentsList: jspb.Message.toObjectList(msg.getStompModeAssignmentsList(),
+ proto.StompModeAssignment.toObject, includeInstance)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.BinaryPreset}
+ */
+proto.BinaryPreset.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.BinaryPreset;
+ return proto.BinaryPreset.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.BinaryPreset} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.BinaryPreset}
+ */
+proto.BinaryPreset.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 2:
+ var value = /** @type {string} */ (reader.readString());
+ msg.setName(value);
+ break;
+ case 3:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setHash(value);
+ break;
+ case 4:
+ var value = /** @type {string} */ (reader.readString());
+ msg.setDate(value);
+ break;
+ case 5:
+ var value = /** @type {number} */ (reader.readFloat());
+ msg.setVolume(value);
+ break;
+ case 6:
+ var value = /** @type {number} */ (reader.readFloat());
+ msg.setPan(value);
+ break;
+ case 7:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setDefaultScene(value);
+ break;
+ case 8:
+ var value = /** @type {string} */ (reader.readString());
+ msg.setAuthorName(value);
+ break;
+ case 9:
+ var value = /** @type {string} */ (reader.readString());
+ msg.setAuthorId(value);
+ break;
+ case 10:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setTempo(value);
+ break;
+ case 11:
+ var value = new proto.Chain;
+ reader.readMessage(value,proto.Chain.deserializeBinaryFromReader);
+ msg.addChains(value);
+ break;
+ case 12:
+ var value = /** @type {string} */ (reader.readString());
+ msg.addTags(value);
+ break;
+ case 13:
+ var value = new proto.LegacyStompModeStompData;
+ reader.readMessage(value,proto.LegacyStompModeStompData.deserializeBinaryFromReader);
+ msg.addLegacyStompModeStompData(value);
+ break;
+ case 14:
+ var values = /** @type {!Array<number>} */ (reader.isDelimited() ? reader.readPackedUint32() : [reader.readUint32()]);
+ for (var i = 0; i < values.length; i++) {
+ msg.addSceneTempo(values[i]);
+ }
+ break;
+ case 15:
+ var value = /** @type {string} */ (reader.readString());
+ msg.addSceneLabels(value);
+ break;
+ case 16:
+ var value = new proto.MidiMessageInfo;
+ reader.readMessage(value,proto.MidiMessageInfo.deserializeBinaryFromReader);
+ msg.addMidiMessages(value);
+ break;
+ case 17:
+ var value = new proto.MidiMessageInfo;
+ reader.readMessage(value,proto.MidiMessageInfo.deserializeBinaryFromReader);
+ msg.addMidiMessagesGeneral(value);
+ break;
+ case 18:
+ var value = new proto.Bypass;
+ reader.readMessage(value,proto.Bypass.deserializeBinaryFromReader);
+ msg.addBypass(value);
+ break;
+ case 19:
+ var value = new proto.Model;
+ reader.readMessage(value,proto.Model.deserializeBinaryFromReader);
+ msg.addTempoprogramdata(value);
+ break;
+ case 20:
+ var values = /** @type {!Array<number>} */ (reader.isDelimited() ? reader.readPackedUint32() : [reader.readUint32()]);
+ for (var i = 0; i < values.length; i++) {
+ msg.addLayoutCode1(values[i]);
+ }
+ break;
+ case 21:
+ var values = /** @type {!Array<number>} */ (reader.isDelimited() ? reader.readPackedUint32() : [reader.readUint32()]);
+ for (var i = 0; i < values.length; i++) {
+ msg.addLayoutCode2(values[i]);
+ }
+ break;
+ case 22:
+ var value = /** @type {string} */ (reader.readString());
+ msg.addCreatedVersion(value);
+ break;
+ case 23:
+ var value = /** @type {string} */ (reader.readString());
+ msg.addModifiedVersion(value);
+ break;
+ case 24:
+ var value = /** @type {string} */ (reader.readString());
+ msg.addOldestCompatibleVersion(value);
+ break;
+ case 25:
+ var value = /** @type {string} */ (reader.readString());
+ msg.addCloudId(value);
+ break;
+ case 26:
+ var value = /** @type {string} */ (reader.readString());
+ msg.addDescription(value);
+ break;
+ case 27:
+ var value = new proto.StompModeAssignment;
+ reader.readMessage(value,proto.StompModeAssignment.deserializeBinaryFromReader);
+ msg.addStompModeAssignments(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.BinaryPreset.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.BinaryPreset.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.BinaryPreset} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.BinaryPreset.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getName();
+ if (f.length > 0) {
+ writer.writeString(
+ 2,
+ f
+ );
+ }
+ f = message.getHash();
+ if (f !== 0) {
+ writer.writeUint32(
+ 3,
+ f
+ );
+ }
+ f = message.getDate();
+ if (f.length > 0) {
+ writer.writeString(
+ 4,
+ f
+ );
+ }
+ f = message.getVolume();
+ if (f !== 0.0) {
+ writer.writeFloat(
+ 5,
+ f
+ );
+ }
+ f = message.getPan();
+ if (f !== 0.0) {
+ writer.writeFloat(
+ 6,
+ f
+ );
+ }
+ f = message.getDefaultScene();
+ if (f !== 0) {
+ writer.writeUint32(
+ 7,
+ f
+ );
+ }
+ f = message.getAuthorName();
+ if (f.length > 0) {
+ writer.writeString(
+ 8,
+ f
+ );
+ }
+ f = message.getAuthorId();
+ if (f.length > 0) {
+ writer.writeString(
+ 9,
+ f
+ );
+ }
+ f = message.getTempo();
+ if (f !== 0) {
+ writer.writeUint32(
+ 10,
+ f
+ );
+ }
+ f = message.getChainsList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 11,
+ f,
+ proto.Chain.serializeBinaryToWriter
+ );
+ }
+ f = message.getTagsList();
+ if (f.length > 0) {
+ writer.writeRepeatedString(
+ 12,
+ f
+ );
+ }
+ f = message.getLegacyStompModeStompDataList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 13,
+ f,
+ proto.LegacyStompModeStompData.serializeBinaryToWriter
+ );
+ }
+ f = message.getSceneTempoList();
+ if (f.length > 0) {
+ writer.writePackedUint32(
+ 14,
+ f
+ );
+ }
+ f = message.getSceneLabelsList();
+ if (f.length > 0) {
+ writer.writeRepeatedString(
+ 15,
+ f
+ );
+ }
+ f = message.getMidiMessagesList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 16,
+ f,
+ proto.MidiMessageInfo.serializeBinaryToWriter
+ );
+ }
+ f = message.getMidiMessagesGeneralList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 17,
+ f,
+ proto.MidiMessageInfo.serializeBinaryToWriter
+ );
+ }
+ f = message.getBypassList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 18,
+ f,
+ proto.Bypass.serializeBinaryToWriter
+ );
+ }
+ f = message.getTempoprogramdataList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 19,
+ f,
+ proto.Model.serializeBinaryToWriter
+ );
+ }
+ f = message.getLayoutCode1List();
+ if (f.length > 0) {
+ writer.writePackedUint32(
+ 20,
+ f
+ );
+ }
+ f = message.getLayoutCode2List();
+ if (f.length > 0) {
+ writer.writePackedUint32(
+ 21,
+ f
+ );
+ }
+ f = message.getCreatedVersionList();
+ if (f.length > 0) {
+ writer.writeRepeatedString(
+ 22,
+ f
+ );
+ }
+ f = message.getModifiedVersionList();
+ if (f.length > 0) {
+ writer.writeRepeatedString(
+ 23,
+ f
+ );
+ }
+ f = message.getOldestCompatibleVersionList();
+ if (f.length > 0) {
+ writer.writeRepeatedString(
+ 24,
+ f
+ );
+ }
+ f = message.getCloudIdList();
+ if (f.length > 0) {
+ writer.writeRepeatedString(
+ 25,
+ f
+ );
+ }
+ f = message.getDescriptionList();
+ if (f.length > 0) {
+ writer.writeRepeatedString(
+ 26,
+ f
+ );
+ }
+ f = message.getStompModeAssignmentsList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 27,
+ f,
+ proto.StompModeAssignment.serializeBinaryToWriter
+ );
+ }
+};
+
+
+/**
+ * optional string name = 2;
+ * @return {string}
+ */
+proto.BinaryPreset.prototype.getName = function() {
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
+};
+
+
+/**
+ * @param {string} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setName = function(value) {
+ return jspb.Message.setProto3StringField(this, 2, value);
+};
+
+
+/**
+ * optional uint32 hash = 3;
+ * @return {number}
+ */
+proto.BinaryPreset.prototype.getHash = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setHash = function(value) {
+ return jspb.Message.setProto3IntField(this, 3, value);
+};
+
+
+/**
+ * optional string date = 4;
+ * @return {string}
+ */
+proto.BinaryPreset.prototype.getDate = function() {
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
+};
+
+
+/**
+ * @param {string} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setDate = function(value) {
+ return jspb.Message.setProto3StringField(this, 4, value);
+};
+
+
+/**
+ * optional float volume = 5;
+ * @return {number}
+ */
+proto.BinaryPreset.prototype.getVolume = function() {
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 5, 0.0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setVolume = function(value) {
+ return jspb.Message.setProto3FloatField(this, 5, value);
+};
+
+
+/**
+ * optional float pan = 6;
+ * @return {number}
+ */
+proto.BinaryPreset.prototype.getPan = function() {
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 6, 0.0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setPan = function(value) {
+ return jspb.Message.setProto3FloatField(this, 6, value);
+};
+
+
+/**
+ * optional uint32 default_scene = 7;
+ * @return {number}
+ */
+proto.BinaryPreset.prototype.getDefaultScene = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setDefaultScene = function(value) {
+ return jspb.Message.setProto3IntField(this, 7, value);
+};
+
+
+/**
+ * optional string author_name = 8;
+ * @return {string}
+ */
+proto.BinaryPreset.prototype.getAuthorName = function() {
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, ""));
+};
+
+
+/**
+ * @param {string} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setAuthorName = function(value) {
+ return jspb.Message.setProto3StringField(this, 8, value);
+};
+
+
+/**
+ * optional string author_id = 9;
+ * @return {string}
+ */
+proto.BinaryPreset.prototype.getAuthorId = function() {
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, ""));
+};
+
+
+/**
+ * @param {string} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setAuthorId = function(value) {
+ return jspb.Message.setProto3StringField(this, 9, value);
+};
+
+
+/**
+ * optional uint32 tempo = 10;
+ * @return {number}
+ */
+proto.BinaryPreset.prototype.getTempo = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setTempo = function(value) {
+ return jspb.Message.setProto3IntField(this, 10, value);
+};
+
+
+/**
+ * repeated Chain chains = 11;
+ * @return {!Array<!proto.Chain>}
+ */
+proto.BinaryPreset.prototype.getChainsList = function() {
+ return /** @type{!Array<!proto.Chain>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Chain, 11));
+};
+
+
+/**
+ * @param {!Array<!proto.Chain>} value
+ * @return {!proto.BinaryPreset} returns this
+*/
+proto.BinaryPreset.prototype.setChainsList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 11, value);
+};
+
+
+/**
+ * @param {!proto.Chain=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Chain}
+ */
+proto.BinaryPreset.prototype.addChains = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 11, opt_value, proto.Chain, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearChainsList = function() {
+ return this.setChainsList([]);
+};
+
+
+/**
+ * repeated string tags = 12;
+ * @return {!Array<string>}
+ */
+proto.BinaryPreset.prototype.getTagsList = function() {
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 12));
+};
+
+
+/**
+ * @param {!Array<string>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setTagsList = function(value) {
+ return jspb.Message.setField(this, 12, value || []);
+};
+
+
+/**
+ * @param {string} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addTags = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 12, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearTagsList = function() {
+ return this.setTagsList([]);
+};
+
+
+/**
+ * repeated LegacyStompModeStompData legacy_stomp_mode_stomp_data = 13;
+ * @return {!Array<!proto.LegacyStompModeStompData>}
+ */
+proto.BinaryPreset.prototype.getLegacyStompModeStompDataList = function() {
+ return /** @type{!Array<!proto.LegacyStompModeStompData>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.LegacyStompModeStompData, 13));
+};
+
+
+/**
+ * @param {!Array<!proto.LegacyStompModeStompData>} value
+ * @return {!proto.BinaryPreset} returns this
+*/
+proto.BinaryPreset.prototype.setLegacyStompModeStompDataList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 13, value);
+};
+
+
+/**
+ * @param {!proto.LegacyStompModeStompData=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.LegacyStompModeStompData}
+ */
+proto.BinaryPreset.prototype.addLegacyStompModeStompData = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 13, opt_value, proto.LegacyStompModeStompData, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearLegacyStompModeStompDataList = function() {
+ return this.setLegacyStompModeStompDataList([]);
+};
+
+
+/**
+ * repeated uint32 scene_tempo = 14;
+ * @return {!Array<number>}
+ */
+proto.BinaryPreset.prototype.getSceneTempoList = function() {
+ return /** @type {!Array<number>} */ (jspb.Message.getRepeatedField(this, 14));
+};
+
+
+/**
+ * @param {!Array<number>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setSceneTempoList = function(value) {
+ return jspb.Message.setField(this, 14, value || []);
+};
+
+
+/**
+ * @param {number} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addSceneTempo = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 14, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearSceneTempoList = function() {
+ return this.setSceneTempoList([]);
+};
+
+
+/**
+ * repeated string scene_labels = 15;
+ * @return {!Array<string>}
+ */
+proto.BinaryPreset.prototype.getSceneLabelsList = function() {
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 15));
+};
+
+
+/**
+ * @param {!Array<string>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setSceneLabelsList = function(value) {
+ return jspb.Message.setField(this, 15, value || []);
+};
+
+
+/**
+ * @param {string} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addSceneLabels = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 15, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearSceneLabelsList = function() {
+ return this.setSceneLabelsList([]);
+};
+
+
+/**
+ * repeated MidiMessageInfo midi_messages = 16;
+ * @return {!Array<!proto.MidiMessageInfo>}
+ */
+proto.BinaryPreset.prototype.getMidiMessagesList = function() {
+ return /** @type{!Array<!proto.MidiMessageInfo>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.MidiMessageInfo, 16));
+};
+
+
+/**
+ * @param {!Array<!proto.MidiMessageInfo>} value
+ * @return {!proto.BinaryPreset} returns this
+*/
+proto.BinaryPreset.prototype.setMidiMessagesList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 16, value);
+};
+
+
+/**
+ * @param {!proto.MidiMessageInfo=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.MidiMessageInfo}
+ */
+proto.BinaryPreset.prototype.addMidiMessages = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 16, opt_value, proto.MidiMessageInfo, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearMidiMessagesList = function() {
+ return this.setMidiMessagesList([]);
+};
+
+
+/**
+ * repeated MidiMessageInfo midi_messages_general = 17;
+ * @return {!Array<!proto.MidiMessageInfo>}
+ */
+proto.BinaryPreset.prototype.getMidiMessagesGeneralList = function() {
+ return /** @type{!Array<!proto.MidiMessageInfo>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.MidiMessageInfo, 17));
+};
+
+
+/**
+ * @param {!Array<!proto.MidiMessageInfo>} value
+ * @return {!proto.BinaryPreset} returns this
+*/
+proto.BinaryPreset.prototype.setMidiMessagesGeneralList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 17, value);
+};
+
+
+/**
+ * @param {!proto.MidiMessageInfo=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.MidiMessageInfo}
+ */
+proto.BinaryPreset.prototype.addMidiMessagesGeneral = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 17, opt_value, proto.MidiMessageInfo, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearMidiMessagesGeneralList = function() {
+ return this.setMidiMessagesGeneralList([]);
+};
+
+
+/**
+ * repeated Bypass bypass = 18;
+ * @return {!Array<!proto.Bypass>}
+ */
+proto.BinaryPreset.prototype.getBypassList = function() {
+ return /** @type{!Array<!proto.Bypass>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Bypass, 18));
+};
+
+
+/**
+ * @param {!Array<!proto.Bypass>} value
+ * @return {!proto.BinaryPreset} returns this
+*/
+proto.BinaryPreset.prototype.setBypassList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 18, value);
+};
+
+
+/**
+ * @param {!proto.Bypass=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Bypass}
+ */
+proto.BinaryPreset.prototype.addBypass = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 18, opt_value, proto.Bypass, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearBypassList = function() {
+ return this.setBypassList([]);
+};
+
+
+/**
+ * repeated Model tempoProgramData = 19;
+ * @return {!Array<!proto.Model>}
+ */
+proto.BinaryPreset.prototype.getTempoprogramdataList = function() {
+ return /** @type{!Array<!proto.Model>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Model, 19));
+};
+
+
+/**
+ * @param {!Array<!proto.Model>} value
+ * @return {!proto.BinaryPreset} returns this
+*/
+proto.BinaryPreset.prototype.setTempoprogramdataList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 19, value);
+};
+
+
+/**
+ * @param {!proto.Model=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Model}
+ */
+proto.BinaryPreset.prototype.addTempoprogramdata = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 19, opt_value, proto.Model, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearTempoprogramdataList = function() {
+ return this.setTempoprogramdataList([]);
+};
+
+
+/**
+ * repeated uint32 layout_code_1 = 20;
+ * @return {!Array<number>}
+ */
+proto.BinaryPreset.prototype.getLayoutCode1List = function() {
+ return /** @type {!Array<number>} */ (jspb.Message.getRepeatedField(this, 20));
+};
+
+
+/**
+ * @param {!Array<number>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setLayoutCode1List = function(value) {
+ return jspb.Message.setField(this, 20, value || []);
+};
+
+
+/**
+ * @param {number} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addLayoutCode1 = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 20, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearLayoutCode1List = function() {
+ return this.setLayoutCode1List([]);
+};
+
+
+/**
+ * repeated uint32 layout_code_2 = 21;
+ * @return {!Array<number>}
+ */
+proto.BinaryPreset.prototype.getLayoutCode2List = function() {
+ return /** @type {!Array<number>} */ (jspb.Message.getRepeatedField(this, 21));
+};
+
+
+/**
+ * @param {!Array<number>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setLayoutCode2List = function(value) {
+ return jspb.Message.setField(this, 21, value || []);
+};
+
+
+/**
+ * @param {number} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addLayoutCode2 = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 21, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearLayoutCode2List = function() {
+ return this.setLayoutCode2List([]);
+};
+
+
+/**
+ * repeated string created_version = 22;
+ * @return {!Array<string>}
+ */
+proto.BinaryPreset.prototype.getCreatedVersionList = function() {
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 22));
+};
+
+
+/**
+ * @param {!Array<string>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setCreatedVersionList = function(value) {
+ return jspb.Message.setField(this, 22, value || []);
+};
+
+
+/**
+ * @param {string} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addCreatedVersion = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 22, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearCreatedVersionList = function() {
+ return this.setCreatedVersionList([]);
+};
+
+
+/**
+ * repeated string modified_version = 23;
+ * @return {!Array<string>}
+ */
+proto.BinaryPreset.prototype.getModifiedVersionList = function() {
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 23));
+};
+
+
+/**
+ * @param {!Array<string>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setModifiedVersionList = function(value) {
+ return jspb.Message.setField(this, 23, value || []);
+};
+
+
+/**
+ * @param {string} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addModifiedVersion = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 23, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearModifiedVersionList = function() {
+ return this.setModifiedVersionList([]);
+};
+
+
+/**
+ * repeated string oldest_compatible_version = 24;
+ * @return {!Array<string>}
+ */
+proto.BinaryPreset.prototype.getOldestCompatibleVersionList = function() {
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 24));
+};
+
+
+/**
+ * @param {!Array<string>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setOldestCompatibleVersionList = function(value) {
+ return jspb.Message.setField(this, 24, value || []);
+};
+
+
+/**
+ * @param {string} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addOldestCompatibleVersion = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 24, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearOldestCompatibleVersionList = function() {
+ return this.setOldestCompatibleVersionList([]);
+};
+
+
+/**
+ * repeated string cloud_id = 25;
+ * @return {!Array<string>}
+ */
+proto.BinaryPreset.prototype.getCloudIdList = function() {
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 25));
+};
+
+
+/**
+ * @param {!Array<string>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setCloudIdList = function(value) {
+ return jspb.Message.setField(this, 25, value || []);
+};
+
+
+/**
+ * @param {string} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addCloudId = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 25, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearCloudIdList = function() {
+ return this.setCloudIdList([]);
+};
+
+
+/**
+ * repeated string description = 26;
+ * @return {!Array<string>}
+ */
+proto.BinaryPreset.prototype.getDescriptionList = function() {
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 26));
+};
+
+
+/**
+ * @param {!Array<string>} value
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.setDescriptionList = function(value) {
+ return jspb.Message.setField(this, 26, value || []);
+};
+
+
+/**
+ * @param {string} value
+ * @param {number=} opt_index
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.addDescription = function(value, opt_index) {
+ return jspb.Message.addToRepeatedField(this, 26, value, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearDescriptionList = function() {
+ return this.setDescriptionList([]);
+};
+
+
+/**
+ * repeated StompModeAssignment stomp_mode_assignments = 27;
+ * @return {!Array<!proto.StompModeAssignment>}
+ */
+proto.BinaryPreset.prototype.getStompModeAssignmentsList = function() {
+ return /** @type{!Array<!proto.StompModeAssignment>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.StompModeAssignment, 27));
+};
+
+
+/**
+ * @param {!Array<!proto.StompModeAssignment>} value
+ * @return {!proto.BinaryPreset} returns this
+*/
+proto.BinaryPreset.prototype.setStompModeAssignmentsList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 27, value);
+};
+
+
+/**
+ * @param {!proto.StompModeAssignment=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.StompModeAssignment}
+ */
+proto.BinaryPreset.prototype.addStompModeAssignments = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 27, opt_value, proto.StompModeAssignment, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.BinaryPreset} returns this
+ */
+proto.BinaryPreset.prototype.clearStompModeAssignmentsList = function() {
+ return this.setStompModeAssignmentsList([]);
+};
+
+
+
+/**
+ * List of repeated fields within this message type.
+ * @private {!Array<number>}
+ * @const
+ */
+proto.Chain.repeatedFields_ = [5,6,7,8,9,10,11,12,13];
+
+/**
+ * Oneof group definitions for this message. Each group defines the field
+ * numbers belonging to that group. When of these fields' value is set, all
+ * other fields in the group are cleared. During deserialization, if multiple
+ * fields are encountered for a group, only the last value seen will be kept.
+ * @private {!Array<!Array<number>>}
+ * @const
+ */
+proto.Chain.oneofGroups_ = [[1],[2],[14]];
+
+/**
+ * @enum {number}
+ */
+proto.Chain.InPortidCase = {
+ _IN_PORTID_NOT_SET: 0,
+ IN_PORTID: 1
+};
+
+/**
+ * @return {proto.Chain.InPortidCase}
+ */
+proto.Chain.prototype.getInPortidCase = function() {
+ return /** @type {proto.Chain.InPortidCase} */(jspb.Message.computeOneofCase(this, proto.Chain.oneofGroups_[0]));
+};
+
+/**
+ * @enum {number}
+ */
+proto.Chain.OutPortidCase = {
+ _OUT_PORTID_NOT_SET: 0,
+ OUT_PORTID: 2
+};
+
+/**
+ * @return {proto.Chain.OutPortidCase}
+ */
+proto.Chain.prototype.getOutPortidCase = function() {
+ return /** @type {proto.Chain.OutPortidCase} */(jspb.Message.computeOneofCase(this, proto.Chain.oneofGroups_[1]));
+};
+
+/**
+ * @enum {number}
+ */
+proto.Chain.RowCase = {
+ _ROW_NOT_SET: 0,
+ ROW: 14
+};
+
+/**
+ * @return {proto.Chain.RowCase}
+ */
+proto.Chain.prototype.getRowCase = function() {
+ return /** @type {proto.Chain.RowCase} */(jspb.Message.computeOneofCase(this, proto.Chain.oneofGroups_[2]));
+};
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.Chain.prototype.toObject = function(opt_includeInstance) {
+ return proto.Chain.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.Chain} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Chain.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ modelsList: jspb.Message.toObjectList(msg.getModelsList(),
+ proto.Model.toObject, includeInstance),
+ splitControlPointsList: jspb.Message.toObjectList(msg.getSplitControlPointsList(),
+ proto.SplitControlPoints.toObject, includeInstance),
+ splitterList: jspb.Message.toObjectList(msg.getSplitterList(),
+ proto.Model.toObject, includeInstance),
+ mixerList: jspb.Message.toObjectList(msg.getMixerList(),
+ proto.Model.toObject, includeInstance),
+ outputControlList: jspb.Message.toObjectList(msg.getOutputControlList(),
+ proto.Model.toObject, includeInstance),
+ splitbypassList: jspb.Message.toObjectList(msg.getSplitbypassList(),
+ proto.SceneBypass.toObject, includeInstance),
+ mixbypassList: jspb.Message.toObjectList(msg.getMixbypassList(),
+ proto.SceneBypass.toObject, includeInstance),
+ combinedSplitterList: jspb.Message.toObjectList(msg.getCombinedSplitterList(),
+ proto.Model.toObject, includeInstance),
+ inputControlList: jspb.Message.toObjectList(msg.getInputControlList(),
+ proto.Model.toObject, includeInstance),
+ inPortid: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ outPortid: jspb.Message.getFieldWithDefault(msg, 2, 0),
+ row: jspb.Message.getFieldWithDefault(msg, 14, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.Chain}
+ */
+proto.Chain.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.Chain;
+ return proto.Chain.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.Chain} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.Chain}
+ */
+proto.Chain.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 5:
+ var value = new proto.Model;
+ reader.readMessage(value,proto.Model.deserializeBinaryFromReader);
+ msg.addModels(value);
+ break;
+ case 6:
+ var value = new proto.SplitControlPoints;
+ reader.readMessage(value,proto.SplitControlPoints.deserializeBinaryFromReader);
+ msg.addSplitControlPoints(value);
+ break;
+ case 7:
+ var value = new proto.Model;
+ reader.readMessage(value,proto.Model.deserializeBinaryFromReader);
+ msg.addSplitter(value);
+ break;
+ case 8:
+ var value = new proto.Model;
+ reader.readMessage(value,proto.Model.deserializeBinaryFromReader);
+ msg.addMixer(value);
+ break;
+ case 9:
+ var value = new proto.Model;
+ reader.readMessage(value,proto.Model.deserializeBinaryFromReader);
+ msg.addOutputControl(value);
+ break;
+ case 10:
+ var value = new proto.SceneBypass;
+ reader.readMessage(value,proto.SceneBypass.deserializeBinaryFromReader);
+ msg.addSplitbypass(value);
+ break;
+ case 11:
+ var value = new proto.SceneBypass;
+ reader.readMessage(value,proto.SceneBypass.deserializeBinaryFromReader);
+ msg.addMixbypass(value);
+ break;
+ case 12:
+ var value = new proto.Model;
+ reader.readMessage(value,proto.Model.deserializeBinaryFromReader);
+ msg.addCombinedSplitter(value);
+ break;
+ case 13:
+ var value = new proto.Model;
+ reader.readMessage(value,proto.Model.deserializeBinaryFromReader);
+ msg.addInputControl(value);
+ break;
+ case 1:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setInPortid(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setOutPortid(value);
+ break;
+ case 14:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setRow(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.Chain.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.Chain.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.Chain} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Chain.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getModelsList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 5,
+ f,
+ proto.Model.serializeBinaryToWriter
+ );
+ }
+ f = message.getSplitControlPointsList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 6,
+ f,
+ proto.SplitControlPoints.serializeBinaryToWriter
+ );
+ }
+ f = message.getSplitterList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 7,
+ f,
+ proto.Model.serializeBinaryToWriter
+ );
+ }
+ f = message.getMixerList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 8,
+ f,
+ proto.Model.serializeBinaryToWriter
+ );
+ }
+ f = message.getOutputControlList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 9,
+ f,
+ proto.Model.serializeBinaryToWriter
+ );
+ }
+ f = message.getSplitbypassList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 10,
+ f,
+ proto.SceneBypass.serializeBinaryToWriter
+ );
+ }
+ f = message.getMixbypassList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 11,
+ f,
+ proto.SceneBypass.serializeBinaryToWriter
+ );
+ }
+ f = message.getCombinedSplitterList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 12,
+ f,
+ proto.Model.serializeBinaryToWriter
+ );
+ }
+ f = message.getInputControlList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 13,
+ f,
+ proto.Model.serializeBinaryToWriter
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 1));
+ if (f != null) {
+ writer.writeUint32(
+ 1,
+ f
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 2));
+ if (f != null) {
+ writer.writeUint32(
+ 2,
+ f
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 14));
+ if (f != null) {
+ writer.writeUint32(
+ 14,
+ f
+ );
+ }
+};
+
+
+/**
+ * repeated Model models = 5;
+ * @return {!Array<!proto.Model>}
+ */
+proto.Chain.prototype.getModelsList = function() {
+ return /** @type{!Array<!proto.Model>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Model, 5));
+};
+
+
+/**
+ * @param {!Array<!proto.Model>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setModelsList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 5, value);
+};
+
+
+/**
+ * @param {!proto.Model=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Model}
+ */
+proto.Chain.prototype.addModels = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.Model, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearModelsList = function() {
+ return this.setModelsList([]);
+};
+
+
+/**
+ * repeated SplitControlPoints split_control_points = 6;
+ * @return {!Array<!proto.SplitControlPoints>}
+ */
+proto.Chain.prototype.getSplitControlPointsList = function() {
+ return /** @type{!Array<!proto.SplitControlPoints>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.SplitControlPoints, 6));
+};
+
+
+/**
+ * @param {!Array<!proto.SplitControlPoints>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setSplitControlPointsList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 6, value);
+};
+
+
+/**
+ * @param {!proto.SplitControlPoints=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.SplitControlPoints}
+ */
+proto.Chain.prototype.addSplitControlPoints = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 6, opt_value, proto.SplitControlPoints, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearSplitControlPointsList = function() {
+ return this.setSplitControlPointsList([]);
+};
+
+
+/**
+ * repeated Model splitter = 7;
+ * @return {!Array<!proto.Model>}
+ */
+proto.Chain.prototype.getSplitterList = function() {
+ return /** @type{!Array<!proto.Model>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Model, 7));
+};
+
+
+/**
+ * @param {!Array<!proto.Model>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setSplitterList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 7, value);
+};
+
+
+/**
+ * @param {!proto.Model=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Model}
+ */
+proto.Chain.prototype.addSplitter = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 7, opt_value, proto.Model, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearSplitterList = function() {
+ return this.setSplitterList([]);
+};
+
+
+/**
+ * repeated Model mixer = 8;
+ * @return {!Array<!proto.Model>}
+ */
+proto.Chain.prototype.getMixerList = function() {
+ return /** @type{!Array<!proto.Model>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Model, 8));
+};
+
+
+/**
+ * @param {!Array<!proto.Model>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setMixerList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 8, value);
+};
+
+
+/**
+ * @param {!proto.Model=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Model}
+ */
+proto.Chain.prototype.addMixer = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 8, opt_value, proto.Model, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearMixerList = function() {
+ return this.setMixerList([]);
+};
+
+
+/**
+ * repeated Model output_control = 9;
+ * @return {!Array<!proto.Model>}
+ */
+proto.Chain.prototype.getOutputControlList = function() {
+ return /** @type{!Array<!proto.Model>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Model, 9));
+};
+
+
+/**
+ * @param {!Array<!proto.Model>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setOutputControlList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 9, value);
+};
+
+
+/**
+ * @param {!proto.Model=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Model}
+ */
+proto.Chain.prototype.addOutputControl = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 9, opt_value, proto.Model, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearOutputControlList = function() {
+ return this.setOutputControlList([]);
+};
+
+
+/**
+ * repeated SceneBypass splitBypass = 10;
+ * @return {!Array<!proto.SceneBypass>}
+ */
+proto.Chain.prototype.getSplitbypassList = function() {
+ return /** @type{!Array<!proto.SceneBypass>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.SceneBypass, 10));
+};
+
+
+/**
+ * @param {!Array<!proto.SceneBypass>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setSplitbypassList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 10, value);
+};
+
+
+/**
+ * @param {!proto.SceneBypass=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.SceneBypass}
+ */
+proto.Chain.prototype.addSplitbypass = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 10, opt_value, proto.SceneBypass, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearSplitbypassList = function() {
+ return this.setSplitbypassList([]);
+};
+
+
+/**
+ * repeated SceneBypass mixBypass = 11;
+ * @return {!Array<!proto.SceneBypass>}
+ */
+proto.Chain.prototype.getMixbypassList = function() {
+ return /** @type{!Array<!proto.SceneBypass>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.SceneBypass, 11));
+};
+
+
+/**
+ * @param {!Array<!proto.SceneBypass>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setMixbypassList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 11, value);
+};
+
+
+/**
+ * @param {!proto.SceneBypass=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.SceneBypass}
+ */
+proto.Chain.prototype.addMixbypass = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 11, opt_value, proto.SceneBypass, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearMixbypassList = function() {
+ return this.setMixbypassList([]);
+};
+
+
+/**
+ * repeated Model combined_splitter = 12;
+ * @return {!Array<!proto.Model>}
+ */
+proto.Chain.prototype.getCombinedSplitterList = function() {
+ return /** @type{!Array<!proto.Model>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Model, 12));
+};
+
+
+/**
+ * @param {!Array<!proto.Model>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setCombinedSplitterList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 12, value);
+};
+
+
+/**
+ * @param {!proto.Model=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Model}
+ */
+proto.Chain.prototype.addCombinedSplitter = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 12, opt_value, proto.Model, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearCombinedSplitterList = function() {
+ return this.setCombinedSplitterList([]);
+};
+
+
+/**
+ * repeated Model input_control = 13;
+ * @return {!Array<!proto.Model>}
+ */
+proto.Chain.prototype.getInputControlList = function() {
+ return /** @type{!Array<!proto.Model>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Model, 13));
+};
+
+
+/**
+ * @param {!Array<!proto.Model>} value
+ * @return {!proto.Chain} returns this
+*/
+proto.Chain.prototype.setInputControlList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 13, value);
+};
+
+
+/**
+ * @param {!proto.Model=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Model}
+ */
+proto.Chain.prototype.addInputControl = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 13, opt_value, proto.Model, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearInputControlList = function() {
+ return this.setInputControlList([]);
+};
+
+
+/**
+ * optional uint32 in_portid = 1;
+ * @return {number}
+ */
+proto.Chain.prototype.getInPortid = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.setInPortid = function(value) {
+ return jspb.Message.setOneofField(this, 1, proto.Chain.oneofGroups_[0], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearInPortid = function() {
+ return jspb.Message.setOneofField(this, 1, proto.Chain.oneofGroups_[0], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Chain.prototype.hasInPortid = function() {
+ return jspb.Message.getField(this, 1) != null;
+};
+
+
+/**
+ * optional uint32 out_portid = 2;
+ * @return {number}
+ */
+proto.Chain.prototype.getOutPortid = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.setOutPortid = function(value) {
+ return jspb.Message.setOneofField(this, 2, proto.Chain.oneofGroups_[1], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearOutPortid = function() {
+ return jspb.Message.setOneofField(this, 2, proto.Chain.oneofGroups_[1], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Chain.prototype.hasOutPortid = function() {
+ return jspb.Message.getField(this, 2) != null;
+};
+
+
+/**
+ * optional uint32 row = 14;
+ * @return {number}
+ */
+proto.Chain.prototype.getRow = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 14, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.setRow = function(value) {
+ return jspb.Message.setOneofField(this, 14, proto.Chain.oneofGroups_[2], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Chain} returns this
+ */
+proto.Chain.prototype.clearRow = function() {
+ return jspb.Message.setOneofField(this, 14, proto.Chain.oneofGroups_[2], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Chain.prototype.hasRow = function() {
+ return jspb.Message.getField(this, 14) != null;
+};
+
+
+
+/**
+ * List of repeated fields within this message type.
+ * @private {!Array<number>}
+ * @const
+ */
+proto.Model.repeatedFields_ = [2,3,4];
+
+/**
+ * Oneof group definitions for this message. Each group defines the field
+ * numbers belonging to that group. When of these fields' value is set, all
+ * other fields in the group are cleared. During deserialization, if multiple
+ * fields are encountered for a group, only the last value seen will be kept.
+ * @private {!Array<!Array<number>>}
+ * @const
+ */
+proto.Model.oneofGroups_ = [[1],[5]];
+
+/**
+ * @enum {number}
+ */
+proto.Model.HashCase = {
+ _HASH_NOT_SET: 0,
+ HASH: 1
+};
+
+/**
+ * @return {proto.Model.HashCase}
+ */
+proto.Model.prototype.getHashCase = function() {
+ return /** @type {proto.Model.HashCase} */(jspb.Message.computeOneofCase(this, proto.Model.oneofGroups_[0]));
+};
+
+/**
+ * @enum {number}
+ */
+proto.Model.ColumnCase = {
+ _COLUMN_NOT_SET: 0,
+ COLUMN: 5
+};
+
+/**
+ * @return {proto.Model.ColumnCase}
+ */
+proto.Model.prototype.getColumnCase = function() {
+ return /** @type {proto.Model.ColumnCase} */(jspb.Message.computeOneofCase(this, proto.Model.oneofGroups_[1]));
+};
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.Model.prototype.toObject = function(opt_includeInstance) {
+ return proto.Model.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.Model} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Model.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ paramsList: jspb.Message.toObjectList(msg.getParamsList(),
+ proto.Param.toObject, includeInstance),
+ bypassExpressionList: jspb.Message.toObjectList(msg.getBypassExpressionList(),
+ proto.Expression.toObject, includeInstance),
+ expressionBypassInfoList: jspb.Message.toObjectList(msg.getExpressionBypassInfoList(),
+ proto.ExpressionBypassInfo.toObject, includeInstance),
+ hash: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ column: jspb.Message.getFieldWithDefault(msg, 5, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.Model}
+ */
+proto.Model.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.Model;
+ return proto.Model.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.Model} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.Model}
+ */
+proto.Model.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 2:
+ var value = new proto.Param;
+ reader.readMessage(value,proto.Param.deserializeBinaryFromReader);
+ msg.addParams(value);
+ break;
+ case 3:
+ var value = new proto.Expression;
+ reader.readMessage(value,proto.Expression.deserializeBinaryFromReader);
+ msg.addBypassExpression(value);
+ break;
+ case 4:
+ var value = new proto.ExpressionBypassInfo;
+ reader.readMessage(value,proto.ExpressionBypassInfo.deserializeBinaryFromReader);
+ msg.addExpressionBypassInfo(value);
+ break;
+ case 1:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setHash(value);
+ break;
+ case 5:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setColumn(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.Model.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.Model.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.Model} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Model.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getParamsList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 2,
+ f,
+ proto.Param.serializeBinaryToWriter
+ );
+ }
+ f = message.getBypassExpressionList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 3,
+ f,
+ proto.Expression.serializeBinaryToWriter
+ );
+ }
+ f = message.getExpressionBypassInfoList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 4,
+ f,
+ proto.ExpressionBypassInfo.serializeBinaryToWriter
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 1));
+ if (f != null) {
+ writer.writeUint32(
+ 1,
+ f
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 5));
+ if (f != null) {
+ writer.writeUint32(
+ 5,
+ f
+ );
+ }
+};
+
+
+/**
+ * repeated Param params = 2;
+ * @return {!Array<!proto.Param>}
+ */
+proto.Model.prototype.getParamsList = function() {
+ return /** @type{!Array<!proto.Param>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Param, 2));
+};
+
+
+/**
+ * @param {!Array<!proto.Param>} value
+ * @return {!proto.Model} returns this
+*/
+proto.Model.prototype.setParamsList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 2, value);
+};
+
+
+/**
+ * @param {!proto.Param=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Param}
+ */
+proto.Model.prototype.addParams = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.Param, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Model} returns this
+ */
+proto.Model.prototype.clearParamsList = function() {
+ return this.setParamsList([]);
+};
+
+
+/**
+ * repeated Expression bypass_expression = 3;
+ * @return {!Array<!proto.Expression>}
+ */
+proto.Model.prototype.getBypassExpressionList = function() {
+ return /** @type{!Array<!proto.Expression>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.Expression, 3));
+};
+
+
+/**
+ * @param {!Array<!proto.Expression>} value
+ * @return {!proto.Model} returns this
+*/
+proto.Model.prototype.setBypassExpressionList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 3, value);
+};
+
+
+/**
+ * @param {!proto.Expression=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.Expression}
+ */
+proto.Model.prototype.addBypassExpression = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 3, opt_value, proto.Expression, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Model} returns this
+ */
+proto.Model.prototype.clearBypassExpressionList = function() {
+ return this.setBypassExpressionList([]);
+};
+
+
+/**
+ * repeated ExpressionBypassInfo expression_bypass_info = 4;
+ * @return {!Array<!proto.ExpressionBypassInfo>}
+ */
+proto.Model.prototype.getExpressionBypassInfoList = function() {
+ return /** @type{!Array<!proto.ExpressionBypassInfo>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.ExpressionBypassInfo, 4));
+};
+
+
+/**
+ * @param {!Array<!proto.ExpressionBypassInfo>} value
+ * @return {!proto.Model} returns this
+*/
+proto.Model.prototype.setExpressionBypassInfoList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 4, value);
+};
+
+
+/**
+ * @param {!proto.ExpressionBypassInfo=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.ExpressionBypassInfo}
+ */
+proto.Model.prototype.addExpressionBypassInfo = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 4, opt_value, proto.ExpressionBypassInfo, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Model} returns this
+ */
+proto.Model.prototype.clearExpressionBypassInfoList = function() {
+ return this.setExpressionBypassInfoList([]);
+};
+
+
+/**
+ * optional uint32 hash = 1;
+ * @return {number}
+ */
+proto.Model.prototype.getHash = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Model} returns this
+ */
+proto.Model.prototype.setHash = function(value) {
+ return jspb.Message.setOneofField(this, 1, proto.Model.oneofGroups_[0], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Model} returns this
+ */
+proto.Model.prototype.clearHash = function() {
+ return jspb.Message.setOneofField(this, 1, proto.Model.oneofGroups_[0], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Model.prototype.hasHash = function() {
+ return jspb.Message.getField(this, 1) != null;
+};
+
+
+/**
+ * optional uint32 column = 5;
+ * @return {number}
+ */
+proto.Model.prototype.getColumn = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Model} returns this
+ */
+proto.Model.prototype.setColumn = function(value) {
+ return jspb.Message.setOneofField(this, 5, proto.Model.oneofGroups_[1], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Model} returns this
+ */
+proto.Model.prototype.clearColumn = function() {
+ return jspb.Message.setOneofField(this, 5, proto.Model.oneofGroups_[1], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Model.prototype.hasColumn = function() {
+ return jspb.Message.getField(this, 5) != null;
+};
+
+
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.SplitControlPoints.prototype.toObject = function(opt_includeInstance) {
+ return proto.SplitControlPoints.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.SplitControlPoints} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.SplitControlPoints.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ split: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ mix: jspb.Message.getFieldWithDefault(msg, 2, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.SplitControlPoints}
+ */
+proto.SplitControlPoints.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.SplitControlPoints;
+ return proto.SplitControlPoints.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.SplitControlPoints} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.SplitControlPoints}
+ */
+proto.SplitControlPoints.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readInt32());
+ msg.setSplit(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readInt32());
+ msg.setMix(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.SplitControlPoints.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.SplitControlPoints.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.SplitControlPoints} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.SplitControlPoints.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getSplit();
+ if (f !== 0) {
+ writer.writeInt32(
+ 1,
+ f
+ );
+ }
+ f = message.getMix();
+ if (f !== 0) {
+ writer.writeInt32(
+ 2,
+ f
+ );
+ }
+};
+
+
+/**
+ * optional int32 split = 1;
+ * @return {number}
+ */
+proto.SplitControlPoints.prototype.getSplit = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.SplitControlPoints} returns this
+ */
+proto.SplitControlPoints.prototype.setSplit = function(value) {
+ return jspb.Message.setProto3IntField(this, 1, value);
+};
+
+
+/**
+ * optional int32 mix = 2;
+ * @return {number}
+ */
+proto.SplitControlPoints.prototype.getMix = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.SplitControlPoints} returns this
+ */
+proto.SplitControlPoints.prototype.setMix = function(value) {
+ return jspb.Message.setProto3IntField(this, 2, value);
+};
+
+
+
+/**
+ * List of repeated fields within this message type.
+ * @private {!Array<number>}
+ * @const
+ */
+proto.Bypass.repeatedFields_ = [1];
+
+/**
+ * Oneof group definitions for this message. Each group defines the field
+ * numbers belonging to that group. When of these fields' value is set, all
+ * other fields in the group are cleared. During deserialization, if multiple
+ * fields are encountered for a group, only the last value seen will be kept.
+ * @private {!Array<!Array<number>>}
+ * @const
+ */
+proto.Bypass.oneofGroups_ = [[2]];
+
+/**
+ * @enum {number}
+ */
+proto.Bypass.RowCase = {
+ _ROW_NOT_SET: 0,
+ ROW: 2
+};
+
+/**
+ * @return {proto.Bypass.RowCase}
+ */
+proto.Bypass.prototype.getRowCase = function() {
+ return /** @type {proto.Bypass.RowCase} */(jspb.Message.computeOneofCase(this, proto.Bypass.oneofGroups_[0]));
+};
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.Bypass.prototype.toObject = function(opt_includeInstance) {
+ return proto.Bypass.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.Bypass} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Bypass.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ colbypassList: jspb.Message.toObjectList(msg.getColbypassList(),
+ proto.ColBypass.toObject, includeInstance),
+ row: jspb.Message.getFieldWithDefault(msg, 2, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.Bypass}
+ */
+proto.Bypass.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.Bypass;
+ return proto.Bypass.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.Bypass} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.Bypass}
+ */
+proto.Bypass.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = new proto.ColBypass;
+ reader.readMessage(value,proto.ColBypass.deserializeBinaryFromReader);
+ msg.addColbypass(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setRow(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.Bypass.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.Bypass.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.Bypass} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Bypass.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getColbypassList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 1,
+ f,
+ proto.ColBypass.serializeBinaryToWriter
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 2));
+ if (f != null) {
+ writer.writeUint32(
+ 2,
+ f
+ );
+ }
+};
+
+
+/**
+ * repeated ColBypass colBypass = 1;
+ * @return {!Array<!proto.ColBypass>}
+ */
+proto.Bypass.prototype.getColbypassList = function() {
+ return /** @type{!Array<!proto.ColBypass>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.ColBypass, 1));
+};
+
+
+/**
+ * @param {!Array<!proto.ColBypass>} value
+ * @return {!proto.Bypass} returns this
+*/
+proto.Bypass.prototype.setColbypassList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 1, value);
+};
+
+
+/**
+ * @param {!proto.ColBypass=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.ColBypass}
+ */
+proto.Bypass.prototype.addColbypass = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.ColBypass, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Bypass} returns this
+ */
+proto.Bypass.prototype.clearColbypassList = function() {
+ return this.setColbypassList([]);
+};
+
+
+/**
+ * optional uint32 row = 2;
+ * @return {number}
+ */
+proto.Bypass.prototype.getRow = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Bypass} returns this
+ */
+proto.Bypass.prototype.setRow = function(value) {
+ return jspb.Message.setOneofField(this, 2, proto.Bypass.oneofGroups_[0], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Bypass} returns this
+ */
+proto.Bypass.prototype.clearRow = function() {
+ return jspb.Message.setOneofField(this, 2, proto.Bypass.oneofGroups_[0], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Bypass.prototype.hasRow = function() {
+ return jspb.Message.getField(this, 2) != null;
+};
+
+
+
+/**
+ * List of repeated fields within this message type.
+ * @private {!Array<number>}
+ * @const
+ */
+proto.ColBypass.repeatedFields_ = [1];
+
+/**
+ * Oneof group definitions for this message. Each group defines the field
+ * numbers belonging to that group. When of these fields' value is set, all
+ * other fields in the group are cleared. During deserialization, if multiple
+ * fields are encountered for a group, only the last value seen will be kept.
+ * @private {!Array<!Array<number>>}
+ * @const
+ */
+proto.ColBypass.oneofGroups_ = [[2]];
+
+/**
+ * @enum {number}
+ */
+proto.ColBypass.ColumnCase = {
+ _COLUMN_NOT_SET: 0,
+ COLUMN: 2
+};
+
+/**
+ * @return {proto.ColBypass.ColumnCase}
+ */
+proto.ColBypass.prototype.getColumnCase = function() {
+ return /** @type {proto.ColBypass.ColumnCase} */(jspb.Message.computeOneofCase(this, proto.ColBypass.oneofGroups_[0]));
+};
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.ColBypass.prototype.toObject = function(opt_includeInstance) {
+ return proto.ColBypass.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.ColBypass} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.ColBypass.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ scenebypassList: jspb.Message.toObjectList(msg.getScenebypassList(),
+ proto.SceneBypass.toObject, includeInstance),
+ column: jspb.Message.getFieldWithDefault(msg, 2, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.ColBypass}
+ */
+proto.ColBypass.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.ColBypass;
+ return proto.ColBypass.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.ColBypass} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.ColBypass}
+ */
+proto.ColBypass.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = new proto.SceneBypass;
+ reader.readMessage(value,proto.SceneBypass.deserializeBinaryFromReader);
+ msg.addScenebypass(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setColumn(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.ColBypass.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.ColBypass.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.ColBypass} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.ColBypass.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getScenebypassList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 1,
+ f,
+ proto.SceneBypass.serializeBinaryToWriter
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 2));
+ if (f != null) {
+ writer.writeUint32(
+ 2,
+ f
+ );
+ }
+};
+
+
+/**
+ * repeated SceneBypass sceneBypass = 1;
+ * @return {!Array<!proto.SceneBypass>}
+ */
+proto.ColBypass.prototype.getScenebypassList = function() {
+ return /** @type{!Array<!proto.SceneBypass>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.SceneBypass, 1));
+};
+
+
+/**
+ * @param {!Array<!proto.SceneBypass>} value
+ * @return {!proto.ColBypass} returns this
+*/
+proto.ColBypass.prototype.setScenebypassList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 1, value);
+};
+
+
+/**
+ * @param {!proto.SceneBypass=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.SceneBypass}
+ */
+proto.ColBypass.prototype.addScenebypass = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.SceneBypass, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.ColBypass} returns this
+ */
+proto.ColBypass.prototype.clearScenebypassList = function() {
+ return this.setScenebypassList([]);
+};
+
+
+/**
+ * optional uint32 column = 2;
+ * @return {number}
+ */
+proto.ColBypass.prototype.getColumn = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.ColBypass} returns this
+ */
+proto.ColBypass.prototype.setColumn = function(value) {
+ return jspb.Message.setOneofField(this, 2, proto.ColBypass.oneofGroups_[0], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.ColBypass} returns this
+ */
+proto.ColBypass.prototype.clearColumn = function() {
+ return jspb.Message.setOneofField(this, 2, proto.ColBypass.oneofGroups_[0], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.ColBypass.prototype.hasColumn = function() {
+ return jspb.Message.getField(this, 2) != null;
+};
+
+
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.SceneBypass.prototype.toObject = function(opt_includeInstance) {
+ return proto.SceneBypass.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.SceneBypass} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.SceneBypass.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ bypass: jspb.Message.getBooleanFieldWithDefault(msg, 1, false)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.SceneBypass}
+ */
+proto.SceneBypass.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.SceneBypass;
+ return proto.SceneBypass.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.SceneBypass} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.SceneBypass}
+ */
+proto.SceneBypass.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {boolean} */ (reader.readBool());
+ msg.setBypass(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.SceneBypass.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.SceneBypass.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.SceneBypass} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.SceneBypass.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getBypass();
+ if (f) {
+ writer.writeBool(
+ 1,
+ f
+ );
+ }
+};
+
+
+/**
+ * optional bool bypass = 1;
+ * @return {boolean}
+ */
+proto.SceneBypass.prototype.getBypass = function() {
+ return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 1, false));
+};
+
+
+/**
+ * @param {boolean} value
+ * @return {!proto.SceneBypass} returns this
+ */
+proto.SceneBypass.prototype.setBypass = function(value) {
+ return jspb.Message.setProto3BooleanField(this, 1, value);
+};
+
+
+
+/**
+ * List of repeated fields within this message type.
+ * @private {!Array<number>}
+ * @const
+ */
+proto.Param.repeatedFields_ = [5];
+
+/**
+ * Oneof group definitions for this message. Each group defines the field
+ * numbers belonging to that group. When of these fields' value is set, all
+ * other fields in the group are cleared. During deserialization, if multiple
+ * fields are encountered for a group, only the last value seen will be kept.
+ * @private {!Array<!Array<number>>}
+ * @const
+ */
+proto.Param.oneofGroups_ = [[1],[2],[3],[4],[6]];
+
+/**
+ * @enum {number}
+ */
+proto.Param.ExpressionCase = {
+ _EXPRESSION_NOT_SET: 0,
+ EXPRESSION: 1
+};
+
+/**
+ * @return {proto.Param.ExpressionCase}
+ */
+proto.Param.prototype.getExpressionCase = function() {
+ return /** @type {proto.Param.ExpressionCase} */(jspb.Message.computeOneofCase(this, proto.Param.oneofGroups_[0]));
+};
+
+/**
+ * @enum {number}
+ */
+proto.Param.ExpressionMinCase = {
+ _EXPRESSION_MIN_NOT_SET: 0,
+ EXPRESSION_MIN: 2
+};
+
+/**
+ * @return {proto.Param.ExpressionMinCase}
+ */
+proto.Param.prototype.getExpressionMinCase = function() {
+ return /** @type {proto.Param.ExpressionMinCase} */(jspb.Message.computeOneofCase(this, proto.Param.oneofGroups_[1]));
+};
+
+/**
+ * @enum {number}
+ */
+proto.Param.ExpressionMaxCase = {
+ _EXPRESSION_MAX_NOT_SET: 0,
+ EXPRESSION_MAX: 3
+};
+
+/**
+ * @return {proto.Param.ExpressionMaxCase}
+ */
+proto.Param.prototype.getExpressionMaxCase = function() {
+ return /** @type {proto.Param.ExpressionMaxCase} */(jspb.Message.computeOneofCase(this, proto.Param.oneofGroups_[2]));
+};
+
+/**
+ * @enum {number}
+ */
+proto.Param.SceneModeCase = {
+ _SCENE_MODE_NOT_SET: 0,
+ SCENE_MODE: 4
+};
+
+/**
+ * @return {proto.Param.SceneModeCase}
+ */
+proto.Param.prototype.getSceneModeCase = function() {
+ return /** @type {proto.Param.SceneModeCase} */(jspb.Message.computeOneofCase(this, proto.Param.oneofGroups_[3]));
+};
+
+/**
+ * @enum {number}
+ */
+proto.Param.IndexCase = {
+ _INDEX_NOT_SET: 0,
+ INDEX: 6
+};
+
+/**
+ * @return {proto.Param.IndexCase}
+ */
+proto.Param.prototype.getIndexCase = function() {
+ return /** @type {proto.Param.IndexCase} */(jspb.Message.computeOneofCase(this, proto.Param.oneofGroups_[4]));
+};
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.Param.prototype.toObject = function(opt_includeInstance) {
+ return proto.Param.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.Param} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Param.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ paramValuesList: jspb.Message.toObjectList(msg.getParamValuesList(),
+ proto.ParamValue.toObject, includeInstance),
+ expression: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ expressionMin: jspb.Message.getFloatingPointFieldWithDefault(msg, 2, 0.0),
+ expressionMax: jspb.Message.getFloatingPointFieldWithDefault(msg, 3, 0.0),
+ sceneMode: jspb.Message.getBooleanFieldWithDefault(msg, 4, false),
+ index: jspb.Message.getFieldWithDefault(msg, 6, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.Param}
+ */
+proto.Param.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.Param;
+ return proto.Param.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.Param} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.Param}
+ */
+proto.Param.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 5:
+ var value = new proto.ParamValue;
+ reader.readMessage(value,proto.ParamValue.deserializeBinaryFromReader);
+ msg.addParamValues(value);
+ break;
+ case 1:
+ var value = /** @type {number} */ (reader.readInt32());
+ msg.setExpression(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readFloat());
+ msg.setExpressionMin(value);
+ break;
+ case 3:
+ var value = /** @type {number} */ (reader.readFloat());
+ msg.setExpressionMax(value);
+ break;
+ case 4:
+ var value = /** @type {boolean} */ (reader.readBool());
+ msg.setSceneMode(value);
+ break;
+ case 6:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setIndex(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.Param.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.Param.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.Param} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Param.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getParamValuesList();
+ if (f.length > 0) {
+ writer.writeRepeatedMessage(
+ 5,
+ f,
+ proto.ParamValue.serializeBinaryToWriter
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 1));
+ if (f != null) {
+ writer.writeInt32(
+ 1,
+ f
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 2));
+ if (f != null) {
+ writer.writeFloat(
+ 2,
+ f
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 3));
+ if (f != null) {
+ writer.writeFloat(
+ 3,
+ f
+ );
+ }
+ f = /** @type {boolean} */ (jspb.Message.getField(message, 4));
+ if (f != null) {
+ writer.writeBool(
+ 4,
+ f
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 6));
+ if (f != null) {
+ writer.writeUint32(
+ 6,
+ f
+ );
+ }
+};
+
+
+/**
+ * repeated ParamValue param_values = 5;
+ * @return {!Array<!proto.ParamValue>}
+ */
+proto.Param.prototype.getParamValuesList = function() {
+ return /** @type{!Array<!proto.ParamValue>} */ (
+ jspb.Message.getRepeatedWrapperField(this, proto.ParamValue, 5));
+};
+
+
+/**
+ * @param {!Array<!proto.ParamValue>} value
+ * @return {!proto.Param} returns this
+*/
+proto.Param.prototype.setParamValuesList = function(value) {
+ return jspb.Message.setRepeatedWrapperField(this, 5, value);
+};
+
+
+/**
+ * @param {!proto.ParamValue=} opt_value
+ * @param {number=} opt_index
+ * @return {!proto.ParamValue}
+ */
+proto.Param.prototype.addParamValues = function(opt_value, opt_index) {
+ return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.ParamValue, opt_index);
+};
+
+
+/**
+ * Clears the list making it empty but non-null.
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.clearParamValuesList = function() {
+ return this.setParamValuesList([]);
+};
+
+
+/**
+ * optional int32 expression = 1;
+ * @return {number}
+ */
+proto.Param.prototype.getExpression = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.setExpression = function(value) {
+ return jspb.Message.setOneofField(this, 1, proto.Param.oneofGroups_[0], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.clearExpression = function() {
+ return jspb.Message.setOneofField(this, 1, proto.Param.oneofGroups_[0], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Param.prototype.hasExpression = function() {
+ return jspb.Message.getField(this, 1) != null;
+};
+
+
+/**
+ * optional float expression_min = 2;
+ * @return {number}
+ */
+proto.Param.prototype.getExpressionMin = function() {
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 2, 0.0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.setExpressionMin = function(value) {
+ return jspb.Message.setOneofField(this, 2, proto.Param.oneofGroups_[1], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.clearExpressionMin = function() {
+ return jspb.Message.setOneofField(this, 2, proto.Param.oneofGroups_[1], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Param.prototype.hasExpressionMin = function() {
+ return jspb.Message.getField(this, 2) != null;
+};
+
+
+/**
+ * optional float expression_max = 3;
+ * @return {number}
+ */
+proto.Param.prototype.getExpressionMax = function() {
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 3, 0.0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.setExpressionMax = function(value) {
+ return jspb.Message.setOneofField(this, 3, proto.Param.oneofGroups_[2], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.clearExpressionMax = function() {
+ return jspb.Message.setOneofField(this, 3, proto.Param.oneofGroups_[2], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Param.prototype.hasExpressionMax = function() {
+ return jspb.Message.getField(this, 3) != null;
+};
+
+
+/**
+ * optional bool scene_mode = 4;
+ * @return {boolean}
+ */
+proto.Param.prototype.getSceneMode = function() {
+ return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 4, false));
+};
+
+
+/**
+ * @param {boolean} value
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.setSceneMode = function(value) {
+ return jspb.Message.setOneofField(this, 4, proto.Param.oneofGroups_[3], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.clearSceneMode = function() {
+ return jspb.Message.setOneofField(this, 4, proto.Param.oneofGroups_[3], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Param.prototype.hasSceneMode = function() {
+ return jspb.Message.getField(this, 4) != null;
+};
+
+
+/**
+ * optional uint32 index = 6;
+ * @return {number}
+ */
+proto.Param.prototype.getIndex = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.setIndex = function(value) {
+ return jspb.Message.setOneofField(this, 6, proto.Param.oneofGroups_[4], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.Param} returns this
+ */
+proto.Param.prototype.clearIndex = function() {
+ return jspb.Message.setOneofField(this, 6, proto.Param.oneofGroups_[4], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.Param.prototype.hasIndex = function() {
+ return jspb.Message.getField(this, 6) != null;
+};
+
+
+
+/**
+ * Oneof group definitions for this message. Each group defines the field
+ * numbers belonging to that group. When of these fields' value is set, all
+ * other fields in the group are cleared. During deserialization, if multiple
+ * fields are encountered for a group, only the last value seen will be kept.
+ * @private {!Array<!Array<number>>}
+ * @const
+ */
+proto.ParamValue.oneofGroups_ = [[1,2,3]];
+
+/**
+ * @enum {number}
+ */
+proto.ParamValue.ValueCase = {
+ VALUE_NOT_SET: 0,
+ INT_VALUE: 1,
+ FLOAT_VALUE: 2,
+ STRING_VALUE: 3
+};
+
+/**
+ * @return {proto.ParamValue.ValueCase}
+ */
+proto.ParamValue.prototype.getValueCase = function() {
+ return /** @type {proto.ParamValue.ValueCase} */(jspb.Message.computeOneofCase(this, proto.ParamValue.oneofGroups_[0]));
+};
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.ParamValue.prototype.toObject = function(opt_includeInstance) {
+ return proto.ParamValue.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.ParamValue} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.ParamValue.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ intValue: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ floatValue: jspb.Message.getFloatingPointFieldWithDefault(msg, 2, 0.0),
+ stringValue: jspb.Message.getFieldWithDefault(msg, 3, "")
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.ParamValue}
+ */
+proto.ParamValue.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.ParamValue;
+ return proto.ParamValue.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.ParamValue} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.ParamValue}
+ */
+proto.ParamValue.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readInt32());
+ msg.setIntValue(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readFloat());
+ msg.setFloatValue(value);
+ break;
+ case 3:
+ var value = /** @type {string} */ (reader.readString());
+ msg.setStringValue(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.ParamValue.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.ParamValue.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.ParamValue} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.ParamValue.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = /** @type {number} */ (jspb.Message.getField(message, 1));
+ if (f != null) {
+ writer.writeInt32(
+ 1,
+ f
+ );
+ }
+ f = /** @type {number} */ (jspb.Message.getField(message, 2));
+ if (f != null) {
+ writer.writeFloat(
+ 2,
+ f
+ );
+ }
+ f = /** @type {string} */ (jspb.Message.getField(message, 3));
+ if (f != null) {
+ writer.writeString(
+ 3,
+ f
+ );
+ }
+};
+
+
+/**
+ * optional int32 int_value = 1;
+ * @return {number}
+ */
+proto.ParamValue.prototype.getIntValue = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.ParamValue} returns this
+ */
+proto.ParamValue.prototype.setIntValue = function(value) {
+ return jspb.Message.setOneofField(this, 1, proto.ParamValue.oneofGroups_[0], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.ParamValue} returns this
+ */
+proto.ParamValue.prototype.clearIntValue = function() {
+ return jspb.Message.setOneofField(this, 1, proto.ParamValue.oneofGroups_[0], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.ParamValue.prototype.hasIntValue = function() {
+ return jspb.Message.getField(this, 1) != null;
+};
+
+
+/**
+ * optional float float_value = 2;
+ * @return {number}
+ */
+proto.ParamValue.prototype.getFloatValue = function() {
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 2, 0.0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.ParamValue} returns this
+ */
+proto.ParamValue.prototype.setFloatValue = function(value) {
+ return jspb.Message.setOneofField(this, 2, proto.ParamValue.oneofGroups_[0], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.ParamValue} returns this
+ */
+proto.ParamValue.prototype.clearFloatValue = function() {
+ return jspb.Message.setOneofField(this, 2, proto.ParamValue.oneofGroups_[0], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.ParamValue.prototype.hasFloatValue = function() {
+ return jspb.Message.getField(this, 2) != null;
+};
+
+
+/**
+ * optional string string_value = 3;
+ * @return {string}
+ */
+proto.ParamValue.prototype.getStringValue = function() {
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
+};
+
+
+/**
+ * @param {string} value
+ * @return {!proto.ParamValue} returns this
+ */
+proto.ParamValue.prototype.setStringValue = function(value) {
+ return jspb.Message.setOneofField(this, 3, proto.ParamValue.oneofGroups_[0], value);
+};
+
+
+/**
+ * Clears the field making it undefined.
+ * @return {!proto.ParamValue} returns this
+ */
+proto.ParamValue.prototype.clearStringValue = function() {
+ return jspb.Message.setOneofField(this, 3, proto.ParamValue.oneofGroups_[0], undefined);
+};
+
+
+/**
+ * Returns whether this field is set.
+ * @return {boolean}
+ */
+proto.ParamValue.prototype.hasStringValue = function() {
+ return jspb.Message.getField(this, 3) != null;
+};
+
+
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.LegacyStompModeStompData.prototype.toObject = function(opt_includeInstance) {
+ return proto.LegacyStompModeStompData.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.LegacyStompModeStompData} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.LegacyStompModeStompData.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ row: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ column: jspb.Message.getFieldWithDefault(msg, 2, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.LegacyStompModeStompData}
+ */
+proto.LegacyStompModeStompData.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.LegacyStompModeStompData;
+ return proto.LegacyStompModeStompData.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.LegacyStompModeStompData} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.LegacyStompModeStompData}
+ */
+proto.LegacyStompModeStompData.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setRow(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setColumn(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.LegacyStompModeStompData.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.LegacyStompModeStompData.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.LegacyStompModeStompData} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.LegacyStompModeStompData.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getRow();
+ if (f !== 0) {
+ writer.writeUint32(
+ 1,
+ f
+ );
+ }
+ f = message.getColumn();
+ if (f !== 0) {
+ writer.writeUint32(
+ 2,
+ f
+ );
+ }
+};
+
+
+/**
+ * optional uint32 row = 1;
+ * @return {number}
+ */
+proto.LegacyStompModeStompData.prototype.getRow = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.LegacyStompModeStompData} returns this
+ */
+proto.LegacyStompModeStompData.prototype.setRow = function(value) {
+ return jspb.Message.setProto3IntField(this, 1, value);
+};
+
+
+/**
+ * optional uint32 column = 2;
+ * @return {number}
+ */
+proto.LegacyStompModeStompData.prototype.getColumn = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.LegacyStompModeStompData} returns this
+ */
+proto.LegacyStompModeStompData.prototype.setColumn = function(value) {
+ return jspb.Message.setProto3IntField(this, 2, value);
+};
+
+
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.StompModeAssignment.prototype.toObject = function(opt_includeInstance) {
+ return proto.StompModeAssignment.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.StompModeAssignment} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.StompModeAssignment.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ row: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ column: jspb.Message.getFieldWithDefault(msg, 2, 0),
+ stompIndex: jspb.Message.getFieldWithDefault(msg, 3, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.StompModeAssignment}
+ */
+proto.StompModeAssignment.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.StompModeAssignment;
+ return proto.StompModeAssignment.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.StompModeAssignment} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.StompModeAssignment}
+ */
+proto.StompModeAssignment.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setRow(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setColumn(value);
+ break;
+ case 3:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setStompIndex(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.StompModeAssignment.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.StompModeAssignment.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.StompModeAssignment} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.StompModeAssignment.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getRow();
+ if (f !== 0) {
+ writer.writeUint32(
+ 1,
+ f
+ );
+ }
+ f = message.getColumn();
+ if (f !== 0) {
+ writer.writeUint32(
+ 2,
+ f
+ );
+ }
+ f = message.getStompIndex();
+ if (f !== 0) {
+ writer.writeUint32(
+ 3,
+ f
+ );
+ }
+};
+
+
+/**
+ * optional uint32 row = 1;
+ * @return {number}
+ */
+proto.StompModeAssignment.prototype.getRow = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.StompModeAssignment} returns this
+ */
+proto.StompModeAssignment.prototype.setRow = function(value) {
+ return jspb.Message.setProto3IntField(this, 1, value);
+};
+
+
+/**
+ * optional uint32 column = 2;
+ * @return {number}
+ */
+proto.StompModeAssignment.prototype.getColumn = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.StompModeAssignment} returns this
+ */
+proto.StompModeAssignment.prototype.setColumn = function(value) {
+ return jspb.Message.setProto3IntField(this, 2, value);
+};
+
+
+/**
+ * optional uint32 stomp_index = 3;
+ * @return {number}
+ */
+proto.StompModeAssignment.prototype.getStompIndex = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.StompModeAssignment} returns this
+ */
+proto.StompModeAssignment.prototype.setStompIndex = function(value) {
+ return jspb.Message.setProto3IntField(this, 3, value);
+};
+
+
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.MidiMessageInfo.prototype.toObject = function(opt_includeInstance) {
+ return proto.MidiMessageInfo.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.MidiMessageInfo} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.MidiMessageInfo.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ type: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ channel: jspb.Message.getFieldWithDefault(msg, 2, 0),
+ param1: jspb.Message.getFieldWithDefault(msg, 3, 0),
+ param2: jspb.Message.getFieldWithDefault(msg, 4, 0),
+ param3: jspb.Message.getFieldWithDefault(msg, 5, 0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.MidiMessageInfo}
+ */
+proto.MidiMessageInfo.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.MidiMessageInfo;
+ return proto.MidiMessageInfo.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.MidiMessageInfo} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.MidiMessageInfo}
+ */
+proto.MidiMessageInfo.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setType(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setChannel(value);
+ break;
+ case 3:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setParam1(value);
+ break;
+ case 4:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setParam2(value);
+ break;
+ case 5:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setParam3(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.MidiMessageInfo.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.MidiMessageInfo.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.MidiMessageInfo} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.MidiMessageInfo.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getType();
+ if (f !== 0) {
+ writer.writeUint32(
+ 1,
+ f
+ );
+ }
+ f = message.getChannel();
+ if (f !== 0) {
+ writer.writeUint32(
+ 2,
+ f
+ );
+ }
+ f = message.getParam1();
+ if (f !== 0) {
+ writer.writeUint32(
+ 3,
+ f
+ );
+ }
+ f = message.getParam2();
+ if (f !== 0) {
+ writer.writeUint32(
+ 4,
+ f
+ );
+ }
+ f = message.getParam3();
+ if (f !== 0) {
+ writer.writeUint32(
+ 5,
+ f
+ );
+ }
+};
+
+
+/**
+ * optional uint32 type = 1;
+ * @return {number}
+ */
+proto.MidiMessageInfo.prototype.getType = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.MidiMessageInfo} returns this
+ */
+proto.MidiMessageInfo.prototype.setType = function(value) {
+ return jspb.Message.setProto3IntField(this, 1, value);
+};
+
+
+/**
+ * optional uint32 channel = 2;
+ * @return {number}
+ */
+proto.MidiMessageInfo.prototype.getChannel = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.MidiMessageInfo} returns this
+ */
+proto.MidiMessageInfo.prototype.setChannel = function(value) {
+ return jspb.Message.setProto3IntField(this, 2, value);
+};
+
+
+/**
+ * optional uint32 param1 = 3;
+ * @return {number}
+ */
+proto.MidiMessageInfo.prototype.getParam1 = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.MidiMessageInfo} returns this
+ */
+proto.MidiMessageInfo.prototype.setParam1 = function(value) {
+ return jspb.Message.setProto3IntField(this, 3, value);
+};
+
+
+/**
+ * optional uint32 param2 = 4;
+ * @return {number}
+ */
+proto.MidiMessageInfo.prototype.getParam2 = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.MidiMessageInfo} returns this
+ */
+proto.MidiMessageInfo.prototype.setParam2 = function(value) {
+ return jspb.Message.setProto3IntField(this, 4, value);
+};
+
+
+/**
+ * optional uint32 param3 = 5;
+ * @return {number}
+ */
+proto.MidiMessageInfo.prototype.getParam3 = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.MidiMessageInfo} returns this
+ */
+proto.MidiMessageInfo.prototype.setParam3 = function(value) {
+ return jspb.Message.setProto3IntField(this, 5, value);
+};
+
+
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.Expression.prototype.toObject = function(opt_includeInstance) {
+ return proto.Expression.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.Expression} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Expression.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ expression: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ expressionMin: jspb.Message.getFloatingPointFieldWithDefault(msg, 2, 0.0),
+ expressionMax: jspb.Message.getFloatingPointFieldWithDefault(msg, 3, 0.0)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.Expression}
+ */
+proto.Expression.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.Expression;
+ return proto.Expression.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.Expression} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.Expression}
+ */
+proto.Expression.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readInt32());
+ msg.setExpression(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readFloat());
+ msg.setExpressionMin(value);
+ break;
+ case 3:
+ var value = /** @type {number} */ (reader.readFloat());
+ msg.setExpressionMax(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.Expression.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.Expression.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.Expression} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.Expression.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getExpression();
+ if (f !== 0) {
+ writer.writeInt32(
+ 1,
+ f
+ );
+ }
+ f = message.getExpressionMin();
+ if (f !== 0.0) {
+ writer.writeFloat(
+ 2,
+ f
+ );
+ }
+ f = message.getExpressionMax();
+ if (f !== 0.0) {
+ writer.writeFloat(
+ 3,
+ f
+ );
+ }
+};
+
+
+/**
+ * optional int32 expression = 1;
+ * @return {number}
+ */
+proto.Expression.prototype.getExpression = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Expression} returns this
+ */
+proto.Expression.prototype.setExpression = function(value) {
+ return jspb.Message.setProto3IntField(this, 1, value);
+};
+
+
+/**
+ * optional float expression_min = 2;
+ * @return {number}
+ */
+proto.Expression.prototype.getExpressionMin = function() {
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 2, 0.0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Expression} returns this
+ */
+proto.Expression.prototype.setExpressionMin = function(value) {
+ return jspb.Message.setProto3FloatField(this, 2, value);
+};
+
+
+/**
+ * optional float expression_max = 3;
+ * @return {number}
+ */
+proto.Expression.prototype.getExpressionMax = function() {
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 3, 0.0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.Expression} returns this
+ */
+proto.Expression.prototype.setExpressionMax = function(value) {
+ return jspb.Message.setProto3FloatField(this, 3, value);
+};
+
+
+
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * Optional fields that are not set will be set to undefined.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
+ * JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.ExpressionBypassInfo.prototype.toObject = function(opt_includeInstance) {
+ return proto.ExpressionBypassInfo.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
+ * the JSPB instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.ExpressionBypassInfo} msg The msg instance to transform.
+ * @return {!Object}
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.ExpressionBypassInfo.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ type: jspb.Message.getFieldWithDefault(msg, 1, 0),
+ invert: jspb.Message.getBooleanFieldWithDefault(msg, 2, false),
+ delayMs: jspb.Message.getFieldWithDefault(msg, 3, 0),
+ latchEmulation: jspb.Message.getBooleanFieldWithDefault(msg, 4, false)
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg;
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.ExpressionBypassInfo}
+ */
+proto.ExpressionBypassInfo.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.ExpressionBypassInfo;
+ return proto.ExpressionBypassInfo.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.ExpressionBypassInfo} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.ExpressionBypassInfo}
+ */
+proto.ExpressionBypassInfo.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setType(value);
+ break;
+ case 2:
+ var value = /** @type {boolean} */ (reader.readBool());
+ msg.setInvert(value);
+ break;
+ case 3:
+ var value = /** @type {number} */ (reader.readUint32());
+ msg.setDelayMs(value);
+ break;
+ case 4:
+ var value = /** @type {boolean} */ (reader.readBool());
+ msg.setLatchEmulation(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.ExpressionBypassInfo.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ proto.ExpressionBypassInfo.serializeBinaryToWriter(this, writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the given message to binary data (in protobuf wire
+ * format), writing to the given BinaryWriter.
+ * @param {!proto.ExpressionBypassInfo} message
+ * @param {!jspb.BinaryWriter} writer
+ * @suppress {unusedLocalVariables} f is only used for nested messages
+ */
+proto.ExpressionBypassInfo.serializeBinaryToWriter = function(message, writer) {
+ var f = undefined;
+ f = message.getType();
+ if (f !== 0) {
+ writer.writeUint32(
+ 1,
+ f
+ );
+ }
+ f = message.getInvert();
+ if (f) {
+ writer.writeBool(
+ 2,
+ f
+ );
+ }
+ f = message.getDelayMs();
+ if (f !== 0) {
+ writer.writeUint32(
+ 3,
+ f
+ );
+ }
+ f = message.getLatchEmulation();
+ if (f) {
+ writer.writeBool(
+ 4,
+ f
+ );
+ }
+};
+
+
+/**
+ * optional uint32 type = 1;
+ * @return {number}
+ */
+proto.ExpressionBypassInfo.prototype.getType = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.ExpressionBypassInfo} returns this
+ */
+proto.ExpressionBypassInfo.prototype.setType = function(value) {
+ return jspb.Message.setProto3IntField(this, 1, value);
+};
+
+
+/**
+ * optional bool invert = 2;
+ * @return {boolean}
+ */
+proto.ExpressionBypassInfo.prototype.getInvert = function() {
+ return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 2, false));
+};
+
+
+/**
+ * @param {boolean} value
+ * @return {!proto.ExpressionBypassInfo} returns this
+ */
+proto.ExpressionBypassInfo.prototype.setInvert = function(value) {
+ return jspb.Message.setProto3BooleanField(this, 2, value);
+};
+
+
+/**
+ * optional uint32 delay_ms = 3;
+ * @return {number}
+ */
+proto.ExpressionBypassInfo.prototype.getDelayMs = function() {
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
+};
+
+
+/**
+ * @param {number} value
+ * @return {!proto.ExpressionBypassInfo} returns this
+ */
+proto.ExpressionBypassInfo.prototype.setDelayMs = function(value) {
+ return jspb.Message.setProto3IntField(this, 3, value);
+};
+
+
+/**
+ * optional bool latch_emulation = 4;
+ * @return {boolean}
+ */
+proto.ExpressionBypassInfo.prototype.getLatchEmulation = function() {
+ return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 4, false));
+};
+
+
+/**
+ * @param {boolean} value
+ * @return {!proto.ExpressionBypassInfo} returns this
+ */
+proto.ExpressionBypassInfo.prototype.setLatchEmulation = function(value) {
+ return jspb.Message.setProto3BooleanField(this, 4, value);
+};
+
+
+goog.object.extend(exports, proto);
diff --git a/Desktop Editor/src/models/Presets/index.ts b/Desktop Editor/src/models/Presets/index.ts
new file mode 100644
index 0000000..669931b
--- /dev/null
+++ b/Desktop Editor/src/models/Presets/index.ts
@@ -0,0 +1 @@
+export * from './Preset_pb'
diff --git a/desktop_editor/public/protos/Preset.proto b/Desktop Editor/src/protos/Preset.proto
index 5fd8174..5fd8174 100644
--- a/desktop_editor/public/protos/Preset.proto
+++ b/Desktop Editor/src/protos/Preset.proto
diff --git a/desktop_editor/src/shims-vue.d.ts b/Desktop Editor/src/shims-vue.d.ts
index 3804a43..3804a43 100644
--- a/desktop_editor/src/shims-vue.d.ts
+++ b/Desktop Editor/src/shims-vue.d.ts
diff --git a/desktop_editor/src/store.ts b/Desktop Editor/src/store.ts
index 976d9eb..976d9eb 100644
--- a/desktop_editor/src/store.ts
+++ b/Desktop Editor/src/store.ts
diff --git a/desktop_editor/src/views/PresetBrowserView.vue b/Desktop Editor/src/views/PresetBrowserView.vue
index 23aa84d..8dcd3a7 100644
--- a/desktop_editor/src/views/PresetBrowserView.vue
+++ b/Desktop Editor/src/views/PresetBrowserView.vue
@@ -22,6 +22,7 @@ import axios from 'axios';
import xmljs from 'xml-js';
import protobuf from 'protobufjs';
import store from '@/store';
+import BinaryPreset from '../models/Presets/Preset_pb';
export default defineComponent({
name: 'PresetBrowserView',
@@ -94,12 +95,12 @@ export default defineComponent({
return file;
},
- async OpenPreset(preset: Object, setlist: Array<any>){
+ async OpenPreset(preset: Object){
const presetPath = (preset as any)._attributes.path;
- const presetLocation = this.GetPresetLocation(preset, setlist);
+ // const presetLocation = this.GetPresetLocation(preset, setlist);
// Go to the preset viewer and pass the presets as a prop
// const decodedPreset = await this.DecodePreset(presetPath, presetLocation);
- this.DecodePreset("Vienna.pb", presetLocation).then((decodedPreset) => {
+ this.DecodePreset("Vienna.pb").then((decodedPreset) => {
console.log("decoded", decodedPreset)
console.log("preset path: ", presetPath)
store.dispatch('setSelectedPreset', decodedPreset);
@@ -111,28 +112,21 @@ export default defineComponent({
},
- async DecodePreset(presetPath: string, presetLocation: any): Promise<any>{
+ async DecodePreset(presetPath: string): Promise<BinaryPreset.BinaryPreset.AsObject>{
return new Promise((resolve, reject) => {
- protobuf.load('protos/Preset.proto', async (err, root) => {
+ protobuf.load('protos/Preset.proto', async (err) => {
if (err) return reject(err);
- // Obtain a message type
- const Preset = root?.lookupType("BinaryPreset");
-
// Get the .pb file Antartica.pb from the public folder and decode it
// Do this without using the fs module
const response = await fetch(presetPath);
const arrayBuffer = await response.arrayBuffer();
// Decode an Uint8Array (browser) or Buffer (node) to a message
- const message = Preset?.decode(new Uint8Array(arrayBuffer));
+ const preset: BinaryPreset.BinaryPreset = BinaryPreset.BinaryPreset.deserializeBinary(new Uint8Array(arrayBuffer));
+ const object: BinaryPreset.BinaryPreset.AsObject = preset.toObject();
- let presetObject = message as any;
-
- presetObject.name = this.PathToFile(presetPath as any, true);
- presetObject.location = presetLocation;
-
- resolve(presetObject);
+ resolve(object);
});
});
},
diff --git a/desktop_editor/src/views/PresetViewer.vue b/Desktop Editor/src/views/PresetViewer.vue
index 7016c87..7016c87 100644
--- a/desktop_editor/src/views/PresetViewer.vue
+++ b/Desktop Editor/src/views/PresetViewer.vue
diff --git a/desktop_editor/tsconfig.json b/Desktop Editor/tsconfig.json
index 5894ee3..5894ee3 100644
--- a/desktop_editor/tsconfig.json
+++ b/Desktop Editor/tsconfig.json
diff --git a/desktop_editor/vue.config.js b/Desktop Editor/vue.config.js
index b998254..b998254 100644
--- a/desktop_editor/vue.config.js
+++ b/Desktop Editor/vue.config.js