18#ifndef DRACO_COMPRESSION_ATTRIBUTES_PREDICTION_SCHEMES_PREDICTION_SCHEME_ENCODER_FACTORY_H_
19#define DRACO_COMPRESSION_ATTRIBUTES_PREDICTION_SCHEMES_PREDICTION_SCHEME_ENCODER_FACTORY_H_
22#ifdef DRACO_NORMAL_ENCODING_SUPPORTED
46template <
typename DataTypeT>
48 template <
class TransformT,
class MeshDataT>
49 std::unique_ptr<PredictionSchemeEncoder<DataTypeT, TransformT>>
operator()(
51 const TransformT &transform,
const MeshDataT &mesh_data,
52 uint16_t bitstream_version) {
54 return std::unique_ptr<PredictionSchemeEncoder<DataTypeT, TransformT>>(
57 attribute, transform, mesh_data));
59 return std::unique_ptr<PredictionSchemeEncoder<DataTypeT, TransformT>>(
61 DataTypeT, TransformT, MeshDataT>(attribute, transform,
64 return std::unique_ptr<PredictionSchemeEncoder<DataTypeT, TransformT>>(
66 DataTypeT, TransformT, MeshDataT>(attribute, transform,
69#ifdef DRACO_NORMAL_ENCODING_SUPPORTED
71 return std::unique_ptr<PredictionSchemeEncoder<DataTypeT, TransformT>>(
74 attribute, transform, mesh_data));
84template <
typename DataTypeT,
class TransformT>
85std::unique_ptr<PredictionSchemeEncoder<DataTypeT, TransformT>>
88 const TransformT &transform) {
104 const uint16_t bitstream_version = kDracoMeshBitstreamVersion;
108 mesh_encoder, method, att_id, transform, bitstream_version);
115 return std::unique_ptr<PredictionSchemeEncoder<DataTypeT, TransformT>>(
120template <
typename DataTypeT,
class TransformT>
121std::unique_ptr<PredictionSchemeEncoder<DataTypeT, TransformT>>
125 method, att_id, encoder, TransformT());
Definition mesh_encoder.h:27
Definition mesh_prediction_scheme_constrained_multi_parallelogram_encoder.h:43
Definition mesh_prediction_scheme_geometric_normal_encoder.h:31
Definition mesh_prediction_scheme_parallelogram_encoder.h:39
Definition mesh_prediction_scheme_tex_coords_portable_encoder.h:32
Definition point_attribute.h:33
Definition point_cloud_encoder.h:29
virtual EncodedGeometryType GetGeometryType() const
Definition point_cloud_encoder.h:41
const PointCloud * point_cloud() const
Definition point_cloud_encoder.h:77
const PointAttribute * attribute(int32_t att_id) const
Definition point_cloud.h:68
Definition prediction_scheme_delta_encoder.h:28
Definition prediction_scheme_encoder.h:36
ret($return)
Definition mesh_login_result.php:5
< h2 > I want smooth transition from jpg png webp to the engine</h2 > There s few options
Definition meshpage.php:1181
Definition attribute_octahedron_transform.cc:21
PredictionSchemeMethod SelectPredictionMethod(int att_id, const PointCloudEncoder *encoder)
Definition prediction_scheme_encoder_factory.cc:21
PredictionSchemeMethod GetPredictionMethodFromOptions(int att_id, const EncoderOptions &options)
Definition prediction_scheme_encoder_factory.cc:109
@ TRIANGULAR_MESH
Definition compression_shared.h:44
std::unique_ptr< PredictionSchemeT > CreateMeshPredictionScheme(const EncodingDataSourceT *source, PredictionSchemeMethod method, int att_id, const typename PredictionSchemeT::Transform &transform, uint16_t bitstream_version)
Definition prediction_scheme_factory.h:34
EncoderOptionsBase< int32_t > EncoderOptions
Definition encoder_options.h:97
std::unique_ptr< PredictionSchemeEncoder< DataTypeT, TransformT > > CreatePredictionSchemeForEncoder(PredictionSchemeMethod method, int att_id, const PointCloudEncoder *encoder, const TransformT &transform)
Definition prediction_scheme_encoder_factory.h:86
PredictionSchemeMethod
Definition compression_shared.h:80
@ MESH_PREDICTION_PARALLELOGRAM
Definition compression_shared.h:86
@ PREDICTION_NONE
Definition compression_shared.h:82
@ PREDICTION_UNDEFINED
Definition compression_shared.h:84
@ MESH_PREDICTION_CONSTRAINED_MULTI_PARALLELOGRAM
Definition compression_shared.h:89
@ MESH_PREDICTION_GEOMETRIC_NORMAL
Definition compression_shared.h:91
@ MESH_PREDICTION_TEX_COORDS_PORTABLE
Definition compression_shared.h:90
Definition prediction_scheme_encoder_factory.h:47
std::unique_ptr< PredictionSchemeEncoder< DataTypeT, TransformT > > operator()(PredictionSchemeMethod method, const PointAttribute *attribute, const TransformT &transform, const MeshDataT &mesh_data, uint16_t bitstream_version)
Definition prediction_scheme_encoder_factory.h:49