Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

EMAN::Df3IO Class Reference

#include <df3io.h>

Inheritance diagram for EMAN::Df3IO:

Inheritance graph
[legend]
Collaboration diagram for EMAN::Df3IO:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Df3IO (const string &filename, IOMode rw_mode=READ_ONLY)
 ~Df3IO ()

Static Public Member Functions

bool is_valid (const void *first_block, off_t file_size=0)

Public Attributes

 DEFINE_IMAGEIO_FUNC

Private Attributes

unsigned short nx
unsigned short ny
unsigned short nz
string filename
IOMode rw_mode
FILE * df3file
bool initialized
bool is_new_file

Constructor & Destructor Documentation

Df3IO::Df3IO const string &  filename,
IOMode  rw_mode = READ_ONLY
[explicit]
 

Definition at line 44 of file df3io.cpp.

00045 :       filename(df3_filename), rw_mode(rw), df3file(0),
00046         initialized(false), is_new_file(false)
00047 {
00048 }

Df3IO::~Df3IO  ) 
 

Definition at line 50 of file df3io.cpp.

References df3file.

00051 {
00052         if (df3file) {
00053                 fclose(df3file);
00054                 df3file = 0;
00055         }
00056 }


Member Function Documentation

bool Df3IO::is_valid const void *  first_block,
off_t  file_size = 0
[static]
 

Definition at line 263 of file df3io.cpp.

References data, EMAN::ByteOrder::is_data_big_endian(), nx, nx, ny, and ny.

Referenced by EMAN::EMUtil::get_image_type().

00264 {
00265         ENTERFUNC;
00266 
00267         if (!first_block) {
00268                 return false;
00269         }
00270 
00271         const unsigned short *data = static_cast < const unsigned short *>(first_block);
00272         unsigned short nx = data[0];
00273         unsigned short ny = data[1];
00274         unsigned short nz = data[2];
00275 
00276         if(ByteOrder::is_data_big_endian(&nx) && ByteOrder::is_data_big_endian(&ny) && ByteOrder::is_data_big_endian(&nz)) {
00277                 return true;
00278         }
00279 
00280         EXITFUNC;
00281         return false;
00282 }


Member Data Documentation

EMAN::Df3IO::DEFINE_IMAGEIO_FUNC
 

Definition at line 64 of file df3io.h.

FILE* EMAN::Df3IO::df3file [private]
 

Definition at line 70 of file df3io.h.

Referenced by ~Df3IO().

string EMAN::Df3IO::filename [private]
 

Definition at line 68 of file df3io.h.

bool EMAN::Df3IO::initialized [private]
 

Definition at line 71 of file df3io.h.

bool EMAN::Df3IO::is_new_file [private]
 

Definition at line 72 of file df3io.h.

unsigned short EMAN::Df3IO::nx [private]
 

Definition at line 67 of file df3io.h.

Referenced by is_valid().

unsigned short EMAN::Df3IO::ny [private]
 

Definition at line 67 of file df3io.h.

Referenced by is_valid().

unsigned short EMAN::Df3IO::nz [private]
 

Definition at line 67 of file df3io.h.

IOMode EMAN::Df3IO::rw_mode [private]
 

Definition at line 69 of file df3io.h.


The documentation for this class was generated from the following files:
Generated on Tue Jun 11 13:41:58 2013 for EMAN2 by  doxygen 1.3.9.1