◆ ~image_pattern()
| virtual image_pattern::~image_pattern |
( |
| ) |
|
|
virtualdefault |
◆ image_pattern() [1/3]
| image_pattern::image_pattern |
( |
| ) |
|
|
default |
◆ image_pattern() [2/3]
◆ image_pattern() [3/3]
◆ convert_rg48_to_rgba()
| virtual void image_pattern::convert_rg48_to_rgba |
( |
int | width, |
|
|
int | height, |
|
|
unsigned char * | data ) |
|
inlineprivatevirtual |
- Note
- in-place
Definition at line 147 of file video_pattern_generator.cpp.
147 {
148 for (int y = 0; y < height; ++y) {
149 for (int x = 0; x < width; ++x) {
150 unsigned char *in_pix = data + 6 * (y * width + x);
151 unsigned char *out_pix = data + 4 * (y * width + x);
152 *out_pix++ = in_pix[1];
153 *out_pix++ = in_pix[3];
154 *out_pix++ = in_pix[5];
155 *out_pix++ = 0xFFU;
156 }
157 }
158 }
Referenced by init().
◆ convert_rgba_to_rg48()
| virtual void image_pattern::convert_rgba_to_rg48 |
( |
int | width, |
|
|
int | height, |
|
|
unsigned char * | data ) |
|
inlineprivatevirtual |
- Note
- in-place
Definition at line 129 of file video_pattern_generator.cpp.
129 {
130 for (int y = height - 1; y >= 0; --y) {
131 for (int x = width - 1; x >= 0; --x) {
132 unsigned char *in_pix = data + 4 * (y * width + x);
133 unsigned char *out_pix = data + 6 * (y * width + x);
134 unsigned char r = *in_pix++;
135 unsigned char g = *in_pix++;
136 unsigned char b = *in_pix++;
137 *out_pix++ = 0;
138 *out_pix++ = r;
139 *out_pix++ = 0;
140 *out_pix++ = g;
141 *out_pix++ = 0;
142 *out_pix++ = b;
143 }
144 }
145 }
Referenced by init().
◆ create()
| unique_ptr< image_pattern > image_pattern::create |
( |
string const & | pattern, |
|
|
string const & | params ) |
|
static |
Definition at line 621 of file video_pattern_generator.cpp.
621 {
623 return make_unique<image_pattern_bars>(
params);
624 }
626 return make_unique<image_pattern_blank>(
params);
627 }
629 return make_unique<image_pattern_ebu_smpte_bars<0xFFU, 8>>();
630 }
632 return make_unique<image_pattern_gradient>(
params);
633 }
635 return make_unique<image_pattern_gradient2>(
params);
636 }
638 return make_unique<image_pattern_noise>();
639 }
641 return make_unique<image_pattern_raw>(
params);
642 }
644 return make_unique<image_pattern_smpte_bars>();
645 }
647 return make_unique<image_pattern_strips>(
params);
648 }
650 return make_unique<image_pattern_text>(
params);
651 }
653 return make_unique<image_pattern_uv_plane>(
params);
654 }
656 return make_unique<image_pattern_diagonal>(
params);
657 }
659}
Referenced by still_image_video_pattern_generator::still_image_video_pattern_generator().
◆ fill()
| virtual enum generator_depth image_pattern::fill |
( |
int | width, |
|
|
int | height, |
|
|
unsigned char * | data ) |
|
privatepure virtual |
- Return values
-
| bit | depth used by the generator (either 8 or 16) |
Implemented in image_pattern_bars, image_pattern_blank, image_pattern_diagonal, image_pattern_ebu_smpte_bars< f, columns >, image_pattern_ebu_smpte_bars< 0xBFU, 7 >, image_pattern_gradient2, image_pattern_gradient, image_pattern_noise, image_pattern_raw, image_pattern_smpte_bars, image_pattern_strips, image_pattern_text, and image_pattern_uv_plane.
Referenced by init().
◆ init()
| auto image_pattern::init |
( |
int | width, |
|
|
int | height, |
|
|
enum generator_depth | depth ) |
|
inlinenoexcept |
Definition at line 106 of file video_pattern_generator.cpp.
106 {
108 vector<unsigned char> out(data_len);
109 auto actual_bit_depth =
fill(width, height, out.data());
112 }
115 }
116 return out;
117 }
virtual void convert_rg48_to_rgba(int width, int height, unsigned char *data)
virtual enum generator_depth fill(int width, int height, unsigned char *data)=0
virtual void convert_rgba_to_rg48(int width, int height, unsigned char *data)
constexpr size_t headroom
References bits16, bits8, convert_rg48_to_rgba(), convert_rgba_to_rg48(), fill(), headroom, and rg48_bpp.
Referenced by image_pattern_bars::image_pattern_bars(), and image_pattern_blank::image_pattern_blank().
◆ operator=() [1/2]
◆ operator=() [2/2]
The documentation for this class was generated from the following file: