50 void add(
const string & name,
const string & value);
54 int get_int(
const string & name);
86 std::map < string, string >
tags;
116 int read(
bool nodata =
false);
143 int read(
bool nodata =
false);
167 int read(
bool nodata =
false);
249 static bool is_valid(
const void *first_block);
static bool is_host_big_endian()
static void swap_bytes(T *data, size_t n=1)
swap the byte order of data with 'n' T-type elements.
Gatan DM3 file is a hierarchical binary image format.
DM3IO(const string &fname, IOMode rw_mode=READ_ONLY)
Gatan::TagTable * tagtable
static bool is_valid(const void *first_block)
int read_array_data(vector< int >item_types, bool nodata=false)
string read_string(int size)
int read_any(bool nodata=false)
TagData(FILE *data_file, TagTable *tagtable, const string &tagname)
vector< int > read_array_types()
string read_native(bool is_value_stored)
vector< int > read_struct_types()
int read(bool nodata=false)
int read(bool nodata=false)
TagEntry(FILE *data_file, TagTable *tagtable, TagGroup *parent_group)
TagGroup(FILE *data_file, TagTable *tagtable, const string &groupname)
int read(bool nodata=false)
static const char * IMAGE_HEIGHT_TAG
vector< int > datatype_list
int get_int(const string &name)
double get_double(const string &name)
string get_string(const string &name)
void become_host_endian(T *data, int n=1)
void add(const string &name, const string &value)
static const char * IMAGE_THUMB_INDEX_TAG
static const char * IMAGE_WIDTH_TAG
void set_thumb_index(int i)
void set_endian(bool big_endian)
void add_data(char *data)
float get_float(const string &name)
vector< char * > data_list
static const char * IMAGE_DATATYPE_TAG
std::map< string, string > tags
ImageIO classes are designed for reading/writing various electron micrography image formats,...
int to_em_datatype(int gatan_datatype)
const char * to_str(Gatan::TagData::Type type)