cgv
packing_info.h
1
#pragma once
2
3
#include <cgv/data/lib_begin.h>
4
5
namespace
cgv
{
6
namespace
data {
7
22
class
CGV_API
packing_info
23
{
24
protected
:
25
bool
is_packed : 1;
26
unsigned
int
bd0 : 6;
27
unsigned
int
bd1 : 6;
28
unsigned
int
bd2 : 6;
29
unsigned
int
bd3 : 6;
30
unsigned
int
ca : 6;
32
bool
prepare_bit_operation(
unsigned
int
ci,
void
* ptr,
unsigned
int
&off,
unsigned
int
&bd,
unsigned
int
* &iptr)
const
;
33
bool
prepare_bit_operation(
unsigned
int
ci,
const
void
* ptr,
unsigned
int
&off,
unsigned
int
&bd,
const
unsigned
int
* &iptr)
const
;
34
unsigned
int
get_bit_offset(
unsigned
int
ci)
const
;
35
public
:
39
packing_info
(
unsigned
int
align = 1,
unsigned
int
d0 = 0,
unsigned
int
d1 = 0,
unsigned
int
d2 = 0,
unsigned
int
d3 = 0);
41
void
clear();
43
unsigned
int
get_bit_depth(
unsigned
int
ci)
const
;
45
void
set_bit_depth(
unsigned
int
ci,
unsigned
int
depth);
47
bool
is_packing()
const
;
49
void
set_packing(
bool
enable =
true
);
51
unsigned
int
get_component_alignment()
const
;
53
void
set_component_alignment(
unsigned
int
a);
55
static
unsigned
int
align(
unsigned
int
v,
unsigned
int
a);
57
int
get_signed(
unsigned
int
ci,
const
void
* ptr)
const
;
59
unsigned
int
get_unsigned(
unsigned
int
ci,
const
void
* ptr)
const
;
61
bool
set_signed(
unsigned
int
ci,
void
* ptr,
int
v)
const
;
63
bool
set_unsigned(
unsigned
int
ci,
void
* ptr,
unsigned
int
v)
const
;
65
bool
operator == (
const
packing_info
& pi)
const
;
67
bool
operator != (
const
packing_info
& pi)
const
;
68
};
69
70
}
71
}
72
73
#include <cgv/config/lib_end.h>
cgv::data::packing_info
Definition:
packing_info.h:23
cgv
the cgv namespace
Definition:
vr_calib.cxx:9
projects
git
cgv
cgv
data
packing_info.h
Generated by
1.8.18