15#ifndef DRACO_COMPRESSION_ATTRIBUTES_PREDICTION_SCHEMES_MESH_PREDICTION_SCHEME_TEX_COORDS_PORTABLE_DECODER_H_
16#define DRACO_COMPRESSION_ATTRIBUTES_PREDICTION_SCHEMES_MESH_PREDICTION_SCHEME_TEX_COORDS_PORTABLE_DECODER_H_
27template <
typename DataTypeT,
class TransformT,
class MeshDataT>
41 int size,
int num_components,
42 const PointIndex *entry_to_point_id_map)
override;
51 if (!predictor_.IsInitialized()) {
75 predictor_.SetPositionAttribute(*att);
84template <
typename DataTypeT,
class TransformT,
class MeshDataT>
85bool MeshPredictionSchemeTexCoordsPortableDecoder<
86 DataTypeT, TransformT,
88 DataTypeT *out_data,
int ,
92 DataTypeT, MeshDataT>::kNumComponents) {
95 predictor_.SetEntryToPointIdMap(entry_to_point_id_map);
98 const int corner_map_size =
99 static_cast<int>(this->
mesh_data().data_to_corner_map()->size());
100 for (
int p = 0; p < corner_map_size; ++p) {
102 if (!predictor_.template ComputePredictedValue<false>(corner_id, out_data,
107 const int dst_offset = p * num_components;
108 this->
transform().ComputeOriginalValue(predictor_.predicted_value(),
109 in_corr + dst_offset,
110 out_data + dst_offset);
115template <
typename DataTypeT,
class TransformT,
class MeshDataT>
120 int32_t num_orientations = 0;
121 if (!buffer->
Decode(&num_orientations) || num_orientations < 0) {
124 predictor_.ResizeOrientations(num_orientations);
125 bool last_orientation =
true;
130 for (
int i = 0; i < num_orientations; ++i) {
132 last_orientation = !last_orientation;
134 predictor_.set_orientation(i, last_orientation);
Definition decoder_buffer.h:30
bool Decode(T *out_val)
Definition decoder_buffer.h:68
uint8_t num_components() const
Definition geometry_attribute.h:263
Type attribute_type() const
Definition geometry_attribute.h:256
Type
Definition geometry_attribute.h:46
@ POSITION
Definition geometry_attribute.h:52
const MeshData & mesh_data() const
Definition mesh_prediction_scheme_decoder.h:38
MeshPredictionSchemeDecoder(const PointAttribute *attribute, const TransformT &transform, const MeshDataT &mesh_data)
Definition mesh_prediction_scheme_decoder.h:31
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:29
int GetNumParentAttributes() const override
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:60
MeshPredictionSchemeTexCoordsPortableDecoder(const PointAttribute *attribute, const TransformT &transform, const MeshDataT &mesh_data)
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:33
bool SetParentAttribute(const PointAttribute *att) override
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:68
bool DecodePredictionData(DecoderBuffer *buffer) override
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:117
bool IsInitialized() const override
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:50
typename MeshPredictionSchemeDecoder< DataTypeT, TransformT, MeshDataT >::CorrType CorrType
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:31
PredictionSchemeMethod GetPredictionMethod() const override
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:46
bool ComputeOriginalValues(const CorrType *in_corr, DataTypeT *out_data, int size, int num_components, const PointIndex *entry_to_point_id_map) override
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:87
GeometryAttribute::Type GetParentAttributeType(int i) const override
Definition mesh_prediction_scheme_tex_coords_portable_decoder.h:62
Definition mesh_prediction_scheme_tex_coords_portable_predictor.h:33
Definition point_attribute.h:33
const Transform & transform() const
Definition prediction_scheme_decoder.h:80
const PointAttribute * attribute() const
Definition prediction_scheme_decoder.h:79
Definition rans_bit_decoder.h:28
bool StartDecoding(DecoderBuffer *source_buffer)
Definition rans_bit_decoder.cc:29
void EndDecoding()
Definition rans_bit_decoder.h:44
bool DecodeNextBit()
Definition rans_bit_decoder.cc:65
#define DRACO_DCHECK_EQ(a, b)
Definition macros.h:81
n< br > font size
Definition meshpage.php:3536
Definition attribute_octahedron_transform.cc:21
CornerIndex CornerIndex
Definition mesh_edgebreaker_encoder_impl.cc:35
PredictionSchemeMethod
Definition compression_shared.h:80
@ MESH_PREDICTION_TEX_COORDS_PORTABLE
Definition compression_shared.h:90
Definition GameApi_pl.cc:29382