GameApi
28
Library used by GameApi Builder tool
Loading...
Searching...
No Matches
prediction_scheme_decoder_interface.h
Go to the documentation of this file.
1
// Copyright 2016 The Draco Authors.
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
//
15
#ifndef DRACO_COMPRESSION_ATTRIBUTES_PREDICTION_SCHEMES_PREDICTION_SCHEME_DECODER_INTERFACE_H_
16
#define DRACO_COMPRESSION_ATTRIBUTES_PREDICTION_SCHEMES_PREDICTION_SCHEME_DECODER_INTERFACE_H_
17
18
#include "
draco/compression/attributes/prediction_schemes/prediction_scheme_interface.h
"
19
#include "
draco/core/decoder_buffer.h
"
20
21
// Prediction schemes can be used during encoding and decoding of attributes
22
// to predict attribute values based on the previously encoded/decoded data.
23
// See prediction_scheme.h for more details.
24
namespace
draco
{
25
26
// Abstract interface for all prediction schemes used during attribute encoding.
27
class
PredictionSchemeDecoderInterface
:
public
PredictionSchemeInterface
{
28
public
:
29
// Method that can be used to decode any prediction scheme specific data
30
// from the input buffer.
31
virtual
bool
DecodePredictionData
(
DecoderBuffer
*buffer) = 0;
32
};
33
34
// A specialized version of the prediction scheme interface for specific
35
// input and output data types.
36
// |entry_to_point_id_map| is the mapping between value entries to point ids
37
// of the associated point cloud, where one entry is defined as |num_components|
38
// values of the |in_data|.
39
// DataTypeT is the data type of input and predicted values.
40
// CorrTypeT is the data type used for storing corrected values.
41
template
<
typename
DataTypeT,
typename
CorrTypeT = DataTypeT>
42
class
PredictionSchemeTypedDecoderInterface
43
:
public
PredictionSchemeDecoderInterface
{
44
public
:
45
// Reverts changes made by the prediction scheme during encoding.
46
virtual
bool
ComputeOriginalValues
(
47
const
CorrTypeT *in_corr, DataTypeT *out_data,
int
size
,
48
int
num_components,
const
PointIndex
*entry_to_point_id_map) = 0;
49
};
50
51
}
// namespace draco
52
53
#endif
// DRACO_COMPRESSION_ATTRIBUTES_PREDICTION_SCHEMES_PREDICTION_SCHEME_DECODER_INTERFACE_H_
draco::DecoderBuffer
Definition
decoder_buffer.h:30
draco::PredictionSchemeDecoderInterface
Definition
prediction_scheme_decoder_interface.h:27
draco::PredictionSchemeDecoderInterface::DecodePredictionData
virtual bool DecodePredictionData(DecoderBuffer *buffer)=0
draco::PredictionSchemeInterface
Definition
prediction_scheme_interface.h:27
draco::PredictionSchemeTypedDecoderInterface
Definition
prediction_scheme_decoder_interface.h:43
draco::PredictionSchemeTypedDecoderInterface::ComputeOriginalValues
virtual bool ComputeOriginalValues(const CorrTypeT *in_corr, DataTypeT *out_data, int size, int num_components, const PointIndex *entry_to_point_id_map)=0
decoder_buffer.h
size
n< br > font size
Definition
meshpage.php:3536
draco
Definition
attribute_octahedron_transform.cc:21
prediction_scheme_interface.h
PointIndex
Definition
GameApi_pl.cc:29382
draco
compression
attributes
prediction_schemes
prediction_scheme_decoder_interface.h
Generated by
1.15.0