15#ifndef DRACO_COMPRESSION_ATTRIBUTES_ATTRIBUTES_DECODER_H_
16#define DRACO_COMPRESSION_ATTRIBUTES_ATTRIBUTES_DECODER_H_
45 return point_attribute_ids_[i];
48 return static_cast<int32_t
>(point_attribute_ids_.size());
51 return point_cloud_decoder_;
70 const int id_map_size =
71 static_cast<int>(point_attribute_to_local_id_map_.size());
72 if (point_attribute_id >= id_map_size) {
75 return point_attribute_to_local_id_map_[point_attribute_id];
85 std::vector<int32_t> point_attribute_ids_;
89 std::vector<int32_t> point_attribute_to_local_id_map_;
AttributesDecoderInterface()=default
bool Init(PointCloudDecoder *decoder, PointCloud *pc) override
Definition attributes_decoder.cc:24
int32_t GetLocalIdForPointAttribute(int32_t point_attribute_id) const
Definition attributes_decoder.h:69
virtual ~AttributesDecoder()=default
bool DecodeAttributesDecoderData(DecoderBuffer *in_buffer) override
Definition attributes_decoder.cc:30
int32_t GetNumAttributes() const override
Definition attributes_decoder.h:47
int32_t GetAttributeId(int i) const override
Definition attributes_decoder.h:44
virtual bool DecodeDataNeededByPortableTransforms(DecoderBuffer *in_buffer)
Definition attributes_decoder.h:78
PointCloudDecoder * GetDecoder() const override
Definition attributes_decoder.h:50
virtual bool DecodePortableAttributes(DecoderBuffer *in_buffer)=0
bool DecodeAttributes(DecoderBuffer *in_buffer) override
Definition attributes_decoder.h:55
AttributesDecoder()
Definition attributes_decoder.cc:21
virtual bool TransformAttributesToOriginalFormat()
Definition attributes_decoder.h:81
Definition decoder_buffer.h:30
Definition point_cloud_decoder.h:28
Definition point_cloud.h:29
Definition attribute_octahedron_transform.cc:21