EMAN2
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
EMAN Namespace Reference

E2Exception class. More...

Namespaces

namespace  Gatan
 
namespace  GatanDM4
 

Classes

class  _BadAllocException
 Used when memory allocation goes wrong... i.e. More...
 
class  _EmptyContainerException
 Used when an argument container is empty, such as a vector. More...
 
class  _FileAccessException
 Used when a file access error occurs. More...
 
class  _ImageDimensionException
 Used when an image is not in the expected dimension. More...
 
class  _ImageFormatException
 Used when an image is not in the expected format. More...
 
class  _ImageReadException
 Used when an error occurs at image reading time. More...
 
class  _ImageWriteException
 Used when an error occurs at image writing time. More...
 
class  _InvalidCallException
 
class  _InvalidParameterException
 
class  _InvalidStringException
 Used when an invalid (format) string is given. More...
 
class  _InvalidValueException
 Used when an invalid integer value is given. More...
 
class  _NotExistingObjectException
 Used when an object type, like an EMObject type, doesn't exist. More...
 
class  _NullPointerException
 Used when a NULL is given to a pointer that should not be NULL. More...
 
class  _OutofRangeException
 Used when the given value is out of range. More...
 
class  _TypeException
 Used when a type cast error occurs. More...
 
class  _UnexpectedBehaviorException
 Used when internal behavior is unexpected A generic kind of exception. More...
 
class  AboveToZeroProcessor
 f(x) = x if x <= maxval; f(x) = 0 if x > maxval More...
 
class  AbsoluteValueProcessor
 f(x) = |x| More...
 
class  ACFCenterProcessor
 Center image using auto convolution with 180 degree rotation. More...
 
class  AddMaskShellProcessor
 Add additional shells/rings to an existing 1/0 mask image. More...
 
class  AddNoiseProcessor
 add noise to an image More...
 
class  AddRandomNoiseProcessor
 add spectral noise to a complex image More...
 
class  AddShapeProcessor
 Rotate by 180 using pixel swapping, works for 2D only. More...
 
class  AddSigmaNoiseProcessor
 add sigma noise, multiply image's sigma value to noise More...
 
class  Aligner
 Aligner class defines image alignment method. More...
 
class  AmiraIO
 Amira file = ASCII header + binary data. More...
 
class  AmpMultProcessor
 
class  AmpweightFourierProcessor
 Multiplies each Fourier pixel by its amplitude. More...
 
class  Analyzer
 Analyzer class defines a way to take a List of images as input, and returns a new List of images. More...
 
class  ApplyPolynomialProfileToHelix
 
class  ApplySymProcessor
 Applies a symmetry to a 3D model. More...
 
class  AreaProcessor
 AreaProcessor use pixel values and coordinates of a real-space square area. More...
 
class  AutoMask2DProcessor
 Attempts to automatically mask out the particle, excluding other particles in the box, etc. More...
 
class  AutoMask3D2Processor
 Tries to mask out only interesting density. More...
 
class  AutoMask3DProcessor
 Tries to mask out only interesting density. More...
 
class  AutoMaskAsymUnit
 Tries to mask out only interesting density. More...
 
class  AutoMaskDustProcessor
 A "dust removal" filter which will remove above threshold densities smaller than a given size. More...
 
class  Averager
 Averager class defines a way to do averaging on a set of images. More...
 
class  AverageXProcessor
 Average along Y and replace with average. More...
 
class  Axis0FourierProcessor
 Zeroes the values on the X=0 and y=0 Fourier axes (except x=y=0) More...
 
class  AzSharpProcessor
 Similar to FourierProcessor, but enhances or compresses azimuthal contrast rather than the typical radial linear filter. More...
 
class  BackProjectionReconstructor
 Real space 3D reconstruction using back projection. More...
 
class  BadLineXYProcessor
 This processor will remove specified bad lines from CCD/DDD images, generally due to faulty lines/rows in the detector. More...
 
class  BeamstopProcessor
 Try to eliminate beamstop in electron diffraction patterns. More...
 
class  BilateralProcessor
 Bilateral processing on 2D or 3D volume data. More...
 
class  BinarizeFourierProcessor
 A thresholding processor for Fourier images based on the amplitude component. More...
 
class  BinarizeProcessor
 f(x) = 0 if x < value; f(x) = 1 if x >= value. More...
 
class  BinaryBlackHatProcessor
 Performs a morphological black hat operation on an image. More...
 
class  BinaryClosingProcessor
 Performs a morphological closing operation on an image. More...
 
class  BinaryDilationProcessor
 Performs a morphological dilation operation on an image. More...
 
class  BinaryErosionProcessor
 Performs a morphological erosion operation on an image. More...
 
class  BinaryExternalGradientProcessor
 Computes an external morphological gradient operation on an image. More...
 
class  BinaryInternalGradientProcessor
 Computes an internal morphological gradient operation on an image. More...
 
class  BinaryMorphGradientProcessor
 Computes the morphological gradient operation on an image. More...
 
class  BinaryOpeningProcessor
 Performs a morphological opening operation on an image. More...
 
class  BinaryOperateProcessor
 Operates on two images, returning an image containing the maximum/minimum/multiplied pixel (etc, you choose) at each location The actual operation depends on what template argument you use. More...
 
class  BinarySkeletonizerProcessor
 
class  BinaryTopHatProcessor
 Performs a morphological top hat operation on an image. More...
 
class  BispecSliceProcessor
 This processor computes 2-D slices of the 4-D bispectrum of a 2-D image. More...
 
class  BitReader
 
class  BitStream
 
class  BooleanProcessor
 f(x) = 0 if x = 0; f(x) = 1 if x != 0 More...
 
class  BooleanShrinkProcessor
 BooleanShrinkProcessor encapsulates code common to MaxShrinkProcessor and MinShrinkProcessor - the processors use more or less identical code, the main difference being the logical operator. More...
 
class  BoxingTools
 BoxingTools is class for encapsulating common boxing operations that may become expensive if they are implemented in python. More...
 
class  BoxMaxProcessor
 peak processor: pixel = max of values surrounding pixel. More...
 
class  BoxMedianProcessor
 A processor for noise reduction. More...
 
class  BoxSigmaProcessor
 pixel = standard deviation of values surrounding pixel. More...
 
class  BoxStatProcessor
 BoxStatProcessor files are a kind of neighborhood processors. More...
 
class  BoxSVDClassifier
 
class  BwMajorityProcessor
 Set a pixel to white when >= N neighbors are white. More...
 
class  BwThinningProcessor
 Thinning a binary map to skelton using the Zhang-Suen thinning algorithm. More...
 
class  ByteOrder
 ByteOrder defines functions to work on big/little endian byte orders. More...
 
class  CccCmp
 Compute the cross-correlation coefficient between two images. More...
 
class  CCCSNRProcessor
 Convert an image containing normalized correlation coefficients to SNR or a Wiener filter value used in conjunction with local resolution filtration. More...
 
class  CCDNormProcessor
 Try to normalize the 4 quadrants of a CCD image. More...
 
class  ChaoProjector
 Fast real space projection using Bi-Linear interpolation. More...
 
class  CircularAverageAnalyzer
 Calculate the circular average around the center in real space. More...
 
class  CircularAverageBinarizeProcessor
 Binarize an image based on the circular average around each pixel in real space. More...
 
class  CircularMaskProcessor
 CircularMaskProcessor applies a circular mask to the data.This is the base class for specific circular mask processors.Its subclass must implement process_dist_pixel(). More...
 
class  ClampingProcessor
 f(x) = maxval if f(x) > maxval; f(x) = minval if f(x) < minval More...
 
class  Cmp
 Cmp class defines image comparison method. More...
 
class  CollapseProcessor
 f(x): if v-r<x<v+r -> v; if x>v+r -> x-r; if x<v-r -> x+r More...
 
class  ColorRGBGenerator
 Class to encapsulate an RGB color generator for marching cubes isosurface generator For now you can only color by radius, but in the near future you will be able to color by map, etc. More...
 
class  ComplexNormPixel
 Each Fourier pixel will be normalized. More...
 
class  ComplexPixelProcessor
 The base class for fourier space processor working on individual pixels. More...
 
class  ConvolutionKernelProcessor
 
class  ConvolutionProcessor
 This processor performs fast convolution in Fourier space. More...
 
class  CoordinateProcessor
 CoordinateProcessor applies processing based on a pixel's value and it coordinates. More...
 
class  CSym
 An encapsulation of cyclic 3D symmetry. More...
 
class  Ctf
 Ctf is the base class for all CTF model. More...
 
class  CtfCAutoAverager
 CtfCWautoAverager averages the images with CTF correction with a Wiener filter. More...
 
class  CTFCorrProcessor
 Processor the images by the estimated SNR in each image.if parameter 'wiener' is 1, then wiener processor the images using the estimated SNR with CTF amplitude correction. More...
 
class  CtfCWautoAverager
 CtfCWautoAverager averages the images with CTF correction with a Wiener filter. More...
 
class  CtfSimProcessor
 CTF simulation processor. More...
 
class  CTFSNRWeightProcessor
 
class  CtfWtAverager
 CtfWtAverager. More...
 
class  CtfWtFiltAverager
 CtfWtAverager. More...
 
class  CUDA_Aligner
 
class  CUDA_multiref_aligner
 
class  CustomVector
 CustomVector has some trivial optimizations of the STL vector. More...
 
class  CutoffBlockProcessor
 Block processor, val1 is dx/dy, val2 is lp freq cutoff in pixels. More...
 
class  CutToZeroProcessor
 f(x) = x-minval if x >= minval; f(x) = 0 if x < minval More...
 
class  DecayEdgeProcessor
 Decay edges of image to zero. More...
 
class  Decoder
 
struct  DecoderIx
 
class  Df3IO
 
class  Dict
 Dict is a dictionary to store <string, EMObject> pair. More...
 
class  DiffBlockProcessor
 averages over cal_half_width, then sets the value in a local block More...
 
class  DirectionalSumProcessor
 Does a projection in one the axial directions Doesn't support process_inplace (because the output has potentially been compressed in one dimension) More...
 
class  DiscritizeProcessor
 
class  DistanceSegmentProcessor
 Segment a volume about:homeinto subvolumes based on a center separation value. More...
 
class  DM3IO
 Gatan DM3 file is a hierarchical binary image format. More...
 
class  DM4IO
 Gatan DM$ was introduced with the GMS 2.0 release. More...
 
class  DoGFourierProcessor
 processor radial function: f(x) = 1/sqrt(2*pi)*[1/sigma1*exp-(x^2/2*sigma1^2) - 1/sigma2*exp-(x^2/2*sigma2^2)] More...
 
class  DotCmp
 Use dot product of 2 same-size images to do the comparison. More...
 
class  DSym
 An encapsulation of dihedral 3D symmetry. More...
 
class  E2Exception
 E2Exception class is the parent class of all EMAN2 E2Exceptions. More...
 
class  EerIO
 
class  EMAN1Ctf
 EMAN1Ctf is the CTF model used in EMAN1. More...
 
class  EMAN2Ctf
 EMAN2Ctf is the default CTF model used in EMAN2. More...
 
class  EmanOrientationGenerator
 EmanOrientationGenerator generates orientations quasi-evenly distributed in the asymmetric unit. More...
 
class  EMBytes
 
class  EMConsts
 
class  EMData
 EMData stores an image's data and defines core image processing routines. More...
 
class  EMFTGL
 EMFTGL is an interface for rendering fonts in EMAN2 using FTGL. More...
 
class  EmIO
 EmIO defines I/O operations on EM image format. More...
 
class  EMObject
 EMObject is a wrapper class for types including int, float, double, etc as defined in ObjectType. More...
 
class  EMUtil
 
class  EnhanceProcessor
 This processor filters an image to improve the visibility of particles. More...
 
class  EvenOrientationGenerator
 Sparx even orientation generator - see util_sparx.cpp - Util::even_angles(...) This orientation generator is based on work presented in Penczek et al., 1994 P.A. More...
 
class  ExpProcessor
 f(x) = exp( x / low - high) More...
 
class  Factory
 Factory is used to store objects to create new instances. More...
 
class  FactoryBase
 A class one may inherit from to ensure that the responsibilities of being incorporated into an EMAN2::Factory are met. More...
 
class  FFTConeProcessor
 Mask out (or in) peaks in Fourier space based on the average amplitude at each spatial frequency. More...
 
class  FFTPeakProcessor
 Mask out (or in) peaks in Fourier space based on the average amplitude at each spatial frequency. More...
 
class  FFTProcessor
 Perform a FFT transform by calling EMData::do_fft() and EMData::do_ift() More...
 
class  FFTResampleProcessor
 FFTResampleProcessor resamples an image by clipping the Fourier Transform This is the same as multipyling the FT by a box window, in real space this is a convolution that will induce rippling. More...
 
class  FFTWedgeProcessor
 Mask out (or in) peaks in Fourier space based on the average amplitude at each spatial frequency. More...
 
class  file_store
 
class  FileFourierProcessor
 A fourier processor specified in a 2 column text file. More...
 
class  FiniteProcessor
 f(x) = f(x) if f(x) is finite | to if f(x) is not finite More...
 
class  FitsIO
 MRC file = header + data (nx x ny x nz). More...
 
class  FixSignProcessor
 This processor can be used to correct errors when reading signed data as unsigned and vice-versa. More...
 
class  FlattenBackgroundProcessor
 Flattens the background by subtracting the local mean. More...
 
class  FlipProcessor
 flip/mirror an image around an axis More...
 
class  FloatPoint
 FloatPoint defines a float-coordinate point in a 1D/2D/3D space. More...
 
class  FloatSize
 FloatSize is used to describe a 1D, 2D or 3D rectangular size in floating numbers. More...
 
class  FloorValueProcessor
 f(x) = floor(x) More...
 
class  FourierAnlProcessor
 Same as FourierProcessor, except first computes the current image radial power spectrum and passes it to the processor (no radial oversampling, number of elements = radius) More...
 
class  FourierGriddingProjector
 Fourier gridding projection routine. More...
 
class  FourierInserter3DMode1
 FourierPixelInserter3DMode1 - encapsulates "method 1" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode10
 FourierPixelInserter3DMode10 - encapsulates "method 10" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode11
 FourierPixelInserter3DMode7 - encapsulates "method 7" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode2
 FourierPixelInserter3DMode2 - encapsulates "method 2" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode2l
 FourierPixelInserter3DMode2l - trilinear 2x2x2 inserter See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode3
 FourierPixelInserter3DMode3 - encapsulates "method 3" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode5
 FourierPixelInserter3DMode5 - encapsulates "method 5" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode6
 FourierPixelInserter3DMode6 - encapsulates "method 6" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode7
 FourierPixelInserter3DMode7 - encapsulates "method 7" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode8
 FourierPixelInserter3DMode8 - encapsulates "method 8" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierInserter3DMode9
 FourierPixelInserter3DMode9 - encapsulates "method 9" for inserting a 2D Fourier slice into a 3D volume See comments in FourierPixelInserter3D for explanations. More...
 
class  FourierIterReconstructor
 Fourier space 3D reconstruction The Fourier reconstructor is designed to work in an iterative fashion, where similarity ("quality") metrics are used to determine if a slice should be inserted into the 3D in each subsequent iteration. More...
 
class  FourierPixelInserter3D
 FourierPixelInserter3D class defines a way a continuous pixel in 3D is inserted into the discrete 3D volume - there are various schemes for doing this including simply finding the nearest neighbor to more elaborate schemes that involve interpolation using the nearest 8 voxels and so on. More...
 
class  FourierProcessor
 base class for Fourier filters More...
 
class  FourierReconstructor
 Fourier space 3D reconstruction The Fourier reconstructor is designed to work in an iterative fashion, where similarity ("quality") metrics are used to determine if a slice should be inserted into the 3D in each subsequent iteration. More...
 
class  FourierReconstructorSimple2D
 This class originally added for 2D experimentation and prototying. More...
 
class  FourierToCenterProcessor
 Translates the origin in Fourier space from the corner to the center in y and z Handles 2D and 3D, and handles all combinations of even and oddness Typically you call this function after Fourier transforming a real space image. More...
 
class  FourierToCornerProcessor
 Undo the effects of the FourierToCenterProcessor. More...
 
class  FourierWeightAverager
 FourierWeightAverager makes an average of a set of images in Fourier space using a per-image radial weight. More...
 
class  FRCCmp
 FRCCmp returns a quality factor based on FRC between images. More...
 
class  FRM2DAligner
 
class  FSCFourierProcessor
 This processor will apply a Wiener filter to a volume based on a provided FSC curve. More...
 
class  Gatan2IO
 Gatan2 Image file = header + data. More...
 
class  GaussFFTProjector
 Gaussian FFT 3D projection. More...
 
class  GaussSegmentProcessor
 Segment a volume by sequentially finding the highest peak and subtracting a Gaussian at that point from the density after strongly filtering the map to a specified resolvability. More...
 
class  GaussZFourierProcessor
 Zeroes the values on the X=0 and y=0 Fourier axes (except x=y=0) More...
 
class  GLUtil
 
class  GradientDirectionProcessor
 Determines the direction of an approximate image gradient using David's image gradient processors. More...
 
class  GradientMagnitudeProcessor
 Determines the magnitude of an approximate image gradient using David's image gradient processors. More...
 
class  GradientPlaneRemoverProcessor
 Gradient removed by least square plane fit. More...
 
class  GradientRemoverProcessor
 Gradient remover, does a rough plane fit to find linear gradients. More...
 
class  GridKernelFixProcessor
 Multiplies image by a 'linear pyramid' 1-(|x-xsize/2|*|y-ysize/2|*4/(xsize*ysize)) This is useful in averaging together boxed out regions with 50% overlap. More...
 
class  GrowSkeletonProcessor
 Grow a skeleton map toward a local direction. More...
 
class  HarmonicProcessor
 This processor computes what I've dubbed the 'harmonic power spectrum'. More...
 
class  HighpassAutoPeakProcessor
 This processor attempts to remove the low resolution peak present in all cryoEM data. More...
 
class  HistogramBin
 Bins pixel values, similar to calculating a histogram. More...
 
class  HSym
 An encapsulation of helical 3D symmetry. More...
 
class  Icosahedral2Sym
 An encapsulation of icosahedral symmetry 222. More...
 
class  IcosahedralSym
 An encapsulation of icosahedral symmetry Doctor Phil has this to say about icosahedral symmetry: "Each Platonic Solid has 2E symmetry elements. More...
 
class  IcosIO
 ICOS file = header + data. More...
 
class  ImageAverager
 ImageAverager averages a list of images. More...
 
class  ImageDivergenceProcessor
 Computes the image divergence using David's partial derivative processors. More...
 
class  ImageIO
 ImageIO classes are designed for reading/writing various electron micrography image formats, including MRC, IMAGIC, SPIDER, PIF, etc. More...
 
class  ImageProcessor
 
struct  ImageScore
 
class  ImageSort
 
class  ImagicIO
 IMAGIC-5 Header File Format. More...
 
class  ImagicIO2
 IMAGIC-5 Header File Format. More...
 
class  IndexMaskFileProcessor
 Multiplies the image by the specified file using pixel indices. More...
 
class  InertiaMatrixAnalyzer
 Inertia Matrix computer Computes the Inertia Matrix for a 3-D volume. More...
 
class  Interp
 Interp defines the interpolation function used to generate a e^-x^4 function in real space. More...
 
class  IntPoint
 IntPoint defines an integer-coordinate point in a 1D/2D/3D space. More...
 
class  IntSize
 IntSize is used to describe a 1D, 2D or 3D rectangular size in integers. More...
 
class  IntTranslateProcessor
 Translate the image an integer amount Uses EMData::clip_inplace (inplace) and EMData::get_clip (out of place) to do the translation. More...
 
class  Isosurface
 
class  IterAverager
 IterAverager performs iterative averaging of 3x3 pixel zones around each pixel, computing the mean of the 9 pixels initially, then iteratively refining the average to produce something self-consistent, but hopefully less noisy. More...
 
class  IterBinMaskProcessor
 Iterative expansion of a binary mask, val1 is number of pixels to expand, if val2!=0 will make a soft Gaussian edge starting after val2 pixels. More...
 
class  IterMultiMaskProcessor
 This expands a multilevel mask volume so inter-mask boundaries are preserved. More...
 
class  KMeansAnalyzer
 KMeansAnalyzer Performs k-means classification on a set of input images (shape/size arbitrary) returned result is a set of classification vectors. More...
 
class  KmeansSegmentProcessor
 Segment a volume into ~n subvolumes using K-means classification. More...
 
class  LaplacianDirectionProcessor
 Determines the direction of an approximate image laplacian using David's image gradient processors. More...
 
class  LaplacianMagnitudeProcessor
 Determines the direction of an approximate image laplacian using David's image gradient processors. More...
 
class  LaplacianProcessor
 Discrete approximation to Laplacian. More...
 
class  LinearPyramidProcessor
 Multiplies image by a 'linear pyramid' 1-(|x-xsize/2|*|y-ysize/2|*4/(xsize*ysize)) This is useful in averaging together boxed out regions with 50% overlap. More...
 
class  LinearRampFourierProcessor
 
class  LinearRampProcessor
 processor radial function: f(x) = slope * x + intercept More...
 
class  LinearXformProcessor
 linear transform processor: f(x) = x * scale + shift More...
 
class  LocalMinAbsProcessor
 
class  LocalNormProcessor
 This processor attempts to perform a 'local normalization' so low density and high density features will be on a more even playing field in an isosurface display. More...
 
class  LocalWeightAverager
 LocalWeightAverager makes an average of a set of images in Fourier space using a per-image radial weight. More...
 
class  LodCmp
 
class  Log
 Log defines a way to output logging information. More...
 
class  LoGFourierProcessor
 processor radial function: f(x) = ((x^2 - s^2)/s^4)e^-(x^2/2s^2) More...
 
class  LogProcessor
 f(x) = log10(x) if x > 0; else f(x) = 0 More...
 
class  LowpassAutoBProcessor
 processor radial function: if lowpass > 0, f(x) = exp(-x*x/(lowpass*lowpass)); else f(x) = exp(x*x/(lowpass*lowpass)) More...
 
class  LowpassRandomPhaseProcessor
 Lowpass Phase Randomization processor applied in Fourier space. More...
 
class  LstFastIO
 A LSX file is a high performance ASCII file that contains a list of image numbers and file names. More...
 
class  LstIO
 A LST file is an ASCII file that contains a list of image file names. More...
 
class  MakeRadiusProcessor
 overwrites input, f(x) = radius More...
 
class  MakeRadiusSquaredProcessor
 overwrites input, f(x) = radius * radius More...
 
class  ManhattanDistanceProcessor
 Sets pixel values in a binary image equal to their element wise manhattan distance. More...
 
class  MarchingCubes
 
class  MaskAzProcessor
 MaskAzProcessor masks out pixels within a specified cylindrical (or circular) arc. More...
 
class  MaskEdgeMeanProcessor
 A step cutoff to the the mean value in a ring centered on the outer radius. More...
 
class  MaskGaussInvProcessor
 f(x) = f(x) / exp(-radius*radius * gauss_width / (ny*ny)) More...
 
class  MaskGaussNonuniformProcessor
 a gaussian falloff to zero, with anisotropic widths along x,y,z More...
 
class  MaskGaussProcessor
 a gaussian falloff to zero, radius is the 1/e of the width. More...
 
class  MaskNoiseProcessor
 fills masked region More...
 
class  MaskPackProcessor
 This processor will take a mask and extract the values inside the mask as a new 1-D image as well as performing the inverse operation. More...
 
class  MaskSharpProcessor
 step cutoff to a user-given value in both inner and outer circles. More...
 
class  MaskSoftProcessor
 step cutoff to a user-given value in both inner and outer circles. More...
 
class  MatchSFProcessor
 Sets the structure factor To match a second provided image/volume. More...
 
class  Matrix3
 
class  Matrix4
 
class  MaxPixelOperator
 
class  MaxShrinkProcessor
 MaxShrinkProcessors shrinks an image by in an integer amount, keeping the maximum pixel value - useful when constructing binary search trees in the marching cubes algorithm. More...
 
class  MaxValProjector
 Real-space projection which computes the maximum value along each line projection rather than a sum. More...
 
class  MeanShrinkProcessor
 MeanShrinkProcessor shrinks an image by in an integer amount (and optionally by 1.5) taking the mean of the pixel neighbourhood. More...
 
class  MeanZeroEdgeProcessor
 Fill zeroes at edges with nearest horizontal/vertical value damped towards Mean2. More...
 
class  MedianAverager
 MedianAverager averages a list of images to the maximum(or minimum of the absolute pixel value) It optionally makes a sigma image. More...
 
class  MedianShrinkProcessor
 MeanShrinkProcessor shrinks an image by in an integer amount taking the median of the pixel neighbourhood. More...
 
class  MinMaxAverager
 ImageAverager averages a list of images. More...
 
class  MinPixelOperator
 
class  MinShrinkProcessor
 MinShrinkProcessor shrinks an image by in an integer amount, keeping the minimum pixel value - useful when constructing binary search trees in the marching cubes algorithm. More...
 
class  MinusPeakProcessor
 peak processor: pixel = pixel - max of values surrounding pixel. More...
 
class  ModelEMCylinderProcessor
 
class  ModelHelixProcessor
 
class  MorphologicalProcessor
 
class  MrcIO
 MRC file = header + data (nx x ny x nz). More...
 
class  newfile_store
 
class  nn4_ctf_rectReconstructor
 nn4_ctf_rectDirect Fourier Inversion Reconstructor More...
 
class  nn4_ctfReconstructor
 nn4_ctf Direct Fourier Inversion Reconstructor More...
 
class  nn4_ctfwReconstructor
 nn4_ctfw Direct Fourier Weighted Inversion Reconstructor More...
 
class  nn4_ctfwsReconstructor
 nn4_ctfws Direct Fourier Weighted Inversion Reconstructor for sorting More...
 
class  nn4_rectReconstructor
 Direct Fourier inversion Reconstructor for extremly rectangular object. More...
 
class  nn4Reconstructor
 
class  nnSSNR_ctfReconstructor
 
class  nnSSNR_Reconstructor
 
class  NonConvexProcessor
 Make a curve or surface non-convex (planar or concave), iteratively. More...
 
class  NormalizeByMassProcessor
 Normalize the mass of the image assuming a density of 1.35 g/ml (0.81 Da/A^3). More...
 
class  NormalizeCircleMeanProcessor
 normalizes an image, mean value equals to mean of 2 pixel circular border. More...
 
class  NormalizeEdgeMeanProcessor
 normalizes an image, mean value equals to edge mean. More...
 
class  NormalizeHistPeakProcessor
 Normalize such that the estimated histogram peak value is zero. More...
 
class  NormalizeLREdgeMeanProcessor
 normalizes an image, uses 2 pixels on left and right edge More...
 
class  NormalizeMaskProcessor
 Uses a 1/0 mask defining a region to use for the zero-normalization.if no_sigma is 1, standard deviation not modified. More...
 
class  NormalizeMaxMinProcessor
 normalizes an image. More...
 
class  NormalizeProcessor
 Base class for normalization processors. More...
 
class  NormalizeRampNormVar
 Normalize the image whilst also removing any ramps. More...
 
class  NormalizeRowProcessor
 normalizes each row in the image individually More...
 
class  NormalizeStdProcessor
 do a standard normalization on an image. More...
 
class  NormalizeToLeastSquareProcessor
 use least square method to normalize More...
 
class  NormalizeUnitProcessor
 Normalize an image so its vector length is 1.0. More...
 
class  NormalizeUnitSumProcessor
 Normalize an image so its elements sum to 1.0 (fails if mean=0) More...
 
class  NSigmaClampingProcessor
 This function clamps the min and max vals in the image at minval and maxval at mean-n*sigma and mean+n*sigma, respectively. More...
 
class  ObjDensityProcessor
 Replace the value of each pixel with the sum of density of the object it belongs to. More...
 
class  ObjLabelProcessor
 Label each object in a black-white image. More...
 
class  OctahedralSym
 An encapsulation of octahedral symmetry Doctor Phil has this to say about the octahedral symmetry: "Each Platonic Solid has 2E symmetry elements. More...
 
class  OmapIO
 DSN6 MAP is composed of a series of records which are all 512 bytes long. More...
 
class  OptimumOrientationGenerator
 Optimum orientation generator. More...
 
class  OptSubCmp
 Uses math.sub.optimal to remove the density of the reference from the image as much as possible. More...
 
class  OptVarianceCmp
 Variance between two data sets after various modifications. More...
 
class  OrientationGenerator
 An orientation generator is a kind of class that will generate orientations for a given symmetry If one needs to generate orientations in the unit sphere, one simply uses the C1 symmetry. More...
 
class  OutlierProcessor
 This processor will try and remove outliers (and optionally exactly zero values), replacing any identified values with the local mean value. More...
 
class  PaintProcessor
 Multiplies the image by the specified file using pixel coordinates instead of pixel indices. More...
 
class  PawelProjector
 Pawel Penczek's optimized projection routine. More...
 
class  PDBReader
 PointArray defines a double array of points with values in a 3D space. More...
 
class  PeakOnlyProcessor
 peak processor -> if npeaks or more surrounding values >= value, value->0 More...
 
class  PgmIO
 A PGM file = header + data. More...
 
class  Phase180Processor
 This class is abstract. More...
 
class  PhaseCmp
 Amplitude weighted mean phase difference (radians) with optional SNR weight. More...
 
class  PhaseToCenterProcessor
 Translates a cornered image to the center Undoes the PhaseToCornerProcessor. More...
 
class  PhaseToCornerProcessor
 Translates a centered image to the corner works for 1D, 2D and 3D images, for all combinations of even and oddness. More...
 
class  PhaseToMassCenterProcessor
 ToMassCenterProcessor centers image at center of mass, ignores old dx, dy. More...
 
class  PifIO
 PIF(Portable Image Format for EM Data) is an image format from Purdue University. More...
 
class  Pixel
 Pixel describes a 3D pixel's coordinates and its intensity value. More...
 
class  PlatonicSym
 A base (or parent) class for the Platonic symmetries. More...
 
class  Point3
 
struct  point_t
 
class  PointArray
 PointArray defines a double array of points with values in a 3D space. More...
 
class  PolarData
 a specialized image class for storing the results of a transform from EMData to polar coordinates, currently support 2D only. More...
 
class  PolyMaskProcessor
 
class  PriorityQueue
 Template class for a priority queue. More...
 
class  Processor
 Typical usage of Processors are as follows: More...
 
class  Projector
 Projector class defines a method to generate 2D projections from a 3D model. More...
 
class  PruneSkeletonProcessor
 Prune branches from the skeleton. More...
 
class  QuadMinDotCmp
 This will calculate the dot product for each quadrant of the image and return the worst value. More...
 
class  Quaternion
 Quaternion is used in Rotation and Transformation to replace Euler angles. More...
 
class  RadialProcessor
 Perform a multiplication of real image with a radial table. More...
 
class  RampProcessor
 Ramp processor – Fits a least-squares plane to the picture, and subtracts the plane from the picture. More...
 
class  Randnum
 The wrapper class for gsl's random number generater. More...
 
class  RandomOrientationGenerator
 Random Orientation Generator - carefully generates uniformly random orientations in any asymmetric unit. More...
 
class  RangeThresholdProcessor
 f(x) = 1 if (low <= x <= high); else f(x) = 0 More...
 
class  RangeZeroProcessor
 Set any values in a range to zero. More...
 
class  RealMedianReconstructor
 Real space 3D reconstruction using per-voxel median. More...
 
class  RealPixelProcessor
 The base class for real space processor working on individual pixels. More...
 
class  RealToFFTProcessor
 This will replace the image with a full-circle 2D fft amplitude rendering. More...
 
class  RecipCarefullyProcessor
 Reciprocal image as if f(x) != 0: f(x) = 1/f(x) else: f(x) = zero_to. More...
 
class  Reconstructor
 Reconstructor class defines a way to do 3D recontruction. More...
 
class  ReconstructorVolumeData
 This is a Mixin class A class object encapsulating the volume data required by Reconstructors It basically stores two (pointers) to EMData objects and stores the dimensions of the image volume. More...
 
class  Refine3DAlignerGrid
 Refine alignment. More...
 
class  Refine3DAlignerQuaternion
 Refine alignment. More...
 
class  RefineAligner
 refine alignment. More...
 
class  RefineAlignerCG
 Conjugate gradient refine alignment. More...
 
class  Region
 Region defines a 2D or 3D rectangular region specified by its origin coordinates and all edges' sizes. More...
 
class  ReplaceValuefromListProcessor
 Replace the value of each pixel with a value in a given array. More...
 
class  ReverseProcessor
 mirror an image around an axis (reverse pixels) More...
 
class  Rotate180Processor
 Rotate by 180 using pixel swapping, works for 2D only. More...
 
class  RotateFlipAligner
 rotational and flip alignment More...
 
class  RotateFlipAlignerIterative
 rotational and flip alignment, iterative style More...
 
class  RotateInFSProcessor
 
class  RotatePrecenterAligner
 rotational alignment assuming centers are correct More...
 
class  RotateTranslateAligner
 rotational, translational alignment More...
 
class  RotateTranslateAlignerBispec
 rotational, translational alignment More...
 
class  RotateTranslateAlignerIterative
 Iterative rotational, translational alignment. More...
 
class  RotateTranslateAlignerPawel
 Rotational, translational alignment by resampling to polar coordinates. More...
 
class  RotateTranslateBestAligner
 rotational, translational alignment More...
 
class  RotateTranslateFlipAligner
 rotational, translational and flip alignment More...
 
class  RotateTranslateFlipAlignerIterative
 rotational, translational and flip alignment, iterative style More...
 
class  RotateTranslateFlipAlignerPawel
 Rotational, translational alignment by resampling to polar coordinates. More...
 
class  RotateTranslateFlipScaleAligner
 rotational, translational, flip, scaling alignment More...
 
class  RotateTranslateFlipScaleAlignerIterative
 Iterative rotational, translational alignment with flipping and scaling. More...
 
class  RotateTranslateScaleAligner
 rotational, translational, scaling alignment More...
 
class  RotateTranslateScaleAlignerIterative
 Iterative rotational, translational alignment with scaling. More...
 
class  RotationalAligner
 rotational alignment using angular correlation More...
 
class  RotationalAlignerBispec
 rotational alignment using invariants More...
 
class  RotationalAlignerIterative
 rotational alignment using the iterative method (in this case we only do one iteration b/c we are not doing a translation. More...
 
class  RotationalAverageProcessor
 makes image circularly symmetric. More...
 
class  RotationalSubstractProcessor
 subtracts circularly symmetric part of an image. More...
 
class  RT2Dto3DTreeAligner
 Alignment of a 2D image into a 3D volume using a hierarchical method with gradually decreasing downsampling in Fourier space. More...
 
class  RT2DTreeAligner
 2D rotational and translational alignment using a hierarchical method with gradually decreasing downsampling in Fourier space. More...
 
class  RT3DGridAligner
 rotational and translational alignment using a square qrid of Altitude and Azimuth values (the phi range is specifiable) This aligner is ported from the original tomohunter.py - it is less efficient than searching on the sphere (RT3DSphereAligner). More...
 
class  RT3DLocalTreeAligner
 3D rotational and translational alignment using a hierarchical method with gradually decreasing downsampling in Fourier space. More...
 
class  RT3DSphereAligner
 3D rotational and translational alignment using spherical sampling, can reduce the search space based on symmetry. More...
 
class  RT3DSymmetryAligner
 3D rotational symmetry aligner. More...
 
class  RT3DTreeAligner
 3D rotational and translational alignment using a hierarchical method with gradually decreasing downsampling in Fourier space. More...
 
class  RTFExhaustiveAligner
 rotational, translational and flip alignment using real-space methods. More...
 
class  RTFSlowExhaustiveAligner
 rotational, translational and flip alignment using exhaustive search. More...
 
class  SaffOrientationGenerator
 Saff orientation generator - based on the work of Saff and Kuijlaars, 1997 E.B. More...
 
class  SalIO
 A SAL image is an image from Perkin Elmer PDS Microdensitometer. More...
 
class  ScaleAligner
 Scale aligner. More...
 
class  ScaleAlignerABS
 This is an ABS for use in constructing, rt_scale, rt_flip, etc scale aligners. More...
 
class  ScaleTransformProcessor
 Scale the image with control over the output dimensions. More...
 
class  ScreenPoint
 
class  ScreenVector
 
class  SDGDProcessor
 Determines the second derivative in the gradient direction using David's image gradient processors. More...
 
class  SegmentSubunitProcessor
 This tries to extract a single subunit from a symmetric structure. More...
 
class  SerIO
 SER (Series File Format) is a file format created by Dr. More...
 
class  SetBitsProcessor
 
class  SetIsoPowProcessor
 Makes the radial power distribution spherically symmetric with a profile defined by "strucfac". More...
 
class  SetSFProcessor
 Sets the structure factor based on a 1D s/intensity curve as an XYData object. More...
 
class  ShapeAnalyzer
 Shape characterization Computes a set of values characteristic of the shape of a volume. More...
 
class  SigmaAverager
 SigmaAverager averages a list of images. More...
 
class  SigmaProcessor
 f(x) = mean if x<(mean-v2*sigma) or x>(mean+v1*sigma); else f(x) = x; More...
 
class  SigmaZeroEdgeProcessor
 Fill zeroes at edges with nearest horizontal/vertical value. More...
 
class  SingleOrientationGenerator
 SingleOrientationGenerator generates a single orientation with the specified EMAN-style Euler angles. More...
 
class  SingleSpiderIO
 Single Spider Image I/O class. More...
 
class  SitusIO
 situs is a a Situs-specific format on a cubic lattice. More...
 
class  SmartMaskProcessor
 Smart mask processor. More...
 
class  SNREvalProcessor
 Evaluate individual particle images using a tenchique similar to that used for CTF evaluation. More...
 
class  SNRProcessor
 Processor the images by the estimated SNR in each image.if parameter 'wiener' is 1, then wiener processor the images using the estimated SNR with CTF amplitude correction. More...
 
class  SpiderIO
 SPIDER: (System for Processing Image Data from Electron microscopy and Related fields) is an image processing system for electron microscopy. More...
 
class  SqEuclideanCmp
 Squared Euclidean distance normalized by n between 'this' and 'with'. More...
 
class  StandardProjector
 Fast real-space 3D projection. More...
 
class  StripeXYProcessor
 This processor will remove localized 'striping' along the x/y axes, caused by issues with CCD/CMOS readout. More...
 
class  SubtractOptProcessor
 Sorry for the pun. More...
 
class  SVDAnalyzer
 Singular Value Decomposition from GSL. More...
 
class  SymAlignProcessor
 Aligns a particle with the specified symmetry into the standard orientation for that symmetry. More...
 
class  SymAlignProcessorQuat
 Aligns a particle with a specified symetry to its symmetry axis using the simplex multidimensional minimization algorithm. More...
 
class  Symmetry3D
 Symmetry3D - A base class for 3D Symmetry objects. More...
 
class  SymSearchProcessor
 Identifiy the best symmetry in the given symmetry list for each pixel and then apply the best symmetry to each pixel. More...
 
class  TestImageAxes
 Make an image consisting of a single cross, with lines going in the axial directions, intersecting at the origin. More...
 
class  TestImageCirclesphere
 Replace a source image as a circle or sphere depends on 2D or 3D of the source image. More...
 
class  TestImageCylinder
 Replace a source image with a cylinder. More...
 
class  TestImageDisc
 Replace source image with a disc (generalized cylinder) More...
 
class  TestImageEllipse
 Generate an ellipse or ellipsoid image. More...
 
class  TestImageFourierGaussianBand
 Replace a source image with a Gaussian band in Fourier space with a given center and width. More...
 
class  TestImageFourierNoiseGaussian
 Replace a source image as a strict Gaussian. More...
 
class  TestImageFourierNoiseProfile
 
class  TestImageGaussian
 Replace a source image as a Gaussian Blob. More...
 
class  TestImageGradient
 Put a gradient in the image of the form y = mx+b : "x" is a string indicating any of the image axes, i.e., x,y or z. More...
 
class  TestImageHollowEllipse
 Generate an ellipse/ellipsoid image with an inner hollow ellipse/ellipsoid. More...
 
class  TestImageLineWave
 Treats the pixels as though they are 1D (even if the image is 2D or 3D), inserting a sine wave of pixel period extracted from the parameters (default is 10) More...
 
class  TestImageNoiseGauss
 Replace a source image with gaussian distributed random noise If you don't provide a seed at all, it should be seeded using the best available source of randomness( time(0) in this implementation). More...
 
class  TestImageNoiseUniformRand
 Replace a source image as a uniform random noise, random number generated from gsl_rng_mt19937, the pixel value is from 0 to 1, [0, 1) More...
 
class  TestImageProcessor
 Base class for a group of 'processor' used to create test image. More...
 
class  TestImagePureGaussian
 Replace a source image as a strict Gaussian. More...
 
class  TestImageScurve
 Replace a source image with a lumpy S-curve used for alignment testing. More...
 
class  TestImageSinewave
 Replace a source image as a sine wave in specified wave length. More...
 
class  TestImageSinewaveCircular
 Replace a source image as a circular sine wave in specified wave length. More...
 
class  TestImageSphericalWave
 Replace a source image as a sine wave in specified wave length. More...
 
class  TestImageSquarecube
 Replace a source image as a square or cube depends on 2D or 3D of the source image. More...
 
class  TestTomoImage
 Make an image useful for tomographic reconstruction testing this is a 3D phantom image based on the 2D phantom described in Delaney and Bresler, "Globally convergent edge-preserving regularized reconstruction: An application to limited-angle tomography". More...
 
class  TestUtil
 
class  TetrahedralSym
 An encapsulation of tetrahedral symmetry Doctor Phil has this to say about tetrahedral symmetry: " Each Platonic Solid has 2E symmetry elements. More...
 
class  ToCenterProcessor
 ToCenterProcessor centers image, ignores old dx, dy. More...
 
class  ToMassCenterProcessor
 ToMassCenterProcessor centers image at center of mass, ignores old dx, dy. More...
 
class  ToMinvalProcessor
 f(x) = x if x >= minval; f(x) = minval if x < minval More...
 
class  TomoAverager
 TomoAverager averages a list of volumes in Fourier space. More...
 
class  TomoCccCmp
 This implements the technique of Mike Schmid where by the cross correlation is normalized in an effort to remove the effects of the missing wedge. More...
 
class  TomoFscCmp
 This is a FSC comparitor for tomography. More...
 
class  TomoObject
 
class  TomoSeg
 
class  TomoTiltAngleWeightProcessor
 A processor that can be used to weight an image by 1/cos(angle) This processor evolved originally as an experimental tool for weighting tomographic data by the width of its cross section relative to the electron beam. More...
 
class  TomoTiltEdgeMaskProcessor
 A processor designed specifically for tomographic tilt series data. More...
 
class  TomoWedgeCccCmp
 Both images should be FFTs. More...
 
class  TomoWedgeFscCmp
 Both images should be FFTs. More...
 
class  ToZeroProcessor
 f(x) = x if x >= minval; f(x) = 0 if x < minval More...
 
class  Transform
 A Transform object is a somewhat specialized object designed specifically for EMAN2/Sparx storage of alignment parameters and euler orientations. More...
 
class  TransformProcessor
 Transform the image using a Transform object. More...
 
class  TranslationalAligner
 Translational 2D Alignment using cross correlation. More...
 
class  TransposeProcessor
 Transpose a 2D image. More...
 
class  TypeDict
 TypeDict is a dictionary to store <string, EMObject::ObjectType> pair. More...
 
class  U3DWriter
 A work in progress by David Woolford. More...
 
class  UnevenMatrix
 a general data structure for a matrix with variable x dim size for different y More...
 
class  Util
 Util is a collection of utility functions. More...
 
class  V4L2IO
 Read-only. More...
 
class  ValuePowProcessor
 Do a math power operation on image, f(x) = x ^ pow;. More...
 
class  ValueSqrtProcessor
 f(x) = sqrt(x) More...
 
class  ValueSquaredProcessor
 Do a square operation on image, f(x) = x * x;. More...
 
class  Vec2
 The Vec2 is precisely the same as Vec3 except it works exclusively in 2D Note there are convenient typedef so one needn't bother about using template terminology typedef Vec2<float> Vec2f; typedef Vec2<int> Vec2i; typedef Vec2double> Vec2d; // Not recommended for use unless precision is addressed in this class. More...
 
class  Vec3
 The Vec3 object is a templated object, intended to instantiated with basic types such as int, float, double etc. More...
 
class  Vec4
 The Vec4 object is a templated object, intended to instantiated with basic types such as int, float, double etc. More...
 
class  Vector3
 
class  Vector4
 
class  VerticalCmp
 
class  VerticalStripeProcessor
 Tries to fix images scanned on the zeiss for poor ccd normalization. More...
 
class  VtkIO
 VtkIO reads/writes VTK image file. More...
 
class  WatershedProcessor
 'paints' a circle into the image at x,y,z with values inside r1 set to v1, values between r1 and r2 will be set to a value between v1 and v2, and values outside r2 will be unchanged More...
 
class  WaveletProcessor
 Perform a Wavelet transform using GSL. More...
 
class  WedgeFillProcessor
 Fill missing wedge with information from another image. More...
 
class  Wiener2DAutoAreaProcessor
 Automatically determines the background for the image then uses this to perform Wiener filters on overlapping subregions of the image, which are then combined using linear interpolation. More...
 
class  Wiener2DFourierProcessor
 Wiener filter based on a Ctf object either in the image header. More...
 
class  WienerFourierReconstructor
 Fourier space 3D reconstruction This is a modified version of the normal FourierReconstructor which is aware of the SSNR information stored in individual class-average headers as "ctf_snr_total" and "ctf_wiener_filtered". More...
 
class  XGradientProcessor
 Determines the partial derivatives in the x direction Does this by constructing edge kernels in real space but convoluting in Fourier space. More...
 
class  XplorIO
 XPLOR image format is in ASCII: More...
 
class  XYData
 XYData defines a 1D (x,y) data set. More...
 
class  XYZAligner
 XYZAligner is an aligner template for defining new aligners. More...
 
class  XYZAverager
 XYZAverager is an averager template for defining new averagers. More...
 
class  XYZCmp
 XYZCmp is a cmp template for defining new cmps. More...
 
class  XYZIO
 XYZIO is a sample Image IO class. More...
 
class  XYZProcessor
 XYZProcessor is a processor template for defining new processors. More...
 
class  XYZProjector
 XYZProjector is an projector template for defining new projectors. More...
 
class  XYZReconstructor
 XYZReconstructor is a reconstructor template for defining new reconstructors. More...
 
class  YGradientProcessor
 
class  ZeroConstantProcessor
 Contraction of data, if any nearest neighbor is 0, value -> 0, generally used iteratively. More...
 
class  ZeroEdgePlaneProcessor
 zero edges of volume on all sides More...
 
class  ZeroEdgeRowProcessor
 zero edges of image on top and bottom, and on left and right. More...
 
class  ZGradientProcessor
 
class  ZThicknessProcessor
 Calculate the z thickness of each pixel in a binarized 3d image. More...
 

Typedefs

typedef boost::multi_array_ref< float, 2 > MArray2D
 
typedef boost::multi_array_ref< float, 3 > MArray3D
 
typedef boost::multi_array_ref< std::complex< float >, 2 > MCArray2D
 
typedef boost::multi_array_ref< std::complex< float >, 3 > MCArray3D
 
typedef boost::multi_array< int, 2 > MIArray2D
 
typedef boost::multi_array< int, 3 > MIArray3D
 
template<unsigned int T, class U >
using Rle = BitReader< T, true, U >
 
template<unsigned int T, class U >
using SubPix = BitReader< T, false, U >
 
using EerWord = uint64_t
 
using EerStream = BitStream< EerWord >
 
using EerRle = Rle< 7, EerWord >
 
using EerSubPix = SubPix< 4, EerWord >
 
typedef Vec4< float > Vec4f
 
typedef Vec4< int > Vec4i
 
typedef Vec4< double > Vec4d
 
typedef Vec3< float > Vec3f
 
typedef Vec3< int > Vec3i
 
typedef Vec3< double > Vec3d
 
typedef Vec2< float > Vec2f
 
typedef Vec2< int > Vec2i
 
typedef Vec2< double > Vec2d
 

Enumerations

enum  MapInfoType {
  NORMAL , ICOS2F_FIRST_OCTANT , ICOS2F_FULL , ICOS2F_HALF ,
  ICOS3F_HALF , ICOS3F_FULL , ICOS5F_HALF , ICOS5F_FULL ,
  ICOS_UNKNOWN
}
 

Functions

void dump_aligners ()
 
map< string, vector< string > > dump_aligners_list ()
 
void dump_analyzers ()
 
map< string, vector< string > > dump_analyzers_list ()
 
void dump_averagers ()
 
map< string, vector< string > > dump_averagers_list ()
 
void dump_cmps ()
 
map< string, vector< string > > dump_cmps_list ()
 
EMDataoperator+ (const EMData &em, float n)
 
EMDataoperator- (const EMData &em, float n)
 
EMDataoperator* (const EMData &em, float n)
 
EMDataoperator/ (const EMData &em, float n)
 
EMDataoperator+ (float n, const EMData &em)
 
EMDataoperator- (float n, const EMData &em)
 
EMDataoperator* (float n, const EMData &em)
 
EMDataoperator/ (float n, const EMData &em)
 
EMDatarsub (const EMData &em, float n)
 
EMDatardiv (const EMData &em, float n)
 
EMDataoperator+ (const EMData &a, const EMData &b)
 
EMDataoperator- (const EMData &a, const EMData &b)
 
EMDataoperator* (const EMData &a, const EMData &b)
 
EMDataoperator/ (const EMData &a, const EMData &b)
 
bool operator== (const EMObject &e1, const EMObject &e2)
 
bool operator!= (const EMObject &e1, const EMObject &e2)
 
bool operator== (const Dict &d1, const Dict &d2)
 
bool operator!= (const Dict &d1, const Dict &d2)
 
template<class T >
void dump_factory ()
 
template<class T >
map< string, vector< string > > dump_factory_list ()
 
IntPoint operator- (const IntPoint &p)
 
bool operator< (const Pixel &p1, const Pixel &p2)
 
bool operator== (const Pixel &p1, const Pixel &p2)
 
bool operator!= (const Pixel &p1, const Pixel &p2)
 
int multi_processors (EMData *image, vector< string > processornames)
 
void dump_processors ()
 
map< string, vector< string > > dump_processors_list ()
 
map< string, vector< string > > group_processors ()
 
void dump_projectors ()
 
map< string, vector< string > > dump_projectors_list ()
 
Quaternion operator+ (const Quaternion &q1, const Quaternion &q2)
 
Quaternion operator- (const Quaternion &q1, const Quaternion &q2)
 
Quaternion operator* (const Quaternion &q1, const Quaternion &q2)
 
Quaternion operator* (const Quaternion &q, float s)
 
Quaternion operator* (float s, const Quaternion &q)
 
Quaternion operator/ (const Quaternion &q1, const Quaternion &q2)
 
bool operator== (const Quaternion &q1, const Quaternion &q2)
 
bool operator!= (const Quaternion &q1, const Quaternion &q2)
 
EMDatapadfft_slice (const EMData *const slice, const Transform &t, int npad)
 Direct Fourier inversion Reconstructor. More...
 
void dump_reconstructors ()
 
map< string, vector< string > > dump_reconstructors_list ()
 
void dump_symmetries ()
 dump symmetries, useful for obtaining symmetry information More...
 
map< string, vector< string > > dump_symmetries_list ()
 dump_symmetries_list, useful for obtaining symmetry information More...
 
void dump_orientgens ()
 Dumps useful information about the OrientationGenerator factory. More...
 
map< string, vector< string > > dump_orientgens_list ()
 Can be used to get useful information about the OrientationGenerator factory. More...
 
Transform operator* (const Transform &M2, const Transform &M1)
 Matrix times Matrix, a pure mathematical operation. More...
 
template<typename Type >
Vec3f operator* (const Transform &M, const Vec3< Type > &v)
 Matrix times Vector, a pure mathematical operation. More...
 
template<typename Type >
Vec2f operator* (const Transform &M, const Vec2< Type > &v)
 Matrix times Vector, a pure mathematical operation. More...
 
template<typename Type >
Vec3f operator* (const Vec3< Type > &v, const Transform &M)
 Vector times a matrix. More...
 
template<typename Type , typename Type2 >
Vec3< Type > operator+ (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec3< Type > operator+ (const Vec3< Type > &v, const Type2 &n)
 
template<typename Type , typename Type2 >
Vec3< Type > operator- (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec3< Type > operator- (const Vec3< Type > &v, const Type2 &n)
 
template<typename Type >
Vec3< Type > operator- (const Vec3< Type > &v)
 
template<typename Type , typename Type2 >
Type operator* (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec3< Type2 > operator* (const Type &d, const Vec3< Type2 > &v)
 
template<typename Type , typename Type2 >
Vec3< Type > operator* (const Vec3< Type > &v, const Type2 &d)
 
template<typename Type , typename Type2 >
Vec3< Type2 > operator/ (const Type &d, const Vec3< Type2 > &v)
 
template<typename Type , typename Type2 >
Vec3< Type > operator/ (const Vec3< Type > &v, const Type2 &d)
 
template<typename Type , typename Type2 >
bool operator== (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
bool operator!= (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec2< Type > operator+ (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec2< Type > operator+ (const Vec2< Type > &v, const Type2 &n)
 
template<typename Type , typename Type2 >
Vec2< Type > operator- (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec2< Type > operator- (const Vec2< Type > &v, const Type2 &n)
 
template<typename Type >
Vec2< Type > operator- (const Vec2< Type > &v)
 
template<typename Type , typename Type2 >
Type operator* (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec2< Type2 > operator* (const Type &d, const Vec2< Type2 > &v)
 
template<typename Type , typename Type2 >
Vec2< Type > operator* (const Vec2< Type > &v, const Type2 &d)
 
template<typename Type , typename Type2 >
Vec2< Type2 > operator/ (const Type &d, const Vec2< Type2 > &v)
 
template<typename Type , typename Type2 >
Vec2< Type > operator/ (const Vec2< Type > &v, const Type2 &d)
 
template<typename Type , typename Type2 >
bool operator== (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
template<typename Type , typename Type2 >
bool operator!= (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
bool isZero (double in_d, double in_dEps=1e-16)
 
ScreenVector operator* (const double s, const ScreenVector &v)
 
std::ostream & operator<< (std::ostream &os, const ScreenVector &v)
 
std::ostream & operator<< (std::ostream &os, const ScreenPoint &p)
 
Vector3 operator* (const double s, const Vector3 &v)
 
double dot (const Vector3 &w, const Vector3 &v)
 
Vector3 cross (const Vector3 &w, const Vector3 &v)
 
double length (const Vector3 &v)
 
Vector3 unit (const Vector3 &v)
 
std::ostream & operator<< (std::ostream &os, const Vector3 &v)
 
Point3 lerp (const Point3 &p0, const Point3 &p1, double dT)
 
std::ostream & operator<< (std::ostream &os, const Point3 &p)
 
Vector3 operator* (const Vector3 &v, const Matrix3 &m)
 
Point3 operator* (const Point3 &p, const Matrix3 &m)
 
std::ostream & operator<< (std::ostream &os, const Matrix3 &m)
 
Vector4 operator* (const double s, const Vector4 &v)
 
double length (const Vector4 &v)
 
Vector4 unit (const Vector4 &v)
 
std::ostream & operator<< (std::ostream &os, const Vector4 &v)
 
std::ostream & operator<< (std::ostream &os, const Matrix4 &m)
 

Variables

const int EMDataTypeBits [] = { 0,8,8,16,16,32,32,32,64,32,32,64,0 }
 
static DecoderIx< 0 > decoder0x
 
static DecoderIx< 1 > decoder1x
 
static DecoderIx< 2 > decoder2x
 
static const int MAXFFT =32768
 

Detailed Description

E2Exception class.

df3 file format (http://www.povray.org/documentation/view/3.6.1/374) Header: The df3 format consists of a 6 byte header of three 16-bit integers with high order byte first.

E2Exception class is a subclass of std::exception; All EMAN2 exception classes are subclass of E2Exception class.

A XYZ Exception class is defined in the following way: 0) It will extend E2Exception class. 1) The class is named _XYZException. 2) The class has a function to return its name "XYZException". 3) A macro called "XYZException" is defined to simplify the usage of _XYZException class. So that filename, function name, and line number can be handled automatically.

How to use XYZException:

1) To throw exception, use "throw XYZException(...)"; 2) To catch exception, use "catch (_XYZException & e) ...".

These three values give the x,y,z size of the data in pixels (or more appropriately called voxels ). Data: The header is followed by x*y*z unsigned integer bytes of data with a resolution of 8, 16 or 32 bit. The data are written with high order byte first (big-endian). The resolution of the data is determined by the size of the df3-file. That is, if the file is twice (minus header, of course) as long as an 8 bit file then it is assumed to contain 16 bit ints and if it is four times as long 32 bit ints.

Typedef Documentation

◆ EerRle

using EMAN::EerRle = typedef Rle <7, EerWord>

Definition at line 116 of file eerio.h.

◆ EerStream

using EMAN::EerStream = typedef BitStream<EerWord>

Definition at line 115 of file eerio.h.

◆ EerSubPix

using EMAN::EerSubPix = typedef SubPix<4, EerWord>

Definition at line 117 of file eerio.h.

◆ EerWord

using EMAN::EerWord = typedef uint64_t

Definition at line 114 of file eerio.h.

◆ MArray2D

typedef boost::multi_array_ref<float, 2> EMAN::MArray2D

Definition at line 68 of file emdata.h.

◆ MArray3D

typedef boost::multi_array_ref<float, 3> EMAN::MArray3D

Definition at line 69 of file emdata.h.

◆ MCArray2D

typedef boost::multi_array_ref<std::complex<float>, 2> EMAN::MCArray2D

Definition at line 70 of file emdata.h.

◆ MCArray3D

typedef boost::multi_array_ref<std::complex<float>, 3> EMAN::MCArray3D

Definition at line 71 of file emdata.h.

◆ MIArray2D

typedef boost::multi_array<int, 2> EMAN::MIArray2D

Definition at line 72 of file emdata.h.

◆ MIArray3D

typedef boost::multi_array< int, 3 > EMAN::MIArray3D

Definition at line 73 of file emdata.h.

◆ Rle

template<unsigned int T, class U >
using EMAN::Rle = typedef BitReader<T, true, U>

Definition at line 109 of file eerio.h.

◆ SubPix

template<unsigned int T, class U >
using EMAN::SubPix = typedef BitReader<T, false, U>

Definition at line 112 of file eerio.h.

◆ Vec2d

typedef Vec2<double> EMAN::Vec2d

Definition at line 1073 of file vec3.h.

◆ Vec2f

typedef Vec2<float> EMAN::Vec2f

Definition at line 1071 of file vec3.h.

◆ Vec2i

typedef Vec2<int> EMAN::Vec2i

Definition at line 1072 of file vec3.h.

◆ Vec3d

typedef Vec3<double> EMAN::Vec3d

Definition at line 695 of file vec3.h.

◆ Vec3f

typedef Vec3<float> EMAN::Vec3f

Definition at line 693 of file vec3.h.

◆ Vec3i

typedef Vec3<int> EMAN::Vec3i

Definition at line 694 of file vec3.h.

◆ Vec4d

typedef Vec4<double> EMAN::Vec4d

Definition at line 254 of file vec3.h.

◆ Vec4f

typedef Vec4<float> EMAN::Vec4f

Definition at line 252 of file vec3.h.

◆ Vec4i

typedef Vec4<int> EMAN::Vec4i

Definition at line 253 of file vec3.h.

Enumeration Type Documentation

◆ MapInfoType

Enumerator
NORMAL 
ICOS2F_FIRST_OCTANT 
ICOS2F_FULL 
ICOS2F_HALF 
ICOS3F_HALF 
ICOS3F_FULL 
ICOS5F_HALF 
ICOS5F_FULL 
ICOS_UNKNOWN 

Definition at line 94 of file emobject.h.

94 {
95 NORMAL,
104 };
@ ICOS3F_FULL
Definition: emobject.h:100
@ ICOS2F_HALF
Definition: emobject.h:98
@ ICOS_UNKNOWN
Definition: emobject.h:103
@ ICOS2F_FIRST_OCTANT
Definition: emobject.h:96
@ ICOS5F_HALF
Definition: emobject.h:101
@ ICOS5F_FULL
Definition: emobject.h:102
@ ICOS3F_HALF
Definition: emobject.h:99
@ NORMAL
Definition: emobject.h:95
@ ICOS2F_FULL
Definition: emobject.h:97

Function Documentation

◆ cross()

Vector3 EMAN::cross ( const Vector3 w,
const Vector3 v 
)
inline

Definition at line 309 of file vecmath.h.

309 {
310 return w ^ v;
311 }

Referenced by EMAN::PointArray::remove_helix_from_map().

◆ dot()

double EMAN::dot ( const Vector3 w,
const Vector3 v 
)
inline

◆ dump_aligners()

void EMAN::dump_aligners ( )

Definition at line 5436 of file aligner.cpp.

5437{
5438 dump_factory < Aligner > ();
5439}

◆ dump_aligners_list()

map< string, vector< string > > EMAN::dump_aligners_list ( )

Definition at line 5441 of file aligner.cpp.

5442{
5443 return dump_factory_list < Aligner > ();
5444}

◆ dump_analyzers()

void EMAN::dump_analyzers ( )

Definition at line 1022 of file analyzer.cpp.

1023{
1024 dump_factory < Analyzer > ();
1025}

◆ dump_analyzers_list()

map< string, vector< string > > EMAN::dump_analyzers_list ( )

Definition at line 1027 of file analyzer.cpp.

1028{
1029 return dump_factory_list < Analyzer > ();
1030}

◆ dump_averagers()

void EMAN::dump_averagers ( )

Definition at line 1597 of file averager.cpp.

1598{
1599 dump_factory < Averager > ();
1600}

◆ dump_averagers_list()

map< string, vector< string > > EMAN::dump_averagers_list ( )

Definition at line 1602 of file averager.cpp.

1603{
1604 return dump_factory_list < Averager > ();
1605}

◆ dump_cmps()

void EMAN::dump_cmps ( )

Definition at line 1664 of file cmp.cpp.

1665{
1666 dump_factory < Cmp > ();
1667}

◆ dump_cmps_list()

map< string, vector< string > > EMAN::dump_cmps_list ( )

Definition at line 1669 of file cmp.cpp.

1670{
1671 return dump_factory_list < Cmp > ();
1672}

◆ dump_factory()

template<class T >
void EMAN::dump_factory ( )

Definition at line 848 of file emobject.h.

849 {
850 auto item_names = Factory<T>::get_list();
851
852 for (size_t i = 0; i < item_names.size(); i++) {
853 T* item = Factory<T>::get(item_names[i]);
854 printf("%s : %s\n", item->get_name().c_str(),item->get_desc().c_str());
855 TypeDict td = item->get_param_types();
856 td.dump();
857 }
858 }
Factory is used to store objects to create new instances.
Definition: emobject.h:725
TypeDict is a dictionary to store <string, EMObject::ObjectType> pair.
Definition: emobject.h:305

References EMAN::TypeDict::dump(), EMAN::Factory< T >::get(), and EMAN::Factory< T >::get_list().

◆ dump_factory_list()

template<class T >
map< string, vector< string > > EMAN::dump_factory_list ( )

Definition at line 861 of file emobject.h.

862 {
863 vector<string> item_names = Factory<T>::get_list();
864 map<string, vector<string> > factory_list;
865
866 for(auto p = item_names.begin(); p !=item_names.end(); ++p) {
867 T* item = Factory<T>::get(*p);
868
869 string name = item->get_name();
870
871 vector<string> content;
872 content.push_back(item->get_desc());
873 TypeDict td = item->get_param_types();
874 vector<string> keys = td.keys();
875 for(unsigned int i=0; i<td.size(); ++i) {
876 content.push_back(keys[i]);
877 content.push_back( td.get_type(keys[i]) );
878 content.push_back( td.get_desc(keys[i]) );
879 }
880 factory_list[name] = content;
881 }
882
883 return factory_list;
884 }
vector< string > keys() const
Definition: emobject.h:315
string get_type(const string &key)
Definition: emobject.h:336
string get_desc(const string &key)
Definition: emobject.h:341
size_t size() const
Definition: emobject.h:325

References EMAN::Factory< T >::get(), EMAN::TypeDict::get_desc(), EMAN::Factory< T >::get_list(), EMAN::TypeDict::get_type(), EMAN::TypeDict::keys(), and EMAN::TypeDict::size().

◆ dump_orientgens()

void EMAN::dump_orientgens ( )

Dumps useful information about the OrientationGenerator factory.

Definition at line 157 of file symmetry.cpp.

158{
159 dump_factory < OrientationGenerator > ();
160}

◆ dump_orientgens_list()

map< string, vector< string > > EMAN::dump_orientgens_list ( )

Can be used to get useful information about the OrientationGenerator factory.

Definition at line 162 of file symmetry.cpp.

163{
164 return dump_factory_list < OrientationGenerator > ();
165}

◆ dump_processors()

void EMAN::dump_processors ( )

Definition at line 13086 of file processor.cpp.

13087{
13088 dump_factory < Processor > ();
13089}

◆ dump_processors_list()

map< string, vector< string > > EMAN::dump_processors_list ( )

Definition at line 13091 of file processor.cpp.

13092{
13093 return dump_factory_list < Processor > ();
13094}

◆ dump_projectors()

void EMAN::dump_projectors ( )

Definition at line 2153 of file projector.cpp.

2154{
2155 dump_factory < Projector > ();
2156}

◆ dump_projectors_list()

map< string, vector< string > > EMAN::dump_projectors_list ( )

Definition at line 2158 of file projector.cpp.

2159{
2160 return dump_factory_list < Projector > ();
2161}

◆ dump_reconstructors()

void EMAN::dump_reconstructors ( )

Definition at line 6280 of file reconstructor.cpp.

6281{
6282 dump_factory < Reconstructor > ();
6283}

◆ dump_reconstructors_list()

map< string, vector< string > > EMAN::dump_reconstructors_list ( )

Definition at line 6285 of file reconstructor.cpp.

6286{
6287 return dump_factory_list < Reconstructor > ();
6288}

◆ dump_symmetries()

void EMAN::dump_symmetries ( )

dump symmetries, useful for obtaining symmetry information

Definition at line 65 of file symmetry.cpp.

66{
67 dump_factory < Symmetry3D > ();
68}

◆ dump_symmetries_list()

map< string, vector< string > > EMAN::dump_symmetries_list ( )

dump_symmetries_list, useful for obtaining symmetry information

Definition at line 70 of file symmetry.cpp.

71{
72 return dump_factory_list < Symmetry3D > ();
73}

◆ group_processors()

map< string, vector< string > > EMAN::group_processors ( )

Definition at line 13096 of file processor.cpp.

13097{
13098 map<string, vector<string> > processor_groups;
13099
13100 vector <string> processornames = Factory<Processor>::get_list();
13101
13102 for (size_t i = 0; i < processornames.size(); i++) {
13103 Processor * f = Factory<Processor>::get(processornames[i]);
13104 if (dynamic_cast<RealPixelProcessor*>(f) != 0) {
13105 processor_groups["RealPixelProcessor"].push_back(f->get_name());
13106 }
13107 else if (dynamic_cast<BoxStatProcessor*>(f) != 0) {
13108 processor_groups["BoxStatProcessor"].push_back(f->get_name());
13109 }
13110 else if (dynamic_cast<ComplexPixelProcessor*>(f) != 0) {
13111 processor_groups["ComplexPixelProcessor"].push_back(f->get_name());
13112 }
13113 else if (dynamic_cast<CoordinateProcessor*>(f) != 0) {
13114 processor_groups["CoordinateProcessor"].push_back(f->get_name());
13115 }
13116 else if (dynamic_cast<FourierProcessor*>(f) != 0) {
13117 processor_groups["FourierProcessor"].push_back(f->get_name());
13118 }
13119 else if (dynamic_cast<NewFourierProcessor*>(f) != 0) {
13120 processor_groups["FourierProcessor"].push_back(f->get_name());
13121 }
13122 else if (dynamic_cast<NormalizeProcessor*>(f) != 0) {
13123 processor_groups["NormalizeProcessor"].push_back(f->get_name());
13124 }
13125 else {
13126 processor_groups["Others"].push_back(f->get_name());
13127 }
13128 }
13129
13130 return processor_groups;
13131}
BoxStatProcessor files are a kind of neighborhood processors.
Definition: processor.h:4480
The base class for fourier space processor working on individual pixels.
Definition: processor.h:4312
CoordinateProcessor applies processing based on a pixel's value and it coordinates.
Definition: processor.h:3629
base class for Fourier filters
Definition: processor.h:333
Base class for normalization processors.
Definition: processor.h:5827
Typical usage of Processors are as follows:
Definition: processor.h:90
virtual string get_name() const =0
Get the processor's name.
The base class for real space processor working on individual pixels.
Definition: processor.h:2179

References EMAN::Factory< T >::get(), EMAN::Factory< T >::get_list(), and EMAN::Processor::get_name().

◆ isZero()

bool EMAN::isZero ( double  in_d,
double  in_dEps = 1e-16 
)
inline

◆ length() [1/2]

double EMAN::length ( const Vector3 v)
inline

◆ length() [2/2]

double EMAN::length ( const Vector4 v)
inline

Definition at line 684 of file vecmath.h.

684{ return v.length(); }
double length() const
Definition: vecmath.h:647

References EMAN::Vector4::length().

◆ lerp()

Point3 EMAN::lerp ( const Point3 p0,
const Point3 p1,
double  dT 
)
inline

Definition at line 402 of file vecmath.h.

403 {
404 const double dTMinus = 1.0 - dT;
405 return Point3( dTMinus * p0[0] + dT * p1[0], dTMinus * p0[1] + dT * p1[1], dTMinus * p0[2] + dT * p1[2] );
406 }

◆ multi_processors()

int EMAN::multi_processors ( EMData image,
vector< string >  processornames 
)

Definition at line 10685 of file processor.cpp.

10686{
10687 Assert(image != 0);
10688 Assert(processornames.size() > 0);
10689
10690 for (size_t i = 0; i < processornames.size(); i++) {
10691 image->process_inplace(processornames[i]);
10692 }
10693 return 0;
10694}
#define Assert(s)
Define Assert() function that is effective only when -DDEBUG is used.
Definition: emassert.h:42

References Assert.

◆ operator!=() [1/6]

bool EMAN::operator!= ( const Dict d1,
const Dict d2 
)

Definition at line 1027 of file emobject.cpp.

1028{
1029 return !(d1 == d2);
1030}

◆ operator!=() [2/6]

bool EMAN::operator!= ( const EMObject e1,
const EMObject e2 
)

Definition at line 873 of file emobject.cpp.

874{
875 return !(e1 == e2);
876}

◆ operator!=() [3/6]

bool EMAN::operator!= ( const Pixel p1,
const Pixel p2 
)

Definition at line 58 of file geometry.cpp.

59{
60 return !(p1 == p2);
61}

◆ operator!=() [4/6]

bool EMAN::operator!= ( const Quaternion q1,
const Quaternion q2 
)

Definition at line 366 of file quaternion.cpp.

367{
368 return (!(q1 == q2));
369}

◆ operator!=() [5/6]

template<typename Type , typename Type2 >
bool EMAN::operator!= ( const Vec2< Type > &  v1,
const Vec2< Type2 > &  v2 
)
inline

Definition at line 1064 of file vec3.h.

1064 {
1065 if (v1[0] != v2[0] || v1[1] != v2[1] ) {
1066 return true;
1067 }
1068 return false;
1069 }

◆ operator!=() [6/6]

template<typename Type , typename Type2 >
bool EMAN::operator!= ( const Vec3< Type > &  v1,
const Vec3< Type2 > &  v2 
)
inline

Definition at line 686 of file vec3.h.

686 {
687 if (v1[0] != v2[0] || v1[1] != v2[1] || v1[2] != v2[2]) {
688 return true;
689 }
690 return false;
691 }

◆ operator*() [1/21]

ScreenVector EMAN::operator* ( const double  s,
const ScreenVector v 
)
inline

Definition at line 129 of file vecmath.h.

129 {
130 return ScreenVector( (int)(v[0] * s), (int)(v[1] * s) );
131 }

◆ operator*() [2/21]

Vector3 EMAN::operator* ( const double  s,
const Vector3 v 
)
inline

Definition at line 301 of file vecmath.h.

301 {
302 return Vector3( v[0] * s, v[1] * s, v[2] * s );
303 }

◆ operator*() [3/21]

Vector4 EMAN::operator* ( const double  s,
const Vector4 v 
)
inline

Definition at line 680 of file vecmath.h.

680 {
681 return Vector4( v[0] * s, v[1] * s, v[2] * s, v[3] * s );
682 }

◆ operator*() [4/21]

EMData * EMAN::operator* ( const EMData a,
const EMData b 
)

Definition at line 3272 of file emdata.cpp.

3273{
3274 EMData * r = a.copy();
3275 r->mult(b);
3276 return r;
3277}
EMData stores an image's data and defines core image processing routines.
Definition: emdata.h:82

◆ operator*() [5/21]

EMData * EMAN::operator* ( const EMData em,
float  n 
)

Definition at line 3201 of file emdata.cpp.

3202{
3203 EMData* r = em.copy();
3204 r ->mult(n);
3205 return r;
3206}

◆ operator*() [6/21]

Point3 EMAN::operator* ( const Point3 p,
const Matrix3 m 
)
inline

Definition at line 574 of file vecmath.h.

574 {
575 return Point3(m(0,0) * p[0] + m(1,0) * p[1] + m(2,0) * p[2],
576 m(0,1) * p[0] + m(1,1) * p[1] + m(2,1) * p[2],
577 m(0,2) * p[0] + m(1,2) * p[1] + m(2,2) * p[2]);
578 }

◆ operator*() [7/21]

Quaternion EMAN::operator* ( const Quaternion q,
float  s 
)

Definition at line 326 of file quaternion.cpp.

327{
328 Quaternion q1 = q;
329 q1 *= s;
330 return q1;
331}
Quaternion is used in Rotation and Transformation to replace Euler angles.
Definition: quaternion.h:62

◆ operator*() [8/21]

Quaternion EMAN::operator* ( const Quaternion q1,
const Quaternion q2 
)

Definition at line 319 of file quaternion.cpp.

320{
321 Quaternion q = q1;
322 q *= q2;
323 return q;
324}

◆ operator*() [9/21]

template<typename Type >
Vec2f EMAN::operator* ( const Transform M,
const Vec2< Type > &  v 
)

Matrix times Vector, a pure mathematical operation.

Definition at line 538 of file transform.h.

539 {
540 return M.transform(v);
541 }
Vec2f transform(const float &x, const float &y) const
Transform 2D coordinates using the internal transformation matrix.
Definition: transform.h:417

References EMAN::Transform::transform().

◆ operator*() [10/21]

template<typename Type >
Vec3f EMAN::operator* ( const Transform M,
const Vec3< Type > &  v 
)

Matrix times Vector, a pure mathematical operation.

Definition at line 531 of file transform.h.

532 {
533 return M.transform(v);
534 }

References EMAN::Transform::transform().

◆ operator*() [11/21]

Transform EMAN::operator* ( const Transform M2,
const Transform M1 
)

Matrix times Matrix, a pure mathematical operation.

Definition at line 1353 of file transform.cpp.

1354{
1355 Transform result;
1356 for (int i=0; i<3; i++) {
1357 for (int j=0; j<4; j++) {
1358 result[i][j] = M2[i][0] * M1[0][j] + M2[i][1] * M1[1][j] + M2[i][2] * M1[2][j];
1359 }
1360 result[i][3] += M2[i][3];
1361 }
1362
1363 return result;
1364}
A Transform object is a somewhat specialized object designed specifically for EMAN2/Sparx storage of ...
Definition: transform.h:75

◆ operator*() [12/21]

template<typename Type , typename Type2 >
Vec2< Type2 > EMAN::operator* ( const Type &  d,
const Vec2< Type2 > &  v 
)
inline

Definition at line 1022 of file vec3.h.

1023 {
1024 // Preserve the vector type
1025 Vec2<Type2> v1(v);
1026 v1 *= d;
1027 return v1;
1028 }
The Vec2 is precisely the same as Vec3 except it works exclusively in 2D Note there are convenient ty...
Definition: vec3.h:710

◆ operator*() [13/21]

template<typename Type , typename Type2 >
Vec3< Type2 > EMAN::operator* ( const Type &  d,
const Vec3< Type2 > &  v 
)
inline

Definition at line 644 of file vec3.h.

645 {
646 // Preserve the vector type
647 Vec3<Type2> v1(v);
648 v1 *= d;
649 return v1;
650 }
The Vec3 object is a templated object, intended to instantiated with basic types such as int,...
Definition: vec3.h:272

◆ operator*() [14/21]

template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator* ( const Vec2< Type > &  v,
const Type2 &  d 
)
inline

Definition at line 1031 of file vec3.h.

1031 {
1032 // Preserve the vector type
1033 Vec2<Type> v1(v);
1034 v1 *= d;
1035 return v1;
1036 }

◆ operator*() [15/21]

template<typename Type , typename Type2 >
Type EMAN::operator* ( const Vec2< Type > &  v1,
const Vec2< Type2 > &  v2 
)
inline

Definition at line 1016 of file vec3.h.

1017 {
1018 return v1.dot(v2);
1019 }
Type dot(const Vec2< Type2 > &v) const
Calculate the dot product of 'this' vector with a second vector.
Definition: vec3.h:804

References EMAN::Vec2< Type >::dot().

◆ operator*() [16/21]

template<typename Type >
Vec3f EMAN::operator* ( const Vec3< Type > &  v,
const Transform M 
)

Vector times a matrix.

Highly specialized. Useful when the upper 3x3 only contains rotations and you want to quickly multiply by the rotation matrix inverse (transpose)

Definition at line 547 of file transform.h.

548 {
549 float x = v[0] * M[0][0] + v[1] * M[1][0] + v[2] * M[2][0] ;
550 float y = v[0] * M[0][1] + v[1] * M[1][1] + v[2] * M[2][1];
551 float z = v[0] * M[0][2] + v[1] * M[1][2] + v[2] * M[2][2];
552 return Vec3f(x, y, z);
553 }
Vec3< float > Vec3f
Definition: vec3.h:693
#define y(i, j)
Definition: projector.cpp:1516
#define x(i)
Definition: projector.cpp:1517

References x, and y.

◆ operator*() [17/21]

template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator* ( const Vec3< Type > &  v,
const Type2 &  d 
)
inline

Definition at line 653 of file vec3.h.

653 {
654 // Preserve the vector type
655 Vec3<Type> v1(v);
656 v1 *= d;
657 return v1;
658 }

◆ operator*() [18/21]

template<typename Type , typename Type2 >
Type EMAN::operator* ( const Vec3< Type > &  v1,
const Vec3< Type2 > &  v2 
)
inline

Definition at line 638 of file vec3.h.

639 {
640 return v1.dot(v2);
641 }
Type dot(const Vec3< Type2 > &v) const
Calculate the dot product of 'this' vector with a second vector.
Definition: vec3.h:373

References EMAN::Vec3< Type >::dot().

◆ operator*() [19/21]

Vector3 EMAN::operator* ( const Vector3 v,
const Matrix3 m 
)
inline

Definition at line 567 of file vecmath.h.

567 {
568 return Vector3(m(0,0) * v[0] + m(1,0) * v[1] + m(2,0) * v[2],
569 m(0,1) * v[0] + m(1,1) * v[1] + m(2,1) * v[2],
570 m(0,2) * v[0] + m(1,2) * v[1] + m(2,2) * v[2]);
571 }

◆ operator*() [20/21]

EMData * EMAN::operator* ( float  n,
const EMData em 
)

Definition at line 3231 of file emdata.cpp.

3232{
3233 EMData * r = em.copy();
3234 r->mult(n);
3235 return r;
3236}

◆ operator*() [21/21]

Quaternion EMAN::operator* ( float  s,
const Quaternion q 
)

Definition at line 333 of file quaternion.cpp.

334{
335 Quaternion q1 = q;
336 q1 *= s;
337 return q1;
338}

◆ operator+() [1/8]

EMData * EMAN::operator+ ( const EMData a,
const EMData b 
)

Definition at line 3258 of file emdata.cpp.

3259{
3260 EMData * r = a.copy();
3261 r->add(b);
3262 return r;
3263}

◆ operator+() [2/8]

EMData * EMAN::operator+ ( const EMData em,
float  n 
)

Definition at line 3187 of file emdata.cpp.

3188{
3189 EMData * r = em.copy();
3190 r->add(n);
3191 return r;
3192}

◆ operator+() [3/8]

Quaternion EMAN::operator+ ( const Quaternion q1,
const Quaternion q2 
)

Definition at line 304 of file quaternion.cpp.

305{
306 Quaternion q = q1;
307 q += q2;
308 return q;
309}

◆ operator+() [4/8]

template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator+ ( const Vec2< Type > &  v,
const Type2 &  n 
)
inline

Definition at line 987 of file vec3.h.

988 {
989 Vec2<Type> v1(v);
990 v1 += n;
991 return v1;
992 }

◆ operator+() [5/8]

template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator+ ( const Vec2< Type > &  v1,
const Vec2< Type2 > &  v2 
)
inline

Definition at line 981 of file vec3.h.

982 {
983 return Vec2<Type>(static_cast<Type>(v1[0] + v2[0]), static_cast<Type>(v1[1] + v2[1]));;
984 }

◆ operator+() [6/8]

template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator+ ( const Vec3< Type > &  v,
const Type2 &  n 
)
inline

Definition at line 593 of file vec3.h.

594 {
595 Vec3<Type> v1(v);
596 v1 += n;
597 return v1;
598 }

◆ operator+() [7/8]

template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator+ ( const Vec3< Type > &  v1,
const Vec3< Type2 > &  v2 
)
inline

Definition at line 586 of file vec3.h.

587 {
588
589 return Vec3<Type>(static_cast<Type>(v1[0] + v2[0]), static_cast<Type>(v1[1] + v2[1]),static_cast<Type>(v1[2] + v2[2]));;
590 }

◆ operator+() [8/8]

EMData * EMAN::operator+ ( float  n,
const EMData em 
)

Definition at line 3216 of file emdata.cpp.

3217{
3218 EMData * r = em.copy();
3219 r->add(n);
3220 return r;
3221}

◆ operator-() [1/11]

EMData * EMAN::operator- ( const EMData a,
const EMData b 
)

Definition at line 3265 of file emdata.cpp.

3266{
3267 EMData * r = a.copy();
3268 r->sub(b);
3269 return r;
3270}

◆ operator-() [2/11]

EMData * EMAN::operator- ( const EMData em,
float  n 
)

Definition at line 3194 of file emdata.cpp.

3195{
3196 EMData* r = em.copy();
3197 r->sub(n);
3198 return r;
3199}

Referenced by rsub().

◆ operator-() [3/11]

IntPoint EMAN::operator- ( const IntPoint p)

Definition at line 37 of file geometry.cpp.

38{
39 return IntPoint(-p[0],-p[1],-p[2]);
40}
IntPoint defines an integer-coordinate point in a 1D/2D/3D space.
Definition: geometry.h:192

◆ operator-() [4/11]

Quaternion EMAN::operator- ( const Quaternion q1,
const Quaternion q2 
)

Definition at line 311 of file quaternion.cpp.

312{
313 Quaternion q = q1;
314 q -= q2;
315 return q;
316}

◆ operator-() [5/11]

template<typename Type >
Vec2< Type > EMAN::operator- ( const Vec2< Type > &  v)
inline

Definition at line 1009 of file vec3.h.

1010 {
1011 return Vec2<Type>(-v[0],-v[1]);
1012 }

◆ operator-() [6/11]

template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator- ( const Vec2< Type > &  v,
const Type2 &  n 
)
inline

Definition at line 1001 of file vec3.h.

1002 {
1003 Vec2<Type> v1(v);
1004 v1 -= n;
1005 return v1;
1006 }

◆ operator-() [7/11]

template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator- ( const Vec2< Type > &  v1,
const Vec2< Type2 > &  v2 
)
inline

Definition at line 995 of file vec3.h.

996 {
997 return Vec2<Type>(static_cast<Type>(v1[0] - v2[0]), static_cast<Type>(v1[1] - v2[1]));
998 }

◆ operator-() [8/11]

template<typename Type >
Vec3< Type > EMAN::operator- ( const Vec3< Type > &  v)
inline

Definition at line 624 of file vec3.h.

625 {
626 return Vec3<Type>(-v[0],-v[1],-v[2]);
627 }

◆ operator-() [9/11]

template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator- ( const Vec3< Type > &  v,
const Type2 &  n 
)
inline

Definition at line 617 of file vec3.h.

618 {
619 Vec3<Type> v1(v);
620 v1 -= n;
621 return v1;
622 }

◆ operator-() [10/11]

template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator- ( const Vec3< Type > &  v1,
const Vec3< Type2 > &  v2 
)
inline

Definition at line 609 of file vec3.h.

610 {
611 return Vec3<Type>(static_cast<Type>(v1[0] - v2[0]),
612 static_cast<Type>(v1[1] - v2[1]),
613 static_cast<Type>(v1[2] - v2[2]));
614 }

◆ operator-() [11/11]

EMData * EMAN::operator- ( float  n,
const EMData em 
)

Definition at line 3223 of file emdata.cpp.

3224{
3225 EMData * r = em.copy();
3226 r->mult(-1.0f);
3227 r->add(n);
3228 return r;
3229}

◆ operator/() [1/8]

EMData * EMAN::operator/ ( const EMData a,
const EMData b 
)

Definition at line 3279 of file emdata.cpp.

3280{
3281 EMData * r = a.copy();
3282 r->div(b);
3283 return r;
3284}

◆ operator/() [2/8]

EMData * EMAN::operator/ ( const EMData em,
float  n 
)

Definition at line 3208 of file emdata.cpp.

3209{
3210 EMData * r = em.copy();
3211 r->div(n);
3212 return r;
3213}

Referenced by rdiv().

◆ operator/() [3/8]

Quaternion EMAN::operator/ ( const Quaternion q1,
const Quaternion q2 
)

Definition at line 340 of file quaternion.cpp.

341{
342 Quaternion q = q1;
343 q /= q2;
344 return q;
345}

◆ operator/() [4/8]

template<typename Type , typename Type2 >
Vec2< Type2 > EMAN::operator/ ( const Type &  d,
const Vec2< Type2 > &  v 
)
inline

Definition at line 1039 of file vec3.h.

1040 {
1041 // Preserve the vector type
1042 Vec2<Type2> v1(v);
1043 v1 /= d;
1044 return v1;
1045 }

◆ operator/() [5/8]

template<typename Type , typename Type2 >
Vec3< Type2 > EMAN::operator/ ( const Type &  d,
const Vec3< Type2 > &  v 
)
inline

Definition at line 661 of file vec3.h.

662 {
663 // Preserve the vector type
664 Vec3<Type2> v1(v);
665 v1 /= d;
666 return v1;
667 }

◆ operator/() [6/8]

template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator/ ( const Vec2< Type > &  v,
const Type2 &  d 
)
inline

Definition at line 1048 of file vec3.h.

1048 {
1049 // Preserve the vector type
1050 Vec2<Type> v1(v);
1051 v1 /= d;
1052 return v1;
1053 }

◆ operator/() [7/8]

template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator/ ( const Vec3< Type > &  v,
const Type2 &  d 
)
inline

Definition at line 670 of file vec3.h.

670 {
671 // Preserve the vector type
672 Vec3<Type> v1(v);
673 v1 /= d;
674 return v1;
675 }

◆ operator/() [8/8]

EMData * EMAN::operator/ ( float  n,
const EMData em 
)

Definition at line 3238 of file emdata.cpp.

3239{
3240 EMData * r = em.copy();
3241 r->to_one();
3242 r->mult(n);
3243 r->div(em);
3244
3245 return r;
3246}

◆ operator<()

bool EMAN::operator< ( const Pixel p1,
const Pixel p2 
)

Definition at line 42 of file geometry.cpp.

43{
44 if (p1.value < p2.value) {
45 return true;
46 }
47 return false;
48}
float value
Definition: geometry.h:483

References EMAN::Pixel::value.

◆ operator<<() [1/7]

std::ostream & EMAN::operator<< ( std::ostream &  os,
const Matrix3 m 
)
inline

Definition at line 580 of file vecmath.h.

580 {
581 os << m.row(0) << std::endl;
582 os << m.row(1) << std::endl;
583 os << m.row(2) << std::endl;
584 return os;
585 }
Vector3 row(int r) const
Definition: vecmath.h:444

References EMAN::Matrix3::row().

◆ operator<<() [2/7]

std::ostream & EMAN::operator<< ( std::ostream &  os,
const Matrix4 m 
)
inline

Definition at line 948 of file vecmath.h.

948 {
949 os << m.row(0) << std::endl;
950 os << m.row(1) << std::endl;
951 os << m.row(2) << std::endl;
952 os << m.row(3) << std::endl;
953 return os;
954 }
Vector4 row(int r) const
Definition: vecmath.h:734

References EMAN::Matrix4::row().

◆ operator<<() [3/7]

std::ostream & EMAN::operator<< ( std::ostream &  os,
const Point3 p 
)
inline

Definition at line 408 of file vecmath.h.

408 {
409 os << "(" << p[0] << ", " << p[1] << ", " << p[2] << ")";
410 return os;
411 }

◆ operator<<() [4/7]

std::ostream & EMAN::operator<< ( std::ostream &  os,
const ScreenPoint p 
)
inline

Definition at line 196 of file vecmath.h.

196 {
197 os << "(" << p[0] << ", " << p[1] << ")";
198 return os;
199 }

◆ operator<<() [5/7]

std::ostream & EMAN::operator<< ( std::ostream &  os,
const ScreenVector v 
)
inline

Definition at line 133 of file vecmath.h.

133 {
134 os << "(" << v[0] << ", " << v[1] << ")";
135 return os;
136 }

◆ operator<<() [6/7]

std::ostream & EMAN::operator<< ( std::ostream &  os,
const Vector3 v 
)
inline

Definition at line 316 of file vecmath.h.

316 {
317 os << "(" << v[0] << ", " << v[1] << ", " << v[2] << ")";
318 return os;
319 }

◆ operator<<() [7/7]

std::ostream & EMAN::operator<< ( std::ostream &  os,
const Vector4 v 
)
inline

Definition at line 686 of file vecmath.h.

686 {
687 os << "(" << v[0] << ", " << v[1] << ", " << v[2] << ", " << v[3] << ")";
688 return os;
689 }

◆ operator==() [1/6]

bool EMAN::operator== ( const Dict d1,
const Dict d2 
)

Definition at line 1021 of file emobject.cpp.

1022{
1023 // Just make use of map's version of operator==
1024 return (d1.dict == d2.dict);
1025}
map< string, EMObject > dict
Definition: emobject.h:642

References EMAN::Dict::dict.

◆ operator==() [2/6]

bool EMAN::operator== ( const EMObject e1,
const EMObject e2 
)

Definition at line 770 of file emobject.cpp.

771{
772
773 if (e1.type != e2.type) {
774 return false;
775 }
776
777 switch (e1.type) {
778 case EMObject::BOOL:
779 return (e1.b == e2.b);
780 break;
781 case EMObject::SHORT:
782 return (e1.si == e2.si);
783 break;
784 case EMObject::INT:
785 return (e1.n == e2.n);
786 break;
787 case EMObject::UNSIGNEDINT:
788 return (e1.ui == e2.ui);
789 break;
790 case EMObject::FLOAT:
791 return (e1.f == e2.f);
792 break;
793 case EMObject::DOUBLE:
794 return (e1.d == e2.d);
795 break;
796 case EMObject::CTF:
797 case EMObject::STRING:
798 return (e1.str == e2.str);
799 break;
800 case EMObject::FLOAT_POINTER:
801 return (e1.fp == e2.fp);
802 break;
803 case EMObject::INT_POINTER:
804 return (e1.ip == e2.ip);
805 break;
806 case EMObject::VOID_POINTER:
807 return (e1.vp == e2.vp);
808 break;
809 case EMObject::EMDATA:
810 return (e1.emdata == e2.emdata);
811 break;
812 case EMObject::XYDATA:
813 return (e1.xydata == e2.xydata);
814 break;
815 case EMObject::TRANSFORM:
816 case EMObject::FLOATARRAY:
817 if (e1.farray.size() == e2.farray.size()) {
818 for (size_t i = 0; i < e1.farray.size(); i++) {
819 if (e1.farray[i] != e2.farray[i]) {
820 return false;
821 }
822 }
823 return true;
824 }
825 else {
826 return false;
827 }
828 break;
829 case EMObject::INTARRAY:
830 if (e1.iarray.size() == e2.iarray.size()) {
831 for (size_t i = 0; i < e1.iarray.size(); i++) {
832 if (e1.iarray[i] != e2.iarray[i]) {
833 return false;
834 }
835 }
836 return true;
837 }
838 break;
839 case EMObject::STRINGARRAY:
840 if (e1.strarray.size() == e2.strarray.size()) {
841 for (size_t i = 0; i < e1.strarray.size(); i++) {
842 if (e1.strarray[i] != e2.strarray[i]) {
843 return false;
844 }
845 }
846 return true;
847 }
848 else {
849 return false;
850 }
851 break;
852 case EMObject::TRANSFORMARRAY:
853 if (e1.transformarray.size() == e2.transformarray.size()) {
854 for (size_t i = 0; i < e1.transformarray.size(); i++) {
855 if (e1.transformarray[i] != e2.transformarray[i]) {
856 return false;
857 }
858 }
859 }
860 break;
861 case EMObject::UNKNOWN:
862 // UNKNOWN really means "no type" and if two objects both have
863 // type UNKNOWN they really are the same
864 return (e1.type == e2.type);
865 break;
866 default:
867 return false;
868 break;
869 }
870 return false;
871}
vector< Transform > transformarray
Definition: emobject.h:277
string str
Definition: emobject.h:273
ObjectType type
Definition: emobject.h:278
EMData * emdata
Definition: emobject.h:269
unsigned int ui
Definition: emobject.h:263
vector< string > strarray
Definition: emobject.h:276
vector< float > farray
Definition: emobject.h:275
vector< int > iarray
Definition: emobject.h:274
float * fp
Definition: emobject.h:266
XYData * xydata
Definition: emobject.h:270

References EMAN::EMObject::b, EMAN::EMObject::BOOL, EMAN::EMObject::CTF, EMAN::EMObject::d, EMAN::EMObject::DOUBLE, EMAN::EMObject::EMDATA, EMAN::EMObject::emdata, EMAN::EMObject::f, EMAN::EMObject::farray, EMAN::EMObject::FLOAT, EMAN::EMObject::FLOAT_POINTER, EMAN::EMObject::FLOATARRAY, EMAN::EMObject::fp, EMAN::EMObject::iarray, EMAN::EMObject::INT, EMAN::EMObject::INT_POINTER, EMAN::EMObject::INTARRAY, EMAN::EMObject::ip, EMAN::EMObject::n, EMAN::EMObject::SHORT, EMAN::EMObject::si, EMAN::EMObject::str, EMAN::EMObject::strarray, EMAN::EMObject::STRING, EMAN::EMObject::STRINGARRAY, EMAN::EMObject::TRANSFORM, EMAN::EMObject::TRANSFORMARRAY, EMAN::EMObject::transformarray, EMAN::EMObject::type, EMAN::EMObject::ui, EMAN::EMObject::UNKNOWN, EMAN::EMObject::UNSIGNEDINT, EMAN::EMObject::VOID_POINTER, EMAN::EMObject::vp, EMAN::EMObject::XYDATA, and EMAN::EMObject::xydata.

◆ operator==() [3/6]

bool EMAN::operator== ( const Pixel p1,
const Pixel p2 
)

Definition at line 50 of file geometry.cpp.

51{
52 if (p1.x == p2.x && p1.y == p2.y && p1.z == p2.z && p1.value == p2.value) {
53 return true;
54 }
55 return false;
56}

References EMAN::Pixel::value, EMAN::Pixel::x, EMAN::Pixel::y, and EMAN::Pixel::z.

◆ operator==() [4/6]

bool EMAN::operator== ( const Quaternion q1,
const Quaternion q2 
)

Definition at line 348 of file quaternion.cpp.

349{
350 bool result = true;
351 const float err_limit = 0.00001f;
352
353 vector < float >v1 = q1.as_list();
354 vector < float >v2 = q2.as_list();
355
356 for (size_t i = 0; i < v1.size(); i++) {
357 if (fabs(v1[i] - v2[i]) > err_limit) {
358 result = false;
359 break;
360 }
361 }
362
363 return result;
364}
vector< float > as_list() const
Definition: quaternion.cpp:218

References EMAN::Quaternion::as_list().

◆ operator==() [5/6]

template<typename Type , typename Type2 >
bool EMAN::operator== ( const Vec2< Type > &  v1,
const Vec2< Type2 > &  v2 
)
inline

Definition at line 1056 of file vec3.h.

1056 {
1057 if (v1[0] == v2[0] && v1[1] == v2[1] ) {
1058 return true;
1059 }
1060 return false;
1061 }

◆ operator==() [6/6]

template<typename Type , typename Type2 >
bool EMAN::operator== ( const Vec3< Type > &  v1,
const Vec3< Type2 > &  v2 
)
inline

Definition at line 678 of file vec3.h.

678 {
679 if (v1[0] == v2[0] && v1[1] == v2[1] && v1[2] == v2[2]) {
680 return true;
681 }
682 return false;
683 }

◆ padfft_slice()

EMData * EMAN::padfft_slice ( const EMData *const  slice,
const Transform t,
int  npad 
)

Direct Fourier inversion Reconstructor.

Definition at line 2924 of file reconstructor.cpp.

2925{
2926 int nx = slice->get_xsize();
2927 int ny = slice->get_ysize();
2928 int padffted= slice->get_attr_default("padffted", 0);
2929 int ndim = (ny==1) ? 1 : 2;
2930 int iext = slice->is_fftodd();
2931 int extension = (2-iext)*padffted; // If 2, it means it is a Fourier file.
2932
2933 if( ndim==2 && (nx-extension)!=ny ) {
2934 LOGERR("Input image must be square!");
2935 throw ImageDimensionException("Input image must be square!");
2936 }
2937
2938 EMData* padfftslice = NULL;
2939 if( padffted == 0) {
2940 // process 2D slice or 1D line -- subtract the average outside of the circle, zero-pad, fft extend, and fft
2941 EMData* temp = slice->average_circ_sub();
2942
2943 padfftslice = temp->norm_pad( false, npad );
2944 checked_delete( temp );
2945
2946 padfftslice->do_fft_inplace();
2947 } else {
2948 padfftslice = new EMData(*slice);
2949 }
2950
2951 // shift the projection
2952 Vec2f trans = t.get_trans_2d();
2953 float sx = -trans[0];
2954 float sy = -trans[1];
2955 if(sx != 0.0f || sy != 0.0) padfftslice->process_inplace("filter.shift", Dict("x_shift", sx, "y_shift", sy, "z_shift", 0.0f));
2956
2957 int remove = slice->get_attr_default("remove", 0);
2958 padfftslice->set_attr( "remove", remove );
2959 padfftslice->center_origin_fft();
2960 return padfftslice;
2961}
Dict is a dictionary to store <string, EMObject> pair.
Definition: emobject.h:385
Vec2f get_trans_2d() const
Get the degenerant 2D post trans as a vec2f.
Definition: transform.cpp:1088
#define ImageDimensionException(desc)
Definition: exception.h:166
#define LOGERR
Definition: log.h:51
void checked_delete(T *&x)

References checked_delete(), EMAN::Transform::get_trans_2d(), ImageDimensionException, and LOGERR.

Referenced by EMAN::newfile_store::add_image(), EMAN::file_store::add_image(), EMAN::nn4Reconstructor::insert_slice(), EMAN::nn4_rectReconstructor::insert_slice(), EMAN::nnSSNR_Reconstructor::insert_slice(), EMAN::nn4_ctfReconstructor::insert_slice(), EMAN::nn4_ctfwReconstructor::insert_slice(), EMAN::nn4_ctfwsReconstructor::insert_slice(), EMAN::nn4_ctf_rectReconstructor::insert_slice(), and EMAN::nnSSNR_ctfReconstructor::insert_slice().

◆ rdiv()

EMData * EMAN::rdiv ( const EMData em,
float  n 
)

Definition at line 3253 of file emdata.cpp.

3254{
3255 return EMAN::operator/(n, em);
3256}
EMData * operator/(const EMData &em, float n)
Definition: emdata.cpp:3208

References operator/().

◆ rsub()

EMData * EMAN::rsub ( const EMData em,
float  n 
)

Definition at line 3248 of file emdata.cpp.

3249{
3250 return EMAN::operator-(n, em);
3251}
EMData * operator-(const EMData &em, float n)
Definition: emdata.cpp:3194

References operator-().

◆ unit() [1/2]

Vector3 EMAN::unit ( const Vector3 v)
inline

Definition at line 314 of file vecmath.h.

314{ const double len = v.length(); return v / len; }

References EMAN::Vector3::length().

◆ unit() [2/2]

Vector4 EMAN::unit ( const Vector4 v)
inline

Definition at line 685 of file vecmath.h.

685{ const double len = v.length(); return v / len; }

References EMAN::Vector4::length().

Variable Documentation

◆ decoder0x

DecoderIx<0> EMAN::decoder0x
static

Definition at line 175 of file eerio.h.

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

◆ decoder1x

DecoderIx<1> EMAN::decoder1x
static

Definition at line 176 of file eerio.h.

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

◆ decoder2x

DecoderIx<2> EMAN::decoder2x
static

Definition at line 177 of file eerio.h.

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

◆ EMDataTypeBits

const int EMAN::EMDataTypeBits[] = { 0,8,8,16,16,32,32,32,64,32,32,64,0 }

Definition at line 82 of file emutil.h.

◆ MAXFFT

const int EMAN::MAXFFT =32768
static

Definition at line 45 of file polardata.h.