49 void targa::writer::file_output_buffer<
52 m_stream << p.
components.
blue << p.components.green << p.components.red
53 << p.components.alpha;
89 header h(m_image.width(), m_image.height());
96 os.write(
reinterpret_cast<char*
>(&h),
sizeof(
header));
99 save_rle_true_color(os);
104 os.write(
reinterpret_cast<char*
>(&f),
sizeof(
footer));
111void claw::graphic::targa::writer::save_true_color(std::ostream& os)
const
113 file_output_buffer<rgba_pixel_8> output_buffer(os);
115 for(
const_iterator it = m_image.begin(); it != m_image.end(); ++it)
116 output_buffer.order_pixel_bytes(*it);
123void claw::graphic::targa::writer::save_rle_true_color(std::ostream& os)
const
125 rle32_encoder encoder;
126 rle32_encoder::output_buffer_type output_buffer(os);
128 for(
unsigned int y = 0; y != m_image.height(); ++y)
129 encoder.encode(m_image[y].begin(), m_image[y].end(), output_buffer);
Base class for iterators on an image.
A class to deal with images.
Pixel pixel_type
The type of the pixels in the input buffer.
void save(std::ostream &f, bool rle) const
Save the content of the image in a stream.
writer(const image &img)
Constructor.
A simple class to use as exception with string message.
This is the main namespace.
struct claw::graphic::rgba_pixel::@15::@17 components
Component by component representation.
component_type blue
Blue component.
A class for targa pictures.