emdata_metadata.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

EMData * get_fft_amplitude ()
 $Id$
EMData * get_fft_amplitude2D ()
 return the amplitudes of the 2D FFT including the left half PRB
Exceptions:
ImageFormatException If the image is not a complex image.

EMData * get_fft_phase ()
 return the phases of the FFT including the left half
float * get_data () const
 Get the image pixel density data in a 1D float array.
const float *const get_const_data () const
 Get the image pixel density data in a 1D float array - const version of get_data.
void set_data (float *data, const int x, const int y, const int z)
 Set the data explicitly data pointer must be allocated using malloc!
void write_data (string fsp, size_t loc, const Region *const area=0, const int file_nx=0, const int file_ny=0, const int file_nz=0)
 Dump the image pixel data in native byte order to a disk file.
void read_data (string fsp, size_t loc, const Region *area=0, const int file_nx=0, const int file_ny=0, const int file_nz=0)
 Read the image pixel data in native byte order from a disk file.
void update ()
 Mark EMData as changed, statistics, etc will be updated at need.
bool has_ctff () const
 check whether the image physical file has the CTF info or not.
float calc_center_density ()
 Calculates the density value at the peak of the image histogram, sort of like the mode of the density.
float calc_sigma_diff ()
 Calculates sigma above and below the mean and returns the difference between them.
IntPoint calc_min_location () const
 Calculates the coordinates of the minimum-value pixel.
IntPoint calc_max_location () const
 Calculates the coordinates of the maximum-value pixel.
IntPoint calc_max_location_wrap (const int maxshiftx=-1, const int maxshifty=-1, const int maxshiftz=-1)
 Calculates the wrapped coordinates of the maximum value This function is useful in the context of Fourier correlation you can call this function to find the correct translational shift when using calc_ccf etc.
FloatPoint calc_center_of_mass ()
 Calculate the center of mass using an algorithm written by S Ludtke.
int calc_min_index () const
 Calculates the index of minimum-value pixel when assuming all pixels are in a 1D array.
int calc_max_index () const
 Calculates the index of maximum-value pixel when assuming all pixels are in a 1D array.
vector< Pixel > calc_highest_locations (float threshold)
 Calculate and return a sorted list of pixels whose values are above a specified threshold.
float get_edge_mean () const
 Calculates the mean pixel values around the (1 pixel) edge of the image.
float get_circle_mean ()
 Calculates the circular edge mean by applying a circular mask on 'this' image.
Ctf * get_ctf () const
 Get ctf parameter of this image.
void set_ctf (Ctf *ctf)
 Set the CTF parameter of this image.
Vec3f get_translation () const
 Get 'this' image's translation vector from the original location.
void set_translation (const Vec3f &t)
 Set 'this' images' translation vector from the original location.
void set_translation (float dx, float dy, float dz)
 Set 'this' images' translation vector from the original location.
Transform3D get_transform () const
 Get the 3D orientation of 'this' image.
void set_rotation (float az, float alt, float phi)
 Define the 3D orientation of this particle, also used to indicate relative rotations for reconstructions.
void set_rotation (const Transform3D &t3d)
 Define the 3D orientation of this particle Orientation information is extracted from a Transform3D object and stored internally in EMAN (az,alt,phi) format.
void set_size (int nx, int ny=1, int nz=1)
 Resize this EMData's main board memory pointer.
void set_complex_size (int nx, int ny=1, int nz=1)
 Resize 'this' complex image.
void set_path (const string &new_path)
 Set the path.
void set_pathnum (int n)
 Set the number of paths.
MArray2D get_2dview () const
 Get image raw pixel data in a 2D multi-array format.
MArray3D get_3dview () const
 Get image raw pixel data in a 3D multi-array format.
MCArray2D get_2dcview () const
 Get complex image raw pixel data in a 2D multi-array format.
MCArray3D get_3dcview () const
 Get complex image raw pixel data in a 3D multi-array format.
MCArray3D * get_3dcviewptr () const
 Get pointer to a complex image raw pixel data in a 3D multi-array format.
MArray2D get_2dview (int x0, int y0) const
 Get image raw pixel data in a 2D multi-array format.
MArray3D get_3dview (int x0, int y0, int z0) const
 Get image raw pixel data in a 3D multi-array format.
MCArray2D get_2dcview (int x0, int y0) const
 Get complex image raw pixel data in a 2D multi-array format.
MCArray3D get_3dcview (int x0, int y0, int z0) const
 Get complex image raw pixel data in a 3D multi-array format.
EMObject get_attr (const string &attr_name) const
 The generic way to get any image header information given a header attribute name.
EMObject get_attr_default (const string &attr_name, const EMObject &em_obj=EMObject()) const
 The generic way to get any image header information given a header attribute name.
void set_attr (const string &key, EMObject val)
 Set a header attribute's value.
void set_attr_python (const string &key, EMObject val)
 Set a header attribute's value from Python.
bool has_attr (const string &key) const
 Ask if the header has a particular attribute.
Dict get_attr_dict () const
 Get the image attribute dictionary containing all the image attribute names and attribute values.
void set_attr_dict (const Dict &new_dict)
 Merge the new values with the existing dictionary.
void del_attr (const string &attr_name)
 Delete the attribute from dictionary.
void del_attr_dict (const vector< string > &del_keys)
 Delete the attributes from the dictionary.
int get_xsize () const
 Get the image x-dimensional size.
int get_ysize () const
 Get the image y-dimensional size.
int get_zsize () const
 Get the image z-dimensional size.
size_t get_size () const
 Get the number of allocated floats in the image (nx*ny*nz).
vector< float > get_data_as_vector () const
 Get the pixel data as a vector.
int get_ndim () const
 Get image dimension.
bool is_shuffled () const
 Has this image been shuffled?
bool is_FH () const
 Is this a FH image?
bool is_complex () const
 Is this a complex image?
bool is_real () const
 Is this a real image?
void set_shuffled (bool is_shuffled)
 Mark this image as a shuffled image.
void set_FH (bool is_FH)
 Mark this complex image as a FH image.
void set_complex (bool is_complex)
 Mark this image as a complex image.
bool is_complex_x () const
 Is this image a 1D FFT image in X direction?
void set_complex_x (bool is_complex_x)
 Marks this image a 1D FFT image in X direction.
bool is_flipped () const
 Is this image flipped?
void set_flipped (bool is_flipped)
 Mark this image as flipped.
bool is_ri () const
 Is this image a real/imaginary format complex image?
void set_ri (bool is_ri)
 Mark this image as a real/imaginary format complex image.
bool is_fftpadded () const
 Is this image already extended along x for ffts?
void set_fftpad (bool is_fftpadded)
 Mark this image as already extended along x for ffts.
bool is_fftodd () const
 Does this image correspond to a (real-space) odd nx?
void set_fftodd (bool is_fftodd)
 Mark this image as having (real-space) odd nx.
void set_nxc (int nxc)
 Set the number of complex elements along x.
int get_flags () const
void set_flags (int f)
int get_changecount () const
void set_changecount (int c)
int get_xoff () const
int get_yoff () const
int get_zoff () const
void set_xyzoff (int x, int y, int z)
void scale_pixel (float scale_factor) const
 Scale the angstrom per pixel of this image by a uniform amount Alters the EMData metadata I had to make this function public for access from the Processors (David Woolford).
string get_path () const
int get_pathnum () const
std::string get_data_pickle () const
void set_data_pickle (std::string vf)
int get_supp_pickle () const
void set_supp_pickle (int i)
vector< Vec3i > mask_contig_region (const float &val, const Vec3i &seed)
void set_attr_dict_explicit (const Dict &new_dict)
 Make the attributes of this EMData exactly equal to the argument dictionary Originally introduced because set_attr_dict does automatic resizing, which is undersirable in some circumstances.


Function Documentation

float calc_center_density (  ) 

Calculates the density value at the peak of the image histogram, sort of like the mode of the density.

Returns:
The density value at the peak of the image histogram.

FloatPoint calc_center_of_mass (  ) 

Calculate the center of mass using an algorithm written by S Ludtke.

Author:
David Woolford
Date:
Fri Jun 6th 2008

vector<Pixel> calc_highest_locations ( float  threshold  ) 

Calculate and return a sorted list of pixels whose values are above a specified threshold.

The pixels are sorted from high to low.

Parameters:
threshold The specified pixel value. Returned pixels should have higher values than it.
Returns:
A sorted list of pixels with their values, and locations. Their values are higher than threshold.

int calc_max_index (  )  const

Calculates the index of maximum-value pixel when assuming all pixels are in a 1D array.

Returns:
Index of the maximum-value pixel.

IntPoint calc_max_location (  )  const

Calculates the coordinates of the maximum-value pixel.

Returns:
The coordinates of the maximum-value pixel.

IntPoint calc_max_location_wrap ( const int  maxshiftx = -1,
const int  maxshifty = -1,
const int  maxshiftz = -1 
)

Calculates the wrapped coordinates of the maximum value This function is useful in the context of Fourier correlation you can call this function to find the correct translational shift when using calc_ccf etc.

Returns:
the wrapped coordinates of the maximum
Author:
David Woolford
Date:
Fri Jun 6th 2008

int calc_min_index (  )  const

Calculates the index of minimum-value pixel when assuming all pixels are in a 1D array.

Returns:
Index of the minimum-value pixel.

IntPoint calc_min_location (  )  const

Calculates the coordinates of the minimum-value pixel.

Returns:
The coordinates of the minimum-value pixel.

float calc_sigma_diff (  ) 

Calculates sigma above and below the mean and returns the difference between them.

Returns:
The difference between sigma above and below the mean.

void del_attr ( const string &  attr_name  ) 

Delete the attribute from dictionary.

Parameters:
attr_name the attribute name to be removed

void del_attr_dict ( const vector< string > &  del_keys  ) 

Delete the attributes from the dictionary.

Parameters:
del_keys the attrutes' names to be removed

MCArray2D get_2dcview ( int  x0,
int  y0 
) const

Get complex image raw pixel data in a 2D multi-array format.

The data coordinates is translated by (x0,y0) such that array[y0][x0] points to the pixel at the origin location. the data coordiates translated by (x0,y0). The array shares the memory space with the image data.

It should be used on 2D image only.

Parameters:
x0 X-axis translation amount.
y0 Y-axis translation amount.
Returns:
2D multi-array format of the raw data.

MCArray2D get_2dcview (  )  const

Get complex image raw pixel data in a 2D multi-array format.

The array shares the memory space with the image data.

It should be used on 2D image only.

Returns:
2D multi-array format of the raw data.

MArray2D get_2dview ( int  x0,
int  y0 
) const

Get image raw pixel data in a 2D multi-array format.

The data coordinates is translated by (x0,y0) such that array[y0][x0] points to the pixel at the origin location. the data coordiates translated by (x0,y0). The array shares the memory space with the image data.

It should be used on 2D image only.

Parameters:
x0 X-axis translation amount.
y0 Y-axis translation amount.
Returns:
2D multi-array format of the raw data.

MArray2D get_2dview (  )  const

Get image raw pixel data in a 2D multi-array format.

The array shares the memory space with the image data. Notice: the subscription order is d[y][x] in Python, it's d[x][y] in C++

It should be used on 2D image only.

Returns:
2D multi-array format of the raw data.

MCArray3D get_3dcview ( int  x0,
int  y0,
int  z0 
) const

Get complex image raw pixel data in a 3D multi-array format.

The data coordinates is translated by (x0,y0,z0) such that array[z0][y0][x0] points to the pixel at the origin location. the data coordiates translated by (x0,y0,z0). The array shares the memory space with the image data.

It should be used on 3D image only.

Parameters:
x0 X-axis translation amount.
y0 Y-axis translation amount.
z0 Z-axis translation amount.
Returns:
3D multi-array format of the raw data.

MCArray3D get_3dcview (  )  const

Get complex image raw pixel data in a 3D multi-array format.

The array shares the memory space with the image data.

It should be used on 3D image only.

Returns:
3D multi-array format of the raw data.

MCArray3D* get_3dcviewptr (  )  const

Get pointer to a complex image raw pixel data in a 3D multi-array format.

The array shares the memory space with the image data.

It should be used on 3D image only.

Returns:
Pointer to a 3D multi-array format of the raw data.

MArray3D get_3dview ( int  x0,
int  y0,
int  z0 
) const

Get image raw pixel data in a 3D multi-array format.

The data coordinates is translated by (x0,y0,z0) such that array[z0][y0][x0] points to the pixel at the origin location. the data coordiates translated by (x0,y0,z0). The array shares the memory space with the image data.

It should be used on 3D image only.

Parameters:
x0 X-axis translation amount.
y0 Y-axis translation amount.
z0 Z-axis translation amount.
Returns:
3D multi-array format of the raw data.

MArray3D get_3dview (  )  const

Get image raw pixel data in a 3D multi-array format.

The array shares the memory space with the image data. Notice: the subscription order is d[z][y][x] in Python, it's d[x][y][z] in C++ --grant Tang

It should be used on 3D image only.

Returns:
3D multi-array format of the raw data.

EMObject get_attr ( const string &  attr_name  )  const

The generic way to get any image header information given a header attribute name.

If the attribute does not exist, it will raise an exception.

Parameters:
attr_name The header attribute name.
Returns:
The attribute value.
Exceptions:
NotExistingObjectException when attribute not exist

Referenced by is_fftpadded(), is_FH(), is_flipped(), is_shuffled(), and EMAN::KMeansAnalyzer::reseed().

EMObject get_attr_default ( const string &  attr_name,
const EMObject &  em_obj = EMObject() 
) const

The generic way to get any image header information given a header attribute name.

If the attribute does not exist, it will return a default EMObject() object, which will be converted to None in Python. Or return any object user submit.

Parameters:
attr_name The header attribute name.
em_obj the default attribute to return when this attr_name not exist in attr_dict
Returns:
The attribute value, default to None.

Dict get_attr_dict (  )  const

Get the image attribute dictionary containing all the image attribute names and attribute values.

Returns:
The image attribute dictionary containing all attribute names and values.

int get_changecount (  )  const [inline]

Definition at line 918 of file emdata_metadata.h.

00919 {
00920         return changecount;
00921 }

float get_circle_mean (  ) 

Calculates the circular edge mean by applying a circular mask on 'this' image.

Returns:
The circular edge mean.

const float* const get_const_data (  )  const [inline]

Get the image pixel density data in a 1D float array - const version of get_data.

Returns:
The image pixel density data.

Definition at line 73 of file emdata_metadata.h.

References get_data().

00073 { return get_data(); }

Ctf* get_ctf (  )  const

Get ctf parameter of this image.

Returns:
The ctf parameter.

float* get_data (  )  const

Get the image pixel density data in a 1D float array.

Returns:
The image pixel density data.

Referenced by cmplx(), get_const_data(), get_data_as_vector(), get_value_at(), operator()(), set_value_at(), and set_value_at_fast().

vector<float> get_data_as_vector (  )  const [inline]

Get the pixel data as a vector.

Returns:
a vector containing the pixel data.

Definition at line 588 of file emdata_metadata.h.

References copy(), data, get_data(), get_size(), and v.

00588                                                 {
00589         int size = get_size();
00590         vector<float> v(size);
00591         float* data = get_data();
00592         std::copy(data,data+size,v.begin());
00593         return v;
00594 }

std::string get_data_pickle (  )  const

float get_edge_mean (  )  const

Calculates the mean pixel values around the (1 pixel) edge of the image.

Returns:
The mean pixel values around the (1 pixel) edge.

EMData* get_fft_amplitude (  ) 

$Id$

This file is a part of "emdata.h", to use functions in this file, you should "#include "emdata.h", NEVER directly include this file. return the amplitudes of the FFT including the left half

Exceptions:
ImageFormatException If the image is not a complex image.
Returns:
The current FFT image's amplitude image.

EMData* get_fft_amplitude2D (  ) 

return the amplitudes of the 2D FFT including the left half PRB

Exceptions:
ImageFormatException If the image is not a complex image.

Returns:
The current FFT image's amplitude image.

EMData* get_fft_phase (  ) 

return the phases of the FFT including the left half

Exceptions:
ImageFormatException If the image is not a complex image.
Returns:
The current FFT image's phase image.

int get_flags (  )  const [inline]

Definition at line 908 of file emdata_metadata.h.

00909 {
00910         return flags;
00911 }

int get_ndim (  )  const [inline]

Get image dimension.

Returns:
image dimension.

Definition at line 599 of file emdata_metadata.h.

References ny.

00600 {
00601         if (nz <= 1) {
00602                 if (ny <= 1) {
00603                         return 1;
00604                 }
00605                 else {
00606                         return 2;
00607                 }
00608         }
00609 
00610         return 3;
00611 }

string get_path (  )  const [inline]

Definition at line 957 of file emdata_metadata.h.

00958 {
00959         return path;
00960 }

int get_pathnum (  )  const [inline]

Definition at line 962 of file emdata_metadata.h.

00963 {
00964         return pathnum;
00965 }

size_t get_size (  )  const [inline]

Get the number of allocated floats in the image (nx*ny*nz).

Returns:
nx*ny*nz

Definition at line 580 of file emdata_metadata.h.

References nx, and ny.

Referenced by get_data_as_vector().

00581 {
00582         return (size_t)nx*(size_t)ny*(size_t)nz;
00583 }

int get_supp_pickle (  )  const

Transform3D get_transform (  )  const [inline]

Get the 3D orientation of 'this' image.

Returns:
The 3D orientation of 'this' image.

Definition at line 272 of file emdata_metadata.h.

00273 {
00274         return Transform3D( (float)attr_dict["euler_alt"],
00275                             (float)attr_dict["euler_az"],
00276                             (float)attr_dict["euler_phi"]);
00277 }

Vec3f get_translation (  )  const [inline]

Get 'this' image's translation vector from the original location.

Returns:
'this' image's translation vector from the original location.

Definition at line 241 of file emdata_metadata.h.

00242 {
00243         return all_translation;
00244 }

int get_xoff (  )  const [inline]

Definition at line 928 of file emdata_metadata.h.

00929 {
00930         return xoff;
00931 }

int get_xsize (  )  const [inline]

Get the image x-dimensional size.

Returns:
Image x-dimensional size.

Definition at line 553 of file emdata_metadata.h.

References nx.

Referenced by EMAN::KMeansAnalyzer::analyze(), EMAN::MarchingCubes::draw_cube(), main(), and median().

00554 {
00555         return nx;
00556 }

int get_yoff (  )  const [inline]

Definition at line 933 of file emdata_metadata.h.

00934 {
00935         return yoff;
00936 }

int get_ysize (  )  const [inline]

Get the image y-dimensional size.

Returns:
Image y-dimensional size.

Definition at line 562 of file emdata_metadata.h.

References ny.

Referenced by EMAN::KMeansAnalyzer::analyze(), EMAN::MarchingCubes::draw_cube(), and median().

00563 {
00564         return ny;
00565 }

int get_zoff (  )  const [inline]

Definition at line 938 of file emdata_metadata.h.

00939 {
00940         return zoff;
00941 }

int get_zsize (  )  const [inline]

Get the image z-dimensional size.

Returns:
Image z-dimensional size.

Definition at line 571 of file emdata_metadata.h.

Referenced by EMAN::KMeansAnalyzer::analyze(), EMAN::MarchingCubes::draw_cube(), and median().

00572 {
00573         return nz;
00574 }

bool has_attr ( const string &  key  )  const [inline]

Ask if the header has a particular attribute.

Parameters:
key the header attribute name
Returns:
whether or not the header has the name as a key/value entry

Definition at line 515 of file emdata_metadata.h.

Referenced by has_ctff(), is_fftpadded(), is_FH(), and is_shuffled().

00515                                               {
00516         return attr_dict.has_key(key);
00517 }

bool has_ctff (  )  const [inline]

check whether the image physical file has the CTF info or not.

Returns:
True if it has the CTF information. Otherwise, false.

Definition at line 132 of file emdata_metadata.h.

References has_attr().

00133 {
00134         if (this->has_attr("ctf")) {
00135                 return true;
00136         }
00137         else {
00138                 return false;
00139         }
00140 }

bool is_complex (  )  const [inline]

Is this a complex image?

Returns:
Whether this is a complex image or not.

Definition at line 651 of file emdata_metadata.h.

Referenced by is_real(), EMAN::TestUtil::make_image_file_by_mode(), and EMAN::TestUtil::verify_image_file_by_mode().

00652 {
00653         if(attr_dict.has_key("is_complex")) {
00654                 if (int(attr_dict["is_complex"])) {
00655                         return true;
00656                 }
00657                 else {
00658                         return false;
00659                 }
00660         }
00661         else {
00662                 return false;
00663         }
00664 }

bool is_complex_x (  )  const [inline]

Is this image a 1D FFT image in X direction?

Returns:
Whether this image is a 1D FFT image in X direction.

Definition at line 730 of file emdata_metadata.h.

00731 {
00732         if(attr_dict.has_key("is_complex_x")) {
00733                 if (int(attr_dict["is_complex_x"])) {
00734                         return true;
00735                 }
00736                 else {
00737                         return false;
00738                 }
00739         }
00740         else {
00741                 return false;
00742         }
00743 }

bool is_fftodd (  )  const [inline]

Does this image correspond to a (real-space) odd nx?

Returns:
Whether this image has a (real-space) odd nx.

Definition at line 867 of file emdata_metadata.h.

Referenced by EMAN::FourierReconstructor::finish(), EMAN::FourierReconstructor::setup(), and EMAN::FourierReconstructorSimple2D::setup().

00868 {
00869         if(flags & EMDATA_FFTODD) {
00870                 return true;
00871         }
00872         else if( attr_dict.has_key("is_fftodd") && (int)attr_dict["is_fftodd"] == 1 ) {
00873                 return true;
00874         }
00875         else {
00876                 return false;
00877         }
00878 }

bool is_fftpadded (  )  const [inline]

Is this image already extended along x for ffts?

Returns:
Whether this image is extended along x for ffts.

Definition at line 834 of file emdata_metadata.h.

References get_attr(), and has_attr().

00835 {
00836         if (flags & EMDATA_PAD) {
00837                 return true;
00838         }
00839 
00840         if(has_attr("is_fftpad")) {
00841                 return get_attr("is_fftpad");
00842         }
00843 
00844         return false;
00845 
00846 }

bool is_FH (  )  const [inline]

Is this a FH image?

Returns:
Whether this is a FH image or not.

Definition at line 634 of file emdata_metadata.h.

References get_attr(), and has_attr().

00635 {  //     PRB
00636         if (flags & EMDATA_FH) {
00637                 return true;
00638         }
00639 
00640         if(has_attr("is_fh")) {
00641                 return get_attr("is_fh");
00642         }
00643 
00644         return false;
00645 }

bool is_flipped (  )  const [inline]

Is this image flipped?

Returns:
Whether this image is flipped or not.

Definition at line 764 of file emdata_metadata.h.

References get_attr().

00765 {
00766         if (flags & EMDATA_FLIP) { //keep here for back compatibility
00767                 return true;
00768         }
00769 
00770         if(attr_dict.has_key("is_flipped")) {
00771                 if(get_attr("is_flipped")) {
00772                         return true;
00773                 }
00774         }
00775 
00776         return false;
00777 
00778 }

bool is_real (  )  const [inline]

Is this a real image?

Returns:
Whether this is image is real (not complex) or not.

Definition at line 670 of file emdata_metadata.h.

References is_complex().

00671 {
00672         return !is_complex();
00673 }

bool is_ri (  )  const [inline]

Is this image a real/imaginary format complex image?

Returns:
Whether this image is real/imaginary format complex image.

Definition at line 800 of file emdata_metadata.h.

00801 {
00802         if(attr_dict.has_key("is_complex_ri")) {
00803                 if (int(attr_dict["is_complex_ri"])) {
00804                         return true;
00805                 }
00806                 else {
00807                         return false;
00808                 }
00809         }
00810         else {
00811                 return false;
00812         }
00813 }

bool is_shuffled (  )  const [inline]

Has this image been shuffled?

Returns:
Whether this image has been shuffled to put origin in the center.

Definition at line 617 of file emdata_metadata.h.

References get_attr(), and has_attr().

00618 {  //     PRB
00619         if (flags & EMDATA_SHUFFLE) {
00620                 return true;
00621         }
00622 
00623         if(has_attr("is_shuffled")) {
00624                 return get_attr("is_shuffled");
00625         }
00626 
00627         return false;
00628 }

vector<Vec3i> mask_contig_region ( const float &  val,
const Vec3i &  seed 
)

void read_data ( string  fsp,
size_t  loc,
const Region *  area = 0,
const int  file_nx = 0,
const int  file_ny = 0,
const int  file_nz = 0 
)

Read the image pixel data in native byte order from a disk file.

The image should already have the correct dimensions.

Parameters:
fsp The filename to read the image data from
loc Location to seek to in the file before writing (size_t)
area The image region you want to read, default 0 means read the whole image
file_nx Image x size.
file_ny Image y size.
file_nz Image z size.
Author:
Steve Ludtke
Date:
Mon Jun 23, 2008

void scale_pixel ( float  scale_factor  )  const

Scale the angstrom per pixel of this image by a uniform amount Alters the EMData metadata I had to make this function public for access from the Processors (David Woolford).

Author:
Unknown

void set_attr ( const string &  key,
EMObject  val 
)

Set a header attribute's value.

Parameters:
key The header attribute name.
val The attribute value.

Referenced by set_fftodd(), set_fftpad(), set_FH(), set_flipped(), and set_shuffled().

void set_attr_dict ( const Dict &  new_dict  ) 

Merge the new values with the existing dictionary.

Parameters:
new_dict The new attribute dictionary.

void set_attr_dict_explicit ( const Dict &  new_dict  )  [private]

Make the attributes of this EMData exactly equal to the argument dictionary Originally introduced because set_attr_dict does automatic resizing, which is undersirable in some circumstances.

Parameters:
new_dict The attribute dictionary that will become this image's attribute dictionary.

void set_attr_python ( const string &  key,
EMObject  val 
)

Set a header attribute's value from Python.

Parameters:
key The header attribute name.
val The attribute value.

void set_changecount ( int  c  )  [inline]

Definition at line 923 of file emdata_metadata.h.

00924 {
00925         changecount = c;
00926 }

void set_complex ( bool  is_complex  )  [inline]

Mark this image as a complex image.

Parameters:
is_complex If true, a complex image. If false, a real image.

Definition at line 715 of file emdata_metadata.h.

Referenced by EMAN::Util::TwoDTestFunc().

00716 {
00717         if (is_complex) {
00718                 attr_dict["is_complex"] = int(1);
00719         }
00720         else {
00721                 attr_dict["is_complex"] = int(0);
00722         }
00723 }

void set_complex_size ( int  nx,
int  ny = 1,
int  nz = 1 
)

Resize 'this' complex image.

Parameters:
nx x size of this image.
ny y size of this image.
nz z size of this image.

Definition at line 338 of file emdata_metadata.h.

References ny, and set_size().

00338                                                   {
00339         set_size(nx*2, ny, nz);
00340 }

void set_complex_x ( bool  is_complex_x  )  [inline]

Marks this image a 1D FFT image in X direction.

Parameters:
is_complex_x If true, a 1D FFT image in X direction; If false, not such an image.

Definition at line 750 of file emdata_metadata.h.

00751 {
00752         if (is_complex_x) {
00753                 attr_dict["is_complex_x"] = int(1);
00754         }
00755         else {
00756                 attr_dict["is_complex_x"] = int(0);
00757         }
00758 }

void set_ctf ( Ctf *  ctf  ) 

Set the CTF parameter of this image.

Parameters:
ctf The CTF parameter object.

void set_data ( float *  data,
const int  x,
const int  y,
const int  z 
) [inline]

Set the data explicitly data pointer must be allocated using malloc!

Parameters:
data a pointer to the pixel data which is stored in memory. Takes possession
x the number of pixels in the x direction
y the number of pixels in the y direction
z the number of pixels in the z direction

Definition at line 82 of file emdata_metadata.h.

References nx, ny, rdata, and update().

00082                                                                          {
00083         if (rdata) { EMUtil::em_free(rdata); rdata = 0; }
00084 #ifdef EMAN2_USING_CUDA
00085         free_cuda_memory();
00086 #endif
00087         rdata = data;
00088         nx = x; ny = y; nz = z;
00089         nxy = nx*ny;
00090         update();
00091 }

void set_data_pickle ( std::string  vf  ) 

void set_fftodd ( bool  is_fftodd  )  [inline]

Mark this image as having (real-space) odd nx.

Parameters:
is_fftodd If true, mark as nx odd; If false, mark as nx not odd.

Definition at line 885 of file emdata_metadata.h.

References set_attr().

00886 {
00887         if (is_fftodd) {
00888                 set_attr("is_fftodd", int(1));
00889         }
00890         else {
00891                 set_attr("is_fftodd", int(0));
00892         }
00893 }

void set_fftpad ( bool  is_fftpadded  )  [inline]

Mark this image as already extended along x for ffts.

Parameters:
is_fftpadded If true, mark as padded along x; If false, mark as not padded along x.

Definition at line 853 of file emdata_metadata.h.

References set_attr().

00854 {
00855         if (is_fftpadded) {
00856                 set_attr("is_fftpad", int(1));
00857         }
00858         else {
00859                 set_attr("is_fftpad", int(0));
00860         }
00861 }

void set_FH ( bool  is_FH  )  [inline]

Mark this complex image as a FH image.

Parameters:
is_FH If true, a FH image. If false, not a FH image.

Definition at line 698 of file emdata_metadata.h.

References set_attr().

00699 { // PRB
00700         if (is_FH) {
00701 //              flags |=  EMDATA_FH;
00702                 set_attr("is_fh", (int)1);
00703         }
00704         else {
00705 //              flags &= ~EMDATA_FH;
00706                 set_attr("is_fh", (int)0);
00707         }
00708 }

void set_flags ( int  f  )  [inline]

Definition at line 913 of file emdata_metadata.h.

00914 {
00915         flags = f;
00916 }

void set_flipped ( bool  is_flipped  )  [inline]

Mark this image as flipped.

Parameters:
is_flipped If true, mark this image as flipped; If false, mark this image as not flipped.

Definition at line 785 of file emdata_metadata.h.

References set_attr().

00786 {
00787         if (is_flipped) {
00788                 set_attr("is_flipped", (int)1);
00789         }
00790         else {
00791                 set_attr("is_flipped", (int)0);
00792         }
00793 }

void set_nxc ( int  nxc  )  [inline]

Set the number of complex elements along x.

Parameters:
nxc is the number of complex elements along x.

Definition at line 899 of file emdata_metadata.h.

00900 {
00901         attr_dict["nxc"] = nxc;
00902 }

void set_path ( const string &  new_path  )  [inline]

Set the path.

Parameters:
new_path The new path.

Definition at line 346 of file emdata_metadata.h.

00347 {
00348         path = new_path;
00349 }

void set_pathnum ( int  n  )  [inline]

Set the number of paths.

Parameters:
n The number of paths.

Definition at line 355 of file emdata_metadata.h.

00356 {
00357         pathnum = n;
00358 }

void set_ri ( bool  is_ri  )  [inline]

Mark this image as a real/imaginary format complex image.

Parameters:
is_ri If true, mark as real/imaginary format; If false, mark as amp/phase format.

Definition at line 820 of file emdata_metadata.h.

Referenced by EMAN::Util::TwoDTestFunc().

00821 {
00822         if (is_ri) {
00823                 attr_dict["is_complex_ri"] = int(1);
00824         }
00825         else {
00826                 attr_dict["is_complex_ri"] = int(0);
00827         }
00828 }

void set_rotation ( const Transform3D &  t3d  )  [inline]

Define the 3D orientation of this particle Orientation information is extracted from a Transform3D object and stored internally in EMAN (az,alt,phi) format.

Parameters:
t3d a Transform3D object containing the particle orientation

Definition at line 301 of file emdata_metadata.h.

00302 {
00303         Dict d = t3d.get_rotation(Transform3D::EMAN);
00304         attr_dict["orientation_convention"] = "EMAN";
00305         attr_dict["euler_alt"] = (float) d["alt"];
00306         attr_dict["euler_az"] = (float) d["az"];
00307         attr_dict["euler_phi"] = (float) d["phi"];;
00308 }

void set_rotation ( float  az,
float  alt,
float  phi 
) [inline]

Define the 3D orientation of this particle, also used to indicate relative rotations for reconstructions.

Parameters:
az 'az' Euler angle in EMAN convention.
alt 'alt' Euler angle in EMAN convention.
phi 'phi' Euler angle in EMAN convention.

Definition at line 287 of file emdata_metadata.h.

00288 {
00289     attr_dict["orientation_convention"] = "EMAN";
00290         attr_dict["euler_alt"]=alt;
00291         attr_dict["euler_az"]=az;
00292         attr_dict["euler_phi"]=phi;
00293 }

void set_shuffled ( bool  is_shuffled  )  [inline]

Mark this image as a shuffled image.

Parameters:
is_shuffled If true, a shuffled image. If false, not a shuffled image.

Definition at line 680 of file emdata_metadata.h.

References set_attr().

00681 { // PRB
00682         if (is_shuffled) {
00683 //              printf("entered correct part of set_shuffled \n");
00684 //              flags |=  EMDATA_SHUFFLE;
00685                 set_attr("is_shuffled", (int)1);
00686         }
00687         else {
00688 //              flags &= ~EMDATA_SHUFFLE;
00689                 set_attr("is_shuffled", (int)0);
00690         }
00691 }

void set_size ( int  nx,
int  ny = 1,
int  nz = 1 
)

Resize this EMData's main board memory pointer.

Parameters:
nx x size of this image.
ny y size of this image.
nz z size of this image. $
Exceptions:
BadAllocException if memory allocation returns a null pointer

Referenced by set_complex_size().

void set_supp_pickle ( int  i  ) 

void set_translation ( float  dx,
float  dy,
float  dz 
) [inline]

Set 'this' images' translation vector from the original location.

Parameters:
dx The translation distance in x direction.
dy The translation distance in y direction.
dz The translation distance in z direction.

Definition at line 263 of file emdata_metadata.h.

00264 {
00265         all_translation = Vec3f(dx, dy, dz);
00266 }

void set_translation ( const Vec3f &  t  )  [inline]

Set 'this' images' translation vector from the original location.

Parameters:
t The new translation vector.

Definition at line 251 of file emdata_metadata.h.

00252 {
00253         all_translation = t;
00254 }

void set_xyzoff ( int  x,
int  y,
int  z 
) [inline]

Definition at line 943 of file emdata_metadata.h.

00944 {
00945         xoff = x;
00946         yoff = y;
00947         zoff = z;
00948 }

void update (  )  [inline]

Mark EMData as changed, statistics, etc will be updated at need.

Definition at line 122 of file emdata_metadata.h.

Referenced by set_data(), and EMAN::Util::TwoDTestFunc().

00123 {
00124         flags |= EMDATA_NEEDUPD | EMDATA_GPU_NEEDS_UPDATE | EMDATA_GPU_RO_NEEDS_UPDATE;
00125         changecount++;
00126 }

void write_data ( string  fsp,
size_t  loc,
const Region *const   area = 0,
const int  file_nx = 0,
const int  file_ny = 0,
const int  file_nz = 0 
)

Dump the image pixel data in native byte order to a disk file.

Parameters:
fsp The filename to write the image data to
loc Location to seek to in the file before writing (size_t)
area The image region you want to read, default 0 means read the whole image
file_nx Image x size.
file_ny Image y size.
file_nz Image z size.
Author:
Steve Ludtke
Date:
Mon Jun 23, 2008


Generated on Fri Nov 20 02:19:20 2009 for EMAN2 by  doxygen 1.5.6