EMAN::Gatan::TagGroup Class Reference

#include <dm3io.h>

Collaboration diagram for EMAN::Gatan::TagGroup:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TagGroup (FILE *data_file, TagTable *tagtable, const string &groupname)
 ~TagGroup ()
int read (bool nodata=false)
string get_name () const
int get_entry_id ()

Private Attributes

FILE * in
TagTabletagtable
string name
int entry_id

Detailed Description

Definition at line 141 of file dm3io.h.


Constructor & Destructor Documentation

TagGroup::TagGroup ( FILE *  data_file,
TagTable tagtable,
const string &  groupname 
)

Definition at line 524 of file dm3io.cpp.

00525         :       in(data_file), tagtable(table), name(groupname), entry_id(0)
00526 {
00527 }

TagGroup::~TagGroup (  ) 

Definition at line 529 of file dm3io.cpp.

00530 {
00531 }


Member Function Documentation

int TagGroup::get_entry_id (  ) 

Definition at line 562 of file dm3io.cpp.

References entry_id.

Referenced by EMAN::Gatan::TagEntry::read().

00563 {
00564         int id = entry_id;
00565         entry_id++;
00566         return id;
00567 }

string TagGroup::get_name (  )  const

Definition at line 557 of file dm3io.cpp.

References name.

Referenced by EMAN::Gatan::TagEntry::read().

00558 {
00559         return name;
00560 }

int TagGroup::read ( bool  nodata = false  ) 

Definition at line 533 of file dm3io.cpp.

References EMAN::ByteOrder::become_big_endian(), in, LOGVAR, portable_fseek(), and tagtable.

Referenced by EMAN::Gatan::TagEntry::read().

00534 {
00535         LOGVAR("TagGroup::read()");
00536 
00537         int ntags = 0;
00538         portable_fseek(in, sizeof(char) * 2, SEEK_CUR);
00539         fread(&ntags, sizeof(ntags), 1, in);
00540         ByteOrder::become_big_endian(&ntags);
00541         LOGVAR("DM3: ntags = %d\n", ntags);
00542 
00543         int err = 0;
00544 
00545         for (int i = 0; i < ntags; i++) {
00546                 TagEntry tag_entry(in, tagtable, this);
00547                 err = tag_entry.read(nodata);
00548 
00549                 if (err) {
00550                         break;
00551                 }
00552         }
00553 
00554         return err;
00555 }


Member Data Documentation

int EMAN::Gatan::TagGroup::entry_id [private]

Definition at line 155 of file dm3io.h.

Referenced by get_entry_id().

FILE* EMAN::Gatan::TagGroup::in [private]

Definition at line 152 of file dm3io.h.

Referenced by read().

string EMAN::Gatan::TagGroup::name [private]

Definition at line 154 of file dm3io.h.

Referenced by get_name().

TagTable* EMAN::Gatan::TagGroup::tagtable [private]

Definition at line 153 of file dm3io.h.

Referenced by read().


The documentation for this class was generated from the following files:
Generated on Thu May 3 10:11:52 2012 for EMAN2 by  doxygen 1.4.7