1// automatically generated by the FlatBuffers compiler, do not modify
2
3/**
4 * @enum
5 */
6var Character = {
7  NONE: 0,
8  MuLan: 1,
9  Rapunzel: 2,
10  Belle: 3,
11  BookFan: 4,
12  Other: 5,
13  Unused: 6
14};
15
16/**
17 * @constructor
18 */
19function Attacker() {
20  /**
21   * @type {flatbuffers.ByteBuffer}
22   */
23  this.bb = null;
24
25  /**
26   * @type {number}
27   */
28  this.bb_pos = 0;
29}
30
31/**
32 * @param {number} i
33 * @param {flatbuffers.ByteBuffer} bb
34 * @returns {Attacker}
35 */
36Attacker.prototype.__init = function(i, bb) {
37  this.bb_pos = i;
38  this.bb = bb;
39  return this;
40};
41
42/**
43 * @param {flatbuffers.ByteBuffer} bb
44 * @param {Attacker=} obj
45 * @returns {Attacker}
46 */
47Attacker.getRootAsAttacker = function(bb, obj) {
48  return (obj || new Attacker).__init(bb.readInt32(bb.position()) + bb.position(), bb);
49};
50
51/**
52 * @returns {number}
53 */
54Attacker.prototype.swordAttackDamage = function() {
55  var offset = this.bb.__offset(this.bb_pos, 4);
56  return offset ? this.bb.readInt32(this.bb_pos + offset) : 0;
57};
58
59/**
60 * @param {number} value
61 * @returns {boolean}
62 */
63Attacker.prototype.mutate_sword_attack_damage = function(value) {
64  var offset = this.bb.__offset(this.bb_pos, 4);
65
66  if (offset === 0) {
67    return false;
68  }
69
70  this.bb.writeInt32(this.bb_pos + offset, value);
71  return true;
72};
73
74/**
75 * @param {flatbuffers.Builder} builder
76 */
77Attacker.startAttacker = function(builder) {
78  builder.startObject(1);
79};
80
81/**
82 * @param {flatbuffers.Builder} builder
83 * @param {number} swordAttackDamage
84 */
85Attacker.addSwordAttackDamage = function(builder, swordAttackDamage) {
86  builder.addFieldInt32(0, swordAttackDamage, 0);
87};
88
89/**
90 * @param {flatbuffers.Builder} builder
91 * @returns {flatbuffers.Offset}
92 */
93Attacker.endAttacker = function(builder) {
94  var offset = builder.endObject();
95  return offset;
96};
97
98/**
99 * @constructor
100 */
101function Rapunzel() {
102  /**
103   * @type {flatbuffers.ByteBuffer}
104   */
105  this.bb = null;
106
107  /**
108   * @type {number}
109   */
110  this.bb_pos = 0;
111}
112
113/**
114 * @param {number} i
115 * @param {flatbuffers.ByteBuffer} bb
116 * @returns {Rapunzel}
117 */
118Rapunzel.prototype.__init = function(i, bb) {
119  this.bb_pos = i;
120  this.bb = bb;
121  return this;
122};
123
124/**
125 * @returns {number}
126 */
127Rapunzel.prototype.hairLength = function() {
128  return this.bb.readInt32(this.bb_pos);
129};
130
131/**
132 * @param {number} value
133 * @returns {boolean}
134 */
135Rapunzel.prototype.mutate_hair_length = function(value) {
136  var offset = this.bb.__offset(this.bb_pos, 0);
137
138  if (offset === 0) {
139    return false;
140  }
141
142  this.bb.writeInt32(this.bb_pos + offset, value);
143  return true;
144};
145
146/**
147 * @param {flatbuffers.Builder} builder
148 * @param {number} hair_length
149 * @returns {flatbuffers.Offset}
150 */
151Rapunzel.createRapunzel = function(builder, hair_length) {
152  builder.prep(4, 4);
153  builder.writeInt32(hair_length);
154  return builder.offset();
155};
156
157/**
158 * @constructor
159 */
160function BookReader() {
161  /**
162   * @type {flatbuffers.ByteBuffer}
163   */
164  this.bb = null;
165
166  /**
167   * @type {number}
168   */
169  this.bb_pos = 0;
170}
171
172/**
173 * @param {number} i
174 * @param {flatbuffers.ByteBuffer} bb
175 * @returns {BookReader}
176 */
177BookReader.prototype.__init = function(i, bb) {
178  this.bb_pos = i;
179  this.bb = bb;
180  return this;
181};
182
183/**
184 * @returns {number}
185 */
186BookReader.prototype.booksRead = function() {
187  return this.bb.readInt32(this.bb_pos);
188};
189
190/**
191 * @param {number} value
192 * @returns {boolean}
193 */
194BookReader.prototype.mutate_books_read = function(value) {
195  var offset = this.bb.__offset(this.bb_pos, 0);
196
197  if (offset === 0) {
198    return false;
199  }
200
201  this.bb.writeInt32(this.bb_pos + offset, value);
202  return true;
203};
204
205/**
206 * @param {flatbuffers.Builder} builder
207 * @param {number} books_read
208 * @returns {flatbuffers.Offset}
209 */
210BookReader.createBookReader = function(builder, books_read) {
211  builder.prep(4, 4);
212  builder.writeInt32(books_read);
213  return builder.offset();
214};
215
216/**
217 * @constructor
218 */
219function Movie() {
220  /**
221   * @type {flatbuffers.ByteBuffer}
222   */
223  this.bb = null;
224
225  /**
226   * @type {number}
227   */
228  this.bb_pos = 0;
229}
230
231/**
232 * @param {number} i
233 * @param {flatbuffers.ByteBuffer} bb
234 * @returns {Movie}
235 */
236Movie.prototype.__init = function(i, bb) {
237  this.bb_pos = i;
238  this.bb = bb;
239  return this;
240};
241
242/**
243 * @param {flatbuffers.ByteBuffer} bb
244 * @param {Movie=} obj
245 * @returns {Movie}
246 */
247Movie.getRootAsMovie = function(bb, obj) {
248  return (obj || new Movie).__init(bb.readInt32(bb.position()) + bb.position(), bb);
249};
250
251/**
252 * @param {flatbuffers.ByteBuffer} bb
253 * @returns {boolean}
254 */
255Movie.bufferHasIdentifier = function(bb) {
256  return bb.__has_identifier('MOVI');
257};
258
259/**
260 * @returns {Character}
261 */
262Movie.prototype.mainCharacterType = function() {
263  var offset = this.bb.__offset(this.bb_pos, 4);
264  return offset ? /** @type {Character} */ (this.bb.readUint8(this.bb_pos + offset)) : Character.NONE;
265};
266
267/**
268 * @param {Character} value
269 * @returns {boolean}
270 */
271Movie.prototype.mutate_main_character_type = function(value) {
272  var offset = this.bb.__offset(this.bb_pos, 4);
273
274  if (offset === 0) {
275    return false;
276  }
277
278  this.bb.writeUint8(this.bb_pos + offset, value);
279  return true;
280};
281
282/**
283 * @param {flatbuffers.Table} obj
284 * @returns {?flatbuffers.Table}
285 */
286Movie.prototype.mainCharacter = function(obj) {
287  var offset = this.bb.__offset(this.bb_pos, 6);
288  return offset ? this.bb.__union(obj, this.bb_pos + offset) : null;
289};
290
291/**
292 * @param {number} index
293 * @returns {Character}
294 */
295Movie.prototype.charactersType = function(index) {
296  var offset = this.bb.__offset(this.bb_pos, 8);
297  return offset ? /** @type {Character} */ (this.bb.readUint8(this.bb.__vector(this.bb_pos + offset) + index)) : /** @type {Character} */ (0);
298};
299
300/**
301 * @returns {number}
302 */
303Movie.prototype.charactersTypeLength = function() {
304  var offset = this.bb.__offset(this.bb_pos, 8);
305  return offset ? this.bb.__vector_len(this.bb_pos + offset) : 0;
306};
307
308/**
309 * @returns {Uint8Array}
310 */
311Movie.prototype.charactersTypeArray = function() {
312  var offset = this.bb.__offset(this.bb_pos, 8);
313  return offset ? new Uint8Array(this.bb.bytes().buffer, this.bb.bytes().byteOffset + this.bb.__vector(this.bb_pos + offset), this.bb.__vector_len(this.bb_pos + offset)) : null;
314};
315
316/**
317 * @param {number} index
318 * @param {flatbuffers.Table=} obj
319 * @returns {?flatbuffers.Table}
320 */
321Movie.prototype.characters = function(index, obj) {
322  var offset = this.bb.__offset(this.bb_pos, 10);
323  return offset ? this.bb.__union(obj, this.bb.__vector(this.bb_pos + offset) + index * 4) : null;
324};
325
326/**
327 * @returns {number}
328 */
329Movie.prototype.charactersLength = function() {
330  var offset = this.bb.__offset(this.bb_pos, 10);
331  return offset ? this.bb.__vector_len(this.bb_pos + offset) : 0;
332};
333
334/**
335 * @param {flatbuffers.Builder} builder
336 */
337Movie.startMovie = function(builder) {
338  builder.startObject(4);
339};
340
341/**
342 * @param {flatbuffers.Builder} builder
343 * @param {Character} mainCharacterType
344 */
345Movie.addMainCharacterType = function(builder, mainCharacterType) {
346  builder.addFieldInt8(0, mainCharacterType, Character.NONE);
347};
348
349/**
350 * @param {flatbuffers.Builder} builder
351 * @param {flatbuffers.Offset} mainCharacterOffset
352 */
353Movie.addMainCharacter = function(builder, mainCharacterOffset) {
354  builder.addFieldOffset(1, mainCharacterOffset, 0);
355};
356
357/**
358 * @param {flatbuffers.Builder} builder
359 * @param {flatbuffers.Offset} charactersTypeOffset
360 */
361Movie.addCharactersType = function(builder, charactersTypeOffset) {
362  builder.addFieldOffset(2, charactersTypeOffset, 0);
363};
364
365/**
366 * @param {flatbuffers.Builder} builder
367 * @param {Array.<Character>} data
368 * @returns {flatbuffers.Offset}
369 */
370Movie.createCharactersTypeVector = function(builder, data) {
371  builder.startVector(1, data.length, 1);
372  for (var i = data.length - 1; i >= 0; i--) {
373    builder.addInt8(data[i]);
374  }
375  return builder.endVector();
376};
377
378/**
379 * @param {flatbuffers.Builder} builder
380 * @param {number} numElems
381 */
382Movie.startCharactersTypeVector = function(builder, numElems) {
383  builder.startVector(1, numElems, 1);
384};
385
386/**
387 * @param {flatbuffers.Builder} builder
388 * @param {flatbuffers.Offset} charactersOffset
389 */
390Movie.addCharacters = function(builder, charactersOffset) {
391  builder.addFieldOffset(3, charactersOffset, 0);
392};
393
394/**
395 * @param {flatbuffers.Builder} builder
396 * @param {Array.<flatbuffers.Offset>} data
397 * @returns {flatbuffers.Offset}
398 */
399Movie.createCharactersVector = function(builder, data) {
400  builder.startVector(4, data.length, 4);
401  for (var i = data.length - 1; i >= 0; i--) {
402    builder.addOffset(data[i]);
403  }
404  return builder.endVector();
405};
406
407/**
408 * @param {flatbuffers.Builder} builder
409 * @param {number} numElems
410 */
411Movie.startCharactersVector = function(builder, numElems) {
412  builder.startVector(4, numElems, 4);
413};
414
415/**
416 * @param {flatbuffers.Builder} builder
417 * @returns {flatbuffers.Offset}
418 */
419Movie.endMovie = function(builder) {
420  var offset = builder.endObject();
421  return offset;
422};
423
424/**
425 * @param {flatbuffers.Builder} builder
426 * @param {flatbuffers.Offset} offset
427 */
428Movie.finishMovieBuffer = function(builder, offset) {
429  builder.finish(offset, 'MOVI');
430};
431
432// Exports for Node.js and RequireJS
433this.Character = Character;
434this.Attacker = Attacker;
435this.Rapunzel = Rapunzel;
436this.BookReader = BookReader;
437this.Movie = Movie;
438