#include <amiraio.h>
Inheritance diagram for EMAN::AmiraIO:
Public Member Functions | |
AmiraIO (const string &filename, IOMode rw_mode=READ_ONLY) | |
~AmiraIO () | |
Static Public Member Functions | |
static bool | is_valid (const void *first_block) |
Public Attributes | |
DEFINE_IMAGEIO_FUNC | |
Private Attributes | |
string | filename |
IOMode | rw_mode |
FILE * | amira_file |
bool | is_big_endian |
bool | initialized |
EMUtil::EMDataType | dt |
int | nx |
int | ny |
int | nz |
float | pixel |
float | xorigin |
float | yorigin |
float | zorigin |
Static Private Attributes | |
static const char * | MAGIC = "# AmiraMesh" |
Its first line has some magic name to label it as an Amira image. The first few lines of the file is the ASCII header. Followed the header is the data in binary format. The data has nx x ny x nz pixels.
An Amira file has only 1 2D or 3D image.
Definition at line 52 of file amiraio.h.
AmiraIO::AmiraIO | ( | const string & | filename, | |
IOMode | rw_mode = READ_ONLY | |||
) |
Definition at line 52 of file amiraio.cpp.
00053 : filename(file), rw_mode(rw), amira_file(0), 00054 is_big_endian(true), initialized(false), dt(EMUtil::EM_UNKNOWN), 00055 nx(0), ny(0), nz(0), 00056 pixel(0), xorigin(0), yorigin(0), zorigin(0) 00057 { 00058 }
AmiraIO::~AmiraIO | ( | ) |
Definition at line 60 of file amiraio.cpp.
References amira_file.
00061 { 00062 if (amira_file) { 00063 fclose(amira_file); 00064 amira_file = 0; 00065 } 00066 }
bool AmiraIO::is_valid | ( | const void * | first_block | ) | [static] |
Definition at line 104 of file amiraio.cpp.
References EMAN::Util::check_file_by_magic(), ENTERFUNC, EXITFUNC, and MAGIC.
Referenced by EMAN::EMUtil::fast_get_image_type(), and EMAN::EMUtil::get_image_type().
00105 { 00106 ENTERFUNC; 00107 bool result = false; 00108 if (!first_block) { 00109 result = false; 00110 } 00111 else { 00112 result = Util::check_file_by_magic(first_block, MAGIC); 00113 } 00114 EXITFUNC; 00115 return result; 00116 }
FILE* EMAN::AmiraIO::amira_file [private] |
EMUtil::EMDataType EMAN::AmiraIO::dt [private] |
string EMAN::AmiraIO::filename [private] |
bool EMAN::AmiraIO::initialized [private] |
bool EMAN::AmiraIO::is_big_endian [private] |
const char * AmiraIO::MAGIC = "# AmiraMesh" [static, private] |
int EMAN::AmiraIO::nx [private] |
int EMAN::AmiraIO::ny [private] |
int EMAN::AmiraIO::nz [private] |
float EMAN::AmiraIO::pixel [private] |
IOMode EMAN::AmiraIO::rw_mode [private] |
float EMAN::AmiraIO::xorigin [private] |
float EMAN::AmiraIO::yorigin [private] |
float EMAN::AmiraIO::zorigin [private] |