15 static unsigned make_id(
const std::string& ascii);
19 fourcc(
unsigned _id = 0) : id(_id) {}
21 fourcc(
const std::string& s) : id(make_id(s)) {}
23 std::string to_string()
const;
25 bool operator == (
const std::string& s)
const;
27 bool operator != (
const std::string& s)
const;
31extern CGV_API std::ostream& operator << (std::ostream& os,
const fourcc& f);
37 virtual bool begin_list_chunk(
fourcc id,
unsigned size,
fourcc hdr);
42 virtual bool process_chunk_header(
fourcc id,
unsigned size,
void*& data_ptr);
44 virtual void process_chunk_data(
fourcc id,
unsigned size,
void* data_ptr);
46 virtual void end_list_chunk(
fourcc id,
unsigned size,
fourcc hdr);
55 bool read_chunk_info(
fourcc& f,
unsigned& size);
56 bool read_chunk_list(
unsigned size);
62 bool read(
const std::string& file_name);
68#include <cgv/config/lib_end.h>