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 ()
 return the amplitudes of the FFT including the left half
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 * 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 set_data (float *data)
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.
void clearupdate ()
 turn off updates.
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.
vector< float > calc_max_location_wrap_intp (const int maxshiftx=-1, const int maxshifty=-1, const int maxshiftz=-1)
 Calculates the wrapped coordinates of the maximum value, and uses quadration intp to subpixel prec 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 (const float threshold=0)
 Calculate the center of mass with a threshold (Default 0, so only positive values are considered).
size_t calc_min_index () const
 Calculates the index of minimum-value pixel when assuming all pixels are in a 1D array.
size_t 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) const
 Calculate and return a sorted list of pixels whose values are above a specified threshold.
vector< Pixel > calc_n_highest_locations (int n)
 Calculate and return a sorted list of N highest pixels in the map.
vector< Pixel > find_pixels_with_value (float val)
 Find pixels in the image with exactly the specified values.
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.
Transform 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 Transform &t3d)
 Define the 3D orientation of this particle Orientation information is extracted from a Transform object and stored internally in EMAN (az,alt,phi) format.
void set_size (int nx, int ny=1, int nz=1, bool noalloc=false)
 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.
MCArray3Dget_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< Vec3imask_contig_region (const float &val, const Vec3i &seed)
float get_amplitude_thres (float thres)
 return the FFT amplitude which is greater than thres %
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 ( const float  threshold = 0  ) 

Calculate the center of mass with a threshold (Default 0, so only positive values are considered).

Author:
Steve Ludtke
Date:
Fri Jun 6th 2008

vector<Pixel> calc_highest_locations ( float  threshold  )  const

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.

size_t 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

vector<float> calc_max_location_wrap_intp ( const int  maxshiftx = -1,
const int  maxshifty = -1,
const int  maxshiftz = -1 
)

Calculates the wrapped coordinates of the maximum value, and uses quadration intp to subpixel prec 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:
John Flanagan
Date:
Mon Mar 7th 2011

size_t 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.

vector<Pixel> calc_n_highest_locations ( int  n  ) 

Calculate and return a sorted list of N highest pixels in the map.

Parameters:
n The number of highest value pixels should be returned.
Returns:
A sorted list of N pixels with their values, and locations.

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 clearupdate (  )  [inline]

turn off updates.

Useful to avoid wasteful recacling stats

Definition at line 150 of file emdata_metadata.h.

00151 {
00152         flags &= ~EMDATA_NEEDUPD;
00153         changecount--;
00154 }

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

vector<Pixel> find_pixels_with_value ( float  val  ) 

Find pixels in the image with exactly the specified values.

Parameters:
val The value to look for
Returns:
An array of pixels with the specified values

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.

float get_amplitude_thres ( float  thres  ) 

return the FFT amplitude which is greater than thres %

Exceptions:
ImageFormatException If the image is not a complex image.
Returns:
The FFT amplitude which is greater than thres %.

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 ali3d_d(), EMAN::Util::constrained_helix(), EMAN::Util::constrained_helix_test(), is_fftpadded(), is_FH(), is_flipped(), is_shuffled(), EMAN::Util::multiref_polar_ali_2d_local(), EMAN::Util::multiref_polar_ali_2d_local_psi(), EMAN::Util::multiref_polar_ali_helical_90_local(), EMAN::Util::multiref_polar_ali_helical_local(), EMAN::KMeansAnalyzer::reseed(), and EMAN::KMeansAnalyzer::update_centers().

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 981 of file emdata_metadata.h.

00982 {
00983         return changecount;
00984 }

float get_circle_mean (  ) 

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

Returns:
The circular edge mean.

const float* 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 89 of file emdata_metadata.h.

References get_data().

00089 { return get_data(); }

Ctf* get_ctf (  )  const

Get ctf parameter of this image.

Returns:
The ctf parameter.

float* get_data (  )  const [inline]

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

Returns:
The image pixel density data.

Definition at line 83 of file emdata_metadata.h.

References rdata.

Referenced by CleanStack(), CleanStack_Cart(), cmplx(), EMAN::Util::ener_tot(), get_const_data(), get_data_as_vector(), get_value_at(), EMAN::PCA::Lanczos(), EMAN::EMUtil::make_image_median(), operator()(), ReadStackandDist_Cart(), set_value_at(), set_value_at_fast(), and unified().

00083 { return rdata; }

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 651 of file emdata_metadata.h.

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

00651                                                 {
00652         int size = get_size();
00653         vector<float> v(size);
00654         float* data = get_data();
00655         std::copy(data,data+size,v.begin());
00656         return v;
00657 }

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 (  ) 

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 971 of file emdata_metadata.h.

00972 {
00973         return flags;
00974 }

int get_ndim (  )  const [inline]

Get image dimension.

Returns:
image dimension.

Definition at line 662 of file emdata_metadata.h.

References ny.

00663 {
00664         if (nz <= 1) {
00665                 if (ny <= 1) {
00666                         return 1;
00667                 }
00668                 else {
00669                         return 2;
00670                 }
00671         }
00672 
00673         return 3;
00674 }

string get_path (  )  const [inline]

Definition at line 1020 of file emdata_metadata.h.

01021 {
01022         return path;
01023 }

int get_pathnum (  )  const [inline]

Definition at line 1025 of file emdata_metadata.h.

01026 {
01027         return pathnum;
01028 }

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 643 of file emdata_metadata.h.

References nx, and ny.

Referenced by get_data_as_vector().

00644 {
00645         return (size_t)nx*(size_t)ny*(size_t)nz;
00646 }

int get_supp_pickle (  )  const

Transform get_transform (  )  const [inline]

Get the 3D orientation of 'this' image.

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

Definition at line 320 of file emdata_metadata.h.

00321 {
00322         Dict rotation_dict;
00323         rotation_dict["type"] = "eman";
00324         rotation_dict["alt"] = attr_dict["euler_alt"];
00325         rotation_dict["az"] = attr_dict["euler_az"];
00326         rotation_dict["phi"] = attr_dict["euler_phi"];
00327 
00328         Transform trans;
00329         trans.to_identity();
00330         trans.set_rotation(rotation_dict);
00331 
00332         return trans;
00333 }

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 289 of file emdata_metadata.h.

00290 {
00291         return all_translation;
00292 }

int get_xoff (  )  const [inline]

Definition at line 991 of file emdata_metadata.h.

00992 {
00993         return xoff;
00994 }

int get_xsize (  )  const [inline]

Get the image x-dimensional size.

Returns:
Image x-dimensional size.

Definition at line 616 of file emdata_metadata.h.

References nx.

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

00617 {
00618         return nx;
00619 }

int get_yoff (  )  const [inline]

Definition at line 996 of file emdata_metadata.h.

00997 {
00998         return yoff;
00999 }

int get_ysize (  )  const [inline]

Get the image y-dimensional size.

Returns:
Image y-dimensional size.

Definition at line 625 of file emdata_metadata.h.

References ny.

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

00626 {
00627         return ny;
00628 }

int get_zoff (  )  const [inline]

Definition at line 1001 of file emdata_metadata.h.

01002 {
01003         return zoff;
01004 }

int get_zsize (  )  const [inline]

Get the image z-dimensional size.

Returns:
Image z-dimensional size.

Definition at line 634 of file emdata_metadata.h.

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

00635 {
00636         return nz;
00637 }

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 570 of file emdata_metadata.h.

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

00570                                               {
00571         return attr_dict.has_key(key);
00572 }

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 159 of file emdata_metadata.h.

00160 {
00161         if (this->has_attr("ctf")) {
00162                 return true;
00163         }
00164         else {
00165                 return false;
00166         }
00167 }

bool is_complex (  )  const [inline]

Is this a complex image?

Returns:
Whether this is a complex image or not.

Definition at line 714 of file emdata_metadata.h.

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

00715 {
00716         if(attr_dict.has_key("is_complex")) {
00717                 if (int(attr_dict["is_complex"])) {
00718                         return true;
00719                 }
00720                 else {
00721                         return false;
00722                 }
00723         }
00724         else {
00725                 return false;
00726         }
00727 }

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 793 of file emdata_metadata.h.

00794 {
00795         if(attr_dict.has_key("is_complex_x")) {
00796                 if (int(attr_dict["is_complex_x"])) {
00797                         return true;
00798                 }
00799                 else {
00800                         return false;
00801                 }
00802         }
00803         else {
00804                 return false;
00805         }
00806 }

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 930 of file emdata_metadata.h.

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

00931 {
00932         if(flags & EMDATA_FFTODD) {
00933                 return true;
00934         }
00935         else if( attr_dict.has_key("is_fftodd") && (int)attr_dict["is_fftodd"] == 1 ) {
00936                 return true;
00937         }
00938         else {
00939                 return false;
00940         }
00941 }

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 897 of file emdata_metadata.h.

References get_attr(), and has_attr().

00898 {
00899         if (flags & EMDATA_PAD) {
00900                 return true;
00901         }
00902 
00903         if(has_attr("is_fftpad")) {
00904                 return get_attr("is_fftpad");
00905         }
00906 
00907         return false;
00908 
00909 }

bool is_FH (  )  const [inline]

Is this a FH image?

Returns:
Whether this is a FH image or not.

Definition at line 697 of file emdata_metadata.h.

References get_attr(), and has_attr().

00698 {  //     PRB
00699         if (flags & EMDATA_FH) {
00700                 return true;
00701         }
00702 
00703         if(has_attr("is_fh")) {
00704                 return get_attr("is_fh");
00705         }
00706 
00707         return false;
00708 }

bool is_flipped (  )  const [inline]

Is this image flipped?

Returns:
Whether this image is flipped or not.

Definition at line 827 of file emdata_metadata.h.

References get_attr().

00828 {
00829         if (flags & EMDATA_FLIP) { //keep here for back compatibility
00830                 return true;
00831         }
00832 
00833         if(attr_dict.has_key("is_flipped")) {
00834                 if(get_attr("is_flipped")) {
00835                         return true;
00836                 }
00837         }
00838 
00839         return false;
00840 
00841 }

bool is_real (  )  const [inline]

Is this a real image?

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

Definition at line 733 of file emdata_metadata.h.

References is_complex().

00734 {
00735         return !is_complex();
00736 }

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 863 of file emdata_metadata.h.

00864 {
00865         if(attr_dict.has_key("is_complex_ri")) {
00866                 if (int(attr_dict["is_complex_ri"])) {
00867                         return true;
00868                 }
00869                 else {
00870                         return false;
00871                 }
00872         }
00873         else {
00874                 return false;
00875         }
00876 }

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 680 of file emdata_metadata.h.

References get_attr(), and has_attr().

00681 {  //     PRB
00682         if (flags & EMDATA_SHUFFLE) {
00683                 return true;
00684         }
00685 
00686         if(has_attr("is_shuffled")) {
00687                 return get_attr("is_shuffled");
00688         }
00689 
00690         return false;
00691 }

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 EMAN::KMeansAnalyzer::analyze(), set_fftodd(), set_fftpad(), set_FH(), set_flipped(), set_shuffled(), and EMAN::KMeansAnalyzer::update_centers().

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 986 of file emdata_metadata.h.

00987 {
00988         changecount = c;
00989 }

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 778 of file emdata_metadata.h.

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

00779 {
00780         if (is_complex) {
00781                 attr_dict["is_complex"] = int(1);
00782         }
00783         else {
00784                 attr_dict["is_complex"] = int(0);
00785         }
00786 }

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 393 of file emdata_metadata.h.

References ny, and set_size().

00393                                                   {
00394         set_size(nx*2, ny, nz);
00395 }

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 813 of file emdata_metadata.h.

00814 {
00815         if (is_complex_x) {
00816                 attr_dict["is_complex_x"] = int(1);
00817         }
00818         else {
00819                 attr_dict["is_complex_x"] = int(0);
00820         }
00821 }

void set_ctf ( Ctf *  ctf  ) 

Set the CTF parameter of this image.

Parameters:
ctf The CTF parameter object.

void set_data ( float *  data  )  [inline]

Definition at line 111 of file emdata_metadata.h.

References rdata.

00111                                   {
00112         rdata = data;
00113 }

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 98 of file emdata_metadata.h.

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

00098                                                                          {
00099         if (rdata) { EMUtil::em_free(rdata); rdata = 0; }
00100 #ifdef EMAN2_USING_CUDA
00101         //cout << "set data" << endl;
00102 //      free_cuda_memory();
00103 #endif
00104         rdata = data;
00105         nx = x; ny = y; nz = z;
00106         nxy = nx*ny;
00107         nxyz = (size_t)nx*ny*nz;
00108         update();
00109 }

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 948 of file emdata_metadata.h.

References set_attr().

00949 {
00950         if (is_fftodd) {
00951                 set_attr("is_fftodd", int(1));
00952         }
00953         else {
00954                 set_attr("is_fftodd", int(0));
00955         }
00956 }

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 916 of file emdata_metadata.h.

References set_attr().

00917 {
00918         if (is_fftpadded) {
00919                 set_attr("is_fftpad", int(1));
00920         }
00921         else {
00922                 set_attr("is_fftpad", int(0));
00923         }
00924 }

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 761 of file emdata_metadata.h.

References set_attr().

00762 { // PRB
00763         if (is_FH) {
00764 //              flags |=  EMDATA_FH;
00765                 set_attr("is_fh", (int)1);
00766         }
00767         else {
00768 //              flags &= ~EMDATA_FH;
00769                 set_attr("is_fh", (int)0);
00770         }
00771 }

void set_flags ( int  f  )  [inline]

Definition at line 976 of file emdata_metadata.h.

00977 {
00978         flags = f;
00979 }

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 848 of file emdata_metadata.h.

References set_attr().

00849 {
00850         if (is_flipped) {
00851                 set_attr("is_flipped", (int)1);
00852         }
00853         else {
00854                 set_attr("is_flipped", (int)0);
00855         }
00856 }

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 962 of file emdata_metadata.h.

00963 {
00964         attr_dict["nxc"] = nxc;
00965 }

void set_path ( const string &  new_path  )  [inline]

Set the path.

Parameters:
new_path The new path.

Definition at line 401 of file emdata_metadata.h.

00402 {
00403         path = new_path;
00404 }

void set_pathnum ( int  n  )  [inline]

Set the number of paths.

Parameters:
n The number of paths.

Definition at line 410 of file emdata_metadata.h.

00411 {
00412         pathnum = n;
00413 }

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 883 of file emdata_metadata.h.

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

00884 {
00885         if (is_ri) {
00886                 attr_dict["is_complex_ri"] = int(1);
00887         }
00888         else {
00889                 attr_dict["is_complex_ri"] = int(0);
00890         }
00891 }

void set_rotation ( const Transform &  t3d  )  [inline]

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

Parameters:
t3d a Transform object containing the particle orientation

Definition at line 356 of file emdata_metadata.h.

00357 {
00358         Dict d = t3d.get_rotation("eman");
00359         attr_dict["orientation_convention"] = "EMAN";
00360         attr_dict["euler_alt"] = (float) d["alt"];
00361         attr_dict["euler_az"] = (float) d["az"];
00362         attr_dict["euler_phi"] = (float) d["phi"];;
00363 }

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 342 of file emdata_metadata.h.

00343 {
00344     attr_dict["orientation_convention"] = "EMAN";
00345         attr_dict["euler_alt"]=alt;
00346         attr_dict["euler_az"]=az;
00347         attr_dict["euler_phi"]=phi;
00348 }

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 743 of file emdata_metadata.h.

References set_attr().

00744 { // PRB
00745         if (is_shuffled) {
00746 //              printf("entered correct part of set_shuffled \n");
00747 //              flags |=  EMDATA_SHUFFLE;
00748                 set_attr("is_shuffled", (int)1);
00749         }
00750         else {
00751 //              flags &= ~EMDATA_SHUFFLE;
00752                 set_attr("is_shuffled", (int)0);
00753         }
00754 }

void set_size ( int  nx,
int  ny = 1,
int  nz = 1,
bool  noalloc = false 
)

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 311 of file emdata_metadata.h.

00312 {
00313         all_translation = Vec3f(dx, dy, dz);
00314 }

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 299 of file emdata_metadata.h.

00300 {
00301         all_translation = t;
00302 }

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

Definition at line 1006 of file emdata_metadata.h.

01007 {
01008         xoff = x;
01009         yoff = y;
01010         zoff = z;
01011 }

void update (  )  [inline]

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

Definition at line 143 of file emdata_metadata.h.

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

00144 {
00145         flags |= EMDATA_NEEDUPD;
00146         changecount++;
00147 }

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 Tue Jun 11 12:40:52 2013 for EMAN2 by  doxygen 1.4.7