25 static const char *
const extensions_bmp[] = {
28 static const int num_extensions_bmp =
sizeof(extensions_bmp) /
sizeof(
const char *);
42 string PNMFileTypeBMP::
52 get_num_extensions()
const {
53 return num_extensions_bmp;
60 string PNMFileTypeBMP::
61 get_extension(
int n)
const {
62 nassertr(n >= 0 && n < num_extensions_bmp,
string());
63 return extensions_bmp[n];
70 string PNMFileTypeBMP::
71 get_suggested_extension()
const {
80 has_magic_number()
const {
90 matches_magic_number(
const string &magic_number)
const {
91 nassertr(magic_number.size() >= 2,
false);
92 return (magic_number.substr(0, 2) ==
"BM");
101 make_reader(std::istream *file,
bool owns_file,
const string &magic_number) {
103 return new Reader(
this, file, owns_file, magic_number);
112 make_writer(std::ostream *file,
bool owns_file) {
114 return new Writer(
this, file, owns_file);
121 void PNMFileTypeBMP::
122 register_with_read_factory() {
124 register_factory(get_class_type(), make_PNMFileTypeBMP);