EMAN2
Public Member Functions | Private Attributes | List of all members
EMAN::TypeDict Class Reference

TypeDict is a dictionary to store <string, EMObject::ObjectType> pair. More...

#include <emobject.h>

Public Member Functions

 TypeDict ()
 
 ~TypeDict ()
 
vector< string > keys () const
 
size_t size () const
 
void put (const string &key, EMObject::ObjectType o, const string &desc="")
 
string get_type (const string &key)
 
string get_desc (const string &key)
 
string operator[] (const string &key)
 
void dump ()
 
bool find_type (const string &type)
 

Private Attributes

map< string, string > type_dict
 
map< string, string > desc_dict
 

Detailed Description

TypeDict is a dictionary to store <string, EMObject::ObjectType> pair.

It is mainly used to store processor-like class's parameter information: <parameter-name, parameter-type>. Typical usage of this class:

   TypeDict d;
   d.put("with", EMObject::EMDATA);
   d.put("lowpass", EMObject::FLOAT);

   string lowpass_type = d["lowpass"];

Definition at line 304 of file emobject.h.

Constructor & Destructor Documentation

◆ TypeDict()

EMAN::TypeDict::TypeDict ( )
inline

Definition at line 307 of file emobject.h.

308 {
309 }

◆ ~TypeDict()

EMAN::TypeDict::~TypeDict ( )
inline

Definition at line 311 of file emobject.h.

312 {
313 }

Member Function Documentation

◆ dump()

void TypeDict::dump ( )

Definition at line 988 of file emobject.cpp.

989{
990 map < string, string >::iterator p;
991 for (p = type_dict.begin(); p != type_dict.end(); p++) {
992 printf("\t%s %s %s\n",
993 p->first.c_str(), p->second.c_str(), desc_dict[p->first].c_str());
994 }
995}
map< string, string > type_dict
Definition: emobject.h:356
map< string, string > desc_dict
Definition: emobject.h:357

References desc_dict, and type_dict.

Referenced by EMAN::dump_factory().

◆ find_type()

bool EMAN::TypeDict::find_type ( const string &  type)
inline

Definition at line 353 of file emobject.h.

353{ return type_dict.find(type) != type_dict.end(); }

References type_dict.

Referenced by EMAN::FactoryBase::insert_params().

◆ get_desc()

string EMAN::TypeDict::get_desc ( const string &  key)
inline

Definition at line 341 of file emobject.h.

342 {
343 return desc_dict[key];
344 }

References desc_dict.

Referenced by EMAN::dump_factory_list().

◆ get_type()

string EMAN::TypeDict::get_type ( const string &  key)
inline

Definition at line 336 of file emobject.h.

337 {
338 return type_dict[key];
339 }

References type_dict.

Referenced by EMAN::dump_factory_list().

◆ keys()

vector< string > EMAN::TypeDict::keys ( ) const
inline

Definition at line 315 of file emobject.h.

316 {
317 vector<string> result;
318
319 for (auto p = type_dict.begin(); p != type_dict.end(); p++)
320 result.push_back(p->first);
321
322 return result;
323 }

References type_dict.

Referenced by EMAN::Dict::copy_keys_in(), and EMAN::dump_factory_list().

◆ operator[]()

string EMAN::TypeDict::operator[] ( const string &  key)
inline

Definition at line 346 of file emobject.h.

347 {
348 return type_dict[key];
349 }

References type_dict.

◆ put()

void EMAN::TypeDict::put ( const string &  key,
EMObject::ObjectType  o,
const string &  desc = "" 
)
inline

Definition at line 330 of file emobject.h.

331 {
333 desc_dict[key] = desc;
334 }
static string get_object_type_name(ObjectType t)
Get an ObjectType as a string statically Can be accessed without the instantiation of a class object.
Definition: emobject.cpp:761

References desc_dict, EMAN::EMObject::get_object_type_name(), and type_dict.

Referenced by EMAN::ScaleAligner::get_param_types(), EMAN::TranslationalAligner::get_param_types(), EMAN::RotationalAligner::get_param_types(), EMAN::RotationalAlignerBispec::get_param_types(), EMAN::RotationalAlignerIterative::get_param_types(), EMAN::RotateTranslateAligner::get_param_types(), EMAN::RotateTranslateAlignerBispec::get_param_types(), EMAN::RotateTranslateScaleAligner::get_param_types(), EMAN::RotateTranslateAlignerIterative::get_param_types(), EMAN::RotateTranslateScaleAlignerIterative::get_param_types(), EMAN::RotateTranslateAlignerPawel::get_param_types(), EMAN::RotateTranslateBestAligner::get_param_types(), EMAN::RotateTranslateFlipScaleAligner::get_param_types(), EMAN::RotateTranslateFlipScaleAlignerIterative::get_param_types(), EMAN::RotateTranslateFlipAlignerPawel::get_param_types(), EMAN::RTFExhaustiveAligner::get_param_types(), EMAN::RTFSlowExhaustiveAligner::get_param_types(), EMAN::SymAlignProcessor::get_param_types(), EMAN::RefineAligner::get_param_types(), EMAN::RefineAlignerCG::get_param_types(), EMAN::SymAlignProcessorQuat::get_param_types(), EMAN::Refine3DAlignerGrid::get_param_types(), EMAN::Refine3DAlignerQuaternion::get_param_types(), EMAN::RT3DGridAligner::get_param_types(), EMAN::RT3DSphereAligner::get_param_types(), EMAN::RT2DTreeAligner::get_param_types(), EMAN::RT2Dto3DTreeAligner::get_param_types(), EMAN::RT3DTreeAligner::get_param_types(), EMAN::RT3DLocalTreeAligner::get_param_types(), EMAN::RT3DSymmetryAligner::get_param_types(), EMAN::FRM2DAligner::get_param_types(), EMAN::InertiaMatrixAnalyzer::get_param_types(), EMAN::ShapeAnalyzer::get_param_types(), EMAN::KMeansAnalyzer::get_param_types(), EMAN::SVDAnalyzer::get_param_types(), EMAN::CircularAverageAnalyzer::get_param_types(), EMAN::ImageAverager::get_param_types(), EMAN::LocalWeightAverager::get_param_types(), EMAN::FourierWeightAverager::get_param_types(), EMAN::TomoAverager::get_param_types(), EMAN::MinMaxAverager::get_param_types(), EMAN::SigmaAverager::get_param_types(), EMAN::CccCmp::get_param_types(), EMAN::LodCmp::get_param_types(), EMAN::SqEuclideanCmp::get_param_types(), EMAN::DotCmp::get_param_types(), EMAN::TomoCccCmp::get_param_types(), EMAN::TomoWedgeCccCmp::get_param_types(), EMAN::TomoWedgeFscCmp::get_param_types(), EMAN::TomoFscCmp::get_param_types(), EMAN::QuadMinDotCmp::get_param_types(), EMAN::OptSubCmp::get_param_types(), EMAN::OptVarianceCmp::get_param_types(), EMAN::PhaseCmp::get_param_types(), EMAN::FRCCmp::get_param_types(), EMAN::XYZAligner::get_param_types(), EMAN::XYZAverager::get_param_types(), EMAN::XYZCmp::get_param_types(), EMAN::XYZProcessor::get_param_types(), EMAN::XYZProjector::get_param_types(), EMAN::XYZReconstructor::get_param_types(), EMAN::FourierProcessor::get_param_types(), EMAN::FourierAnlProcessor::get_param_types(), EMAN::AzSharpProcessor::get_param_types(), EMAN::Axis0FourierProcessor::get_param_types(), EMAN::GaussZFourierProcessor::get_param_types(), EMAN::AmpweightFourierProcessor::get_param_types(), EMAN::ConvolutionProcessor::get_param_types(), EMAN::HarmonicProcessor::get_param_types(), EMAN::BispecSliceProcessor::get_param_types(), EMAN::MaskPackProcessor::get_param_types(), EMAN::BinaryDilationProcessor::get_param_types(), EMAN::BinaryErosionProcessor::get_param_types(), EMAN::BinaryClosingProcessor::get_param_types(), EMAN::BinaryOpeningProcessor::get_param_types(), EMAN::BinaryInternalGradientProcessor::get_param_types(), EMAN::BinaryExternalGradientProcessor::get_param_types(), EMAN::BinaryMorphGradientProcessor::get_param_types(), EMAN::BinaryTopHatProcessor::get_param_types(), EMAN::BinaryBlackHatProcessor::get_param_types(), EMAN::Wiener2DAutoAreaProcessor::get_param_types(), EMAN::GaussSegmentProcessor::get_param_types(), EMAN::DistanceSegmentProcessor::get_param_types(), EMAN::KmeansSegmentProcessor::get_param_types(), EMAN::CtfSimProcessor::get_param_types(), EMAN::Wiener2DFourierProcessor::get_param_types(), EMAN::LowpassAutoBProcessor::get_param_types(), EMAN::LinearRampProcessor::get_param_types(), EMAN::LoGFourierProcessor::get_param_types(), EMAN::DoGFourierProcessor::get_param_types(), EMAN::CCCSNRProcessor::get_param_types(), EMAN::FixSignProcessor::get_param_types(), EMAN::RecipCarefullyProcessor::get_param_types(), EMAN::ValuePowProcessor::get_param_types(), EMAN::DiscritizeProcessor::get_param_types(), EMAN::ToZeroProcessor::get_param_types(), EMAN::AboveToZeroProcessor::get_param_types(), EMAN::RangeZeroProcessor::get_param_types(), EMAN::AddShapeProcessor::get_param_types(), EMAN::SetBitsProcessor::get_param_types(), EMAN::TransformProcessor::get_param_types(), EMAN::IntTranslateProcessor::get_param_types(), EMAN::ApplySymProcessor::get_param_types(), EMAN::ScaleTransformProcessor::get_param_types(), EMAN::ClampingProcessor::get_param_types(), EMAN::NSigmaClampingProcessor::get_param_types(), EMAN::ToMinvalProcessor::get_param_types(), EMAN::CutToZeroProcessor::get_param_types(), EMAN::BinarizeProcessor::get_param_types(), EMAN::BinarizeFourierProcessor::get_param_types(), EMAN::CollapseProcessor::get_param_types(), EMAN::LinearXformProcessor::get_param_types(), EMAN::ExpProcessor::get_param_types(), EMAN::FiniteProcessor::get_param_types(), EMAN::RangeThresholdProcessor::get_param_types(), EMAN::SigmaProcessor::get_param_types(), EMAN::MaskAzProcessor::get_param_types(), EMAN::CircularMaskProcessor::get_param_types(), EMAN::MaskSharpProcessor::get_param_types(), EMAN::MaskSoftProcessor::get_param_types(), EMAN::MaskEdgeMeanProcessor::get_param_types(), EMAN::MaskGaussProcessor::get_param_types(), EMAN::MaskGaussNonuniformProcessor::get_param_types(), EMAN::MaskGaussInvProcessor::get_param_types(), EMAN::GridKernelFixProcessor::get_param_types(), EMAN::LinearPyramidProcessor::get_param_types(), EMAN::AreaProcessor::get_param_types(), EMAN::BoxStatProcessor::get_param_types(), EMAN::PeakOnlyProcessor::get_param_types(), EMAN::DiffBlockProcessor::get_param_types(), EMAN::CutoffBlockProcessor::get_param_types(), EMAN::MaxShrinkProcessor::get_param_types(), EMAN::MinShrinkProcessor::get_param_types(), EMAN::MeanShrinkProcessor::get_param_types(), EMAN::MedianShrinkProcessor::get_param_types(), EMAN::FFTResampleProcessor::get_param_types(), EMAN::GradientPlaneRemoverProcessor::get_param_types(), EMAN::FlattenBackgroundProcessor::get_param_types(), EMAN::FFTPeakProcessor::get_param_types(), EMAN::FFTConeProcessor::get_param_types(), EMAN::FFTWedgeProcessor::get_param_types(), EMAN::WedgeFillProcessor::get_param_types(), EMAN::SigmaZeroEdgeProcessor::get_param_types(), EMAN::OutlierProcessor::get_param_types(), EMAN::BeamstopProcessor::get_param_types(), EMAN::DecayEdgeProcessor::get_param_types(), EMAN::ZeroEdgeRowProcessor::get_param_types(), EMAN::ZeroEdgePlaneProcessor::get_param_types(), EMAN::BilateralProcessor::get_param_types(), EMAN::NormalizeMaskProcessor::get_param_types(), EMAN::NormalizeByMassProcessor::get_param_types(), EMAN::NormalizeCircleMeanProcessor::get_param_types(), EMAN::NormalizeRowProcessor::get_param_types(), EMAN::SubtractOptProcessor::get_param_types(), EMAN::NormalizeToLeastSquareProcessor::get_param_types(), EMAN::FlipProcessor::get_param_types(), EMAN::ReverseProcessor::get_param_types(), EMAN::AddNoiseProcessor::get_param_types(), EMAN::AddRandomNoiseProcessor::get_param_types(), EMAN::AutoMask2DProcessor::get_param_types(), EMAN::AutoMaskAsymUnit::get_param_types(), EMAN::AutoMaskDustProcessor::get_param_types(), EMAN::AutoMask3DProcessor::get_param_types(), EMAN::AutoMask3D2Processor::get_param_types(), EMAN::IterMultiMaskProcessor::get_param_types(), EMAN::AddMaskShellProcessor::get_param_types(), EMAN::PhaseToMassCenterProcessor::get_param_types(), EMAN::ToMassCenterProcessor::get_param_types(), EMAN::FSCFourierProcessor::get_param_types(), EMAN::CTFCorrProcessor::get_param_types(), EMAN::SNRProcessor::get_param_types(), EMAN::FileFourierProcessor::get_param_types(), EMAN::SymSearchProcessor::get_param_types(), EMAN::BadLineXYProcessor::get_param_types(), EMAN::StripeXYProcessor::get_param_types(), EMAN::LocalNormProcessor::get_param_types(), EMAN::IndexMaskFileProcessor::get_param_types(), EMAN::PaintProcessor::get_param_types(), EMAN::DirectionalSumProcessor::get_param_types(), EMAN::WatershedProcessor::get_param_types(), EMAN::SegmentSubunitProcessor::get_param_types(), EMAN::BinaryOperateProcessor< Type >::get_param_types(), EMAN::MatchSFProcessor::get_param_types(), EMAN::SetSFProcessor::get_param_types(), EMAN::SetIsoPowProcessor::get_param_types(), EMAN::SmartMaskProcessor::get_param_types(), EMAN::IterBinMaskProcessor::get_param_types(), EMAN::TestImagePureGaussian::get_param_types(), EMAN::TestImageFourierNoiseGaussian::get_param_types(), EMAN::TestImageFourierGaussianBand::get_param_types(), EMAN::TestImageFourierNoiseProfile::get_param_types(), EMAN::CTFSNRWeightProcessor::get_param_types(), EMAN::TestImageLineWave::get_param_types(), EMAN::TestImageGradient::get_param_types(), EMAN::TestImageAxes::get_param_types(), EMAN::TestImageGaussian::get_param_types(), EMAN::TestImageSphericalWave::get_param_types(), EMAN::TestImageSinewave::get_param_types(), EMAN::TestImageSinewaveCircular::get_param_types(), EMAN::TestImageSquarecube::get_param_types(), EMAN::TestImageEllipse::get_param_types(), EMAN::TestImageHollowEllipse::get_param_types(), EMAN::TestImageCirclesphere::get_param_types(), EMAN::TestImageNoiseUniformRand::get_param_types(), EMAN::TestImageNoiseGauss::get_param_types(), EMAN::TestImageCylinder::get_param_types(), EMAN::TestImageDisc::get_param_types(), EMAN::CCDNormProcessor::get_param_types(), EMAN::WaveletProcessor::get_param_types(), EMAN::TomoTiltEdgeMaskProcessor::get_param_types(), EMAN::TomoTiltAngleWeightProcessor::get_param_types(), EMAN::FFTProcessor::get_param_types(), EMAN::RadialProcessor::get_param_types(), EMAN::HistogramBin::get_param_types(), EMAN::ModelEMCylinderProcessor::get_param_types(), EMAN::ApplyPolynomialProfileToHelix::get_param_types(), EMAN::BinarySkeletonizerProcessor::get_param_types(), EMAN::ConvolutionKernelProcessor::get_param_types(), EMAN::RotateInFSProcessor::get_param_types(), EMAN::CircularAverageBinarizeProcessor::get_param_types(), EMAN::ObjDensityProcessor::get_param_types(), EMAN::ObjLabelProcessor::get_param_types(), EMAN::BwThinningProcessor::get_param_types(), EMAN::BwMajorityProcessor::get_param_types(), EMAN::PruneSkeletonProcessor::get_param_types(), EMAN::GrowSkeletonProcessor::get_param_types(), EMAN::ZThicknessProcessor::get_param_types(), EMAN::ReplaceValuefromListProcessor::get_param_types(), EMAN::AmpMultProcessor::get_param_types(), EMAN::PolyMaskProcessor::get_param_types(), EMAN::GaussFFTProjector::get_param_types(), EMAN::FourierGriddingProjector::get_param_types(), EMAN::PawelProjector::get_param_types(), EMAN::MaxValProjector::get_param_types(), EMAN::StandardProjector::get_param_types(), EMAN::ChaoProjector::get_param_types(), EMAN::FourierReconstructorSimple2D::get_param_types(), EMAN::FourierReconstructor::get_param_types(), EMAN::FourierIterReconstructor::get_param_types(), EMAN::BackProjectionReconstructor::get_param_types(), EMAN::RealMedianReconstructor::get_param_types(), EMAN::nn4Reconstructor::get_param_types(), EMAN::nn4_rectReconstructor::get_param_types(), EMAN::nnSSNR_Reconstructor::get_param_types(), EMAN::nn4_ctfReconstructor::get_param_types(), EMAN::nn4_ctfwReconstructor::get_param_types(), EMAN::nn4_ctfwsReconstructor::get_param_types(), EMAN::nn4_ctf_rectReconstructor::get_param_types(), EMAN::nnSSNR_ctfReconstructor::get_param_types(), EMAN::FourierPixelInserter3D::get_param_types(), EMAN::CSym::get_param_types(), EMAN::DSym::get_param_types(), EMAN::HSym::get_param_types(), EMAN::OrientationGenerator::get_param_types(), EMAN::EmanOrientationGenerator::get_param_types(), EMAN::SingleOrientationGenerator::get_param_types(), EMAN::RandomOrientationGenerator::get_param_types(), EMAN::EvenOrientationGenerator::get_param_types(), EMAN::SaffOrientationGenerator::get_param_types(), EMAN::OptimumOrientationGenerator::get_param_types(), EMAN::RotateFlipAligner::static_get_param_types(), EMAN::RotateFlipAlignerIterative::static_get_param_types(), EMAN::RotateTranslateFlipAligner::static_get_param_types(), and EMAN::RotateTranslateFlipAlignerIterative::static_get_param_types().

◆ size()

size_t EMAN::TypeDict::size ( ) const
inline

Definition at line 325 of file emobject.h.

326 {
327 return type_dict.size();
328 }

References type_dict.

Referenced by EMAN::dump_factory_list().

Member Data Documentation

◆ desc_dict

map<string, string> EMAN::TypeDict::desc_dict
private

Definition at line 357 of file emobject.h.

Referenced by dump(), get_desc(), and put().

◆ type_dict

map<string, string> EMAN::TypeDict::type_dict
private

Definition at line 356 of file emobject.h.

Referenced by dump(), find_type(), get_type(), keys(), operator[](), put(), and size().


The documentation for this class was generated from the following files: