## Descriptions

### Constants

* Mesh encoding methods
  * 0: MESH_SEQUENTIAL_ENCODING
  * 1: MESH_EDGEBREAKER_ENCODING

* Metadata constants
  * 32768: METADATA_FLAG_MASK

* Sequential attribute encoding methods
  * 0: SEQUENTIAL_ATTRIBUTE_ENCODER_GENERIC
  * 1: SEQUENTIAL_ATTRIBUTE_ENCODER_INTEGER
  * 2: SEQUENTIAL_ATTRIBUTE_ENCODER_QUANTIZATION
  * 3: SEQUENTIAL_ATTRIBUTE_ENCODER_NORMALS

* Sequential indices encoding methods
  * 0: SEQUENTIAL_COMPRESSED_INDICES
  * 1: SEQUENTIAL_UNCOMPRESSED_INDICES

* Prediction encoding methods
  * -2: PREDICTION_NONE
  * 0: PREDICTION_DIFFERENCE
  * 1: MESH_PREDICTION_PARALLELOGRAM
  * 4: MESH_PREDICTION_CONSTRAINED_MULTI_PARALLELOGRAM
  * 5: MESH_PREDICTION_TEX_COORDS_PORTABLE
  * 6: MESH_PREDICTION_GEOMETRIC_NORMAL

* Prediction scheme transform methods
  * 1: PREDICTION_TRANSFORM_WRAP
  * 3: PREDICTION_TRANSFORM_NORMAL_OCTAHEDRON_CANONICALIZED

* Mesh traversal methods
  * 0: MESH_TRAVERSAL_DEPTH_FIRST
  * 1: MESH_TRAVERSAL_PREDICTION_DEGREE

* Mesh attribute encoding methods
  * 0: MESH_VERTEX_ATTRIBUTE
  * 1: MESH_CORNER_ATTRIBUTE

* EdgeBreaker encoding methods
  * 0: STANDARD_EDGEBREAKER
  * 2: VALENCE_EDGEBREAKER

* EdgeBreaker constants
  * -1: kInvalidCornerIndex
  * 0: LEFT_FACE_EDGE
  * 1: RIGHT_FACE_EDGE
  * 2: kTexCoordsNumComponents
  * 4: kMaxNumParallelograms
  * 3: kMaxPriority

* EdgeBreaker bit pattern constants
  * 0: TOPOLOGY_C
  * 1: TOPOLOGY_S
  * 3: TOPOLOGY_L
  * 5: TOPOLOGY_R
  * 7: TOPOLOGY_E

* Valence EdgeBreaker constants
  * 2: MIN_VALENCE
  * 7: MAX_VALENCE
  * 6: NUM_UNIQUE_VALENCES

* ANS constants
  * 256: rabs_ans_p8_precision
  * 1024: rabs_ans_p10_precision
  * 4096: rabs_l_base
  * 256: IO_BASE
  * 4096: L_RANS_BASE
  * 16384: TAGGED_RANS_BASE
  * 4096: TAGGED_RANS_PRECISION

* Symbol encoding methods
  * 0: TAGGED_SYMBOLS
  * 1: RAW_SYMBOLS


### Variables

#### Header
* draco_string
  * Must equal "DRACO"
* major_version
  * bitstream major version number
* minor_version
  * bitstream minor version number
* encoder_type
  * 0: POINT_CLOUD
  * 1: TRIANGULAR_MESH
* encoder_method
  * 0: MESH_SEQUENTIAL_ENCODING
  * 1: MESH_EDGEBREAKER_ENCODING
* flags

#### Metadata
* num_att_metadata
  * Attribute metadata count
* att_metadata_id
  * Array of attribute metadata ids
* att_metadata
  * Array of attribute metadata
* file_metadata
  * Global metadata

#### Sequential Encoding
* num_points
  * Number of encoded points
* connectivity_method

#### EdgeBreaker Encoding
* edgebreaker_traversal_type
  * 0: MeshEdgeBreakerTraversalDecoder
  * 1: MeshEdgeBreakerTraversalPredictiveDecoder
  * 2: MeshEdgeBreakerTraversalValenceDecoder
* num_new_vertices
  * Number of new vertices
* num_encoded_vertices
  * Number of encoded vertices
* num_faces
  * Number of encoded faces
* num_attribute_data
  * Number of encoded attributes
* num_encoded_symbols
  * Number of encoded EdgeBreaker symbols
* num_encoded_split_symbols
  * Number of encoded EdgeBreaker split symbols
* encoded_connectivity_size
  * Size of encoded connectivity data in bytes
* num_topology_splits
* source_id_delta
  * Array of delta encoded source symbol ids
* split_id_delta
  * Array of delta encoded split symbol ids
* source_edge_bit
  * Array of source edge types
  * 0: LEFT_FACE_EDGE
  * 1: RIGHT_FACE_EDGE
* source_symbol_id
  * Array of source symbol ids
* split_symbol_id
  * Array of split symbol ids
* last_symbol_
  * Last EdgeBreaker symbol decoded
* last_vert_added
  * Id of the last vertex decoded
* active_corner_stack
  * Array of current working corners used during EdgeBreaker decoding
* edge_breaker_symbol_to_topology_id
  * Array of EdgeBreaker symbols
  * 0: TOPOLOGY_C
  * 1: TOPOLOGY_S
  * 2: TOPOLOGY_L
  * 3: TOPOLOGY_R
  * 4: TOPOLOGY_E
* topology_split_id
  * List of decoder split ids encountered during a topology split.
* split_active_corners
  * List of corners encountered during a topology split.

#### EdgeBreaker Traversal
* eb_symbol_buffer_size
* eb_symbol_buffer
  * Standard EdgeBreaker encoded symbol data
* eb_start_face_buffer_prob_zero
    * Face configuration encoded probability
* eb_start_face_buffer_size
* eb_start_face_buffer
  * EdgeBreaker encoded face configuration data
* attribute_connectivity_decoders_prob_zero
  * Array of encoded attribute probabilities
* attribute_connectivity_decoders_size
  * Array of attribute connectivity size
* attribute_connectivity_decoders_buffer
  * Array of attribute connectivity data

#### EdgeBreaker Valence Traversal
* ebv_context_counters
  * Array of number of context symbols
* ebv_context_symbols
  * Array of encoded context symbol data
* active_context_
  * Index to the current valence
* vertex_valences_
  * Array of current vertices valences

#### Attribute Encoding
* num_attributes_decoders
* att_dec_data_id
  * Array of attribute decoder ids
* att_dec_decoder_type
  * Array of attribute decoder types
  * 0: MESH_VERTEX_ATTRIBUTE
  * 1: MESH_CORNER_ATTRIBUTE
* att_dec_traversal_method
  * Array of attribute traversal methods
  * 0: MESH_TRAVERSAL_DEPTH_FIRST
  * 1: MESH_TRAVERSAL_PREDICTION_DEGREE
* att_dec_num_values_to_decode
  * Number of values to decode per attribute
* att_dec_num_attributes
  * Array of number of attributes encoded per attribute type
* att_dec_att_type
* att_dec_data_type
  * Attribute's data type
* att_dec_num_components
  * Attribute's component count
* att_dec_normalized
* att_dec_unique_id
  * Attribute's unique encoded id
* seq_att_dec_decoder_type
  * Array of attribute encoding type
  * 0: SEQUENTIAL_ATTRIBUTE_ENCODER_GENERIC
  * 1: SEQUENTIAL_ATTRIBUTE_ENCODER_INTEGER
  * 2: SEQUENTIAL_ATTRIBUTE_ENCODER_QUANTIZATION
  * 3: SEQUENTIAL_ATTRIBUTE_ENCODER_NORMALS
* seq_att_dec_prediction_scheme
  * Array of attribute prediction scheme method
  * -2: PREDICTION_NONE
  * 0: PREDICTION_DIFFERENCE
  * 1: MESH_PREDICTION_PARALLELOGRAM
  * 4: MESH_PREDICTION_CONSTRAINED_MULTI_PARALLELOGRAM
  * 5: MESH_PREDICTION_TEX_COORDS_PORTABLE
  * 6: MESH_PREDICTION_GEOMETRIC_NORMAL
* seq_att_dec_prediction_transform_type
  * Array of attribute prediction transform method
  * 1: PREDICTION_TRANSFORM_WRAP
  * 3: PREDICTION_TRANSFORM_NORMAL_OCTAHEDRON_CANONICALIZED
* seq_int_att_dec_compressed
* pred_cons_multi_is_cease_edge
  * Array for multi parallelogram prediction signifying if the edge is the last edge
* pred_tex_coords_orientaitons
  * Array signifying orientation for the texture coordinate prediction
* pred_trasnform_wrap_min
  * Array of minimum clamp values used by the wrap transform
* pred_trasnform_wrap_max
  * Array of maximum clamp values used by the wrap transform
* pred_trasnform_normal_max_q_val
  * Maximum quantization array used by the normal transform
* pred_transform_normal_flip_normal_bits
  * Array of flags used by the normal transform
* seq_int_att_dec_decoded_values
  * Array of attribute decoded symbols
* seq_int_att_dec_symbols_to_signed_ints
  * Array of decoded symbols converted to signed ints
* seq_int_att_dec_original_values
  * Array containing the attribute's original quantized values
* seq_int_att_dec_dequantized_values
  * Array containing the attribute's original values
* quantized_data_min_values
  * Array of minimum quantization values
* quantized_data_max_value_df
  * Array of quantization range
* quantized_data_quantization_bits
  * Array of number of quantization bits

#### Attribute Traversal
* curr_att_dec
  * Current attribute decoder type
* curr_att
  * Current attribute within a decoder type
* vertex_visited_point_ids
  * Array of the last vertex visited per attribute
* att_connectivity_seam_opp
* att_connectivity_seam_src
* att_connectivity_seam_dest
* corner_to_point_map
* is_edge_on_seam_
  * Array of bools signifying if the corner's opposite edge is on a seam
* encoded_attribute_value_index_to_corner_map
  * Array for storing the corner ids in the order their associated attribute entries were encoded
* vertex_to_encoded_attribute_value_index_map
  * Array for storing encoding order of attribute entries for each vertex
* indices_map_
* prediction_rans_prob_zero
  * Current rans zero probability
* prediction_rans_data_size
  * Current size of rans encoded data
* tex_coords_num_orientations
  * Current number of orientations for encoded Texture data
* traversal_stacks_
  * Array of available corners
* best_priority_
  * Current best available priority
* prediction_degree_
  * Array of current degree prediction for each vertex
* constrained_multi_num_flags



  
