00001 #ifndef ALIGNOPTIONS_H
00002 #define ALIGNOPTIONS_H
00003
00004 #include "mpi.h"
00005 #include "emdata.h"
00006 #include <string>
00007
00008 using namespace EMAN;
00009
00010 class AlignOptions {
00011 public:
00012 AlignOptions();
00013 AlignOptions(Vec3i& volsize);
00014 AlignOptions(const AlignOptions& old_options);
00015 virtual ~AlignOptions();
00016
00017 void set_mask3D(EMData * mask3D);
00018 void set_first_ring(int first_ring);
00019 void set_last_ring(int last_ring);
00020 void set_rstep(int rstep);
00021 void set_ri(int ri);
00022 void set_xrng(float xrng);
00023 void set_yrng(float yrng);
00024 void set_step(float step);
00025 void set_dtheta(float dtheta);
00026 void set_snr(float snr);
00027 void set_symmetry(std::string symmetry);
00028 void set_CTF(bool CTF);
00029 void set_have_angles(bool have_angles);
00030 void set_ref_angle_type(std::string ref_angle_type);
00031 void set_use_sirt(bool use_sirt);
00032 void set_sirt_tol(float sirt_tol);
00033 void set_sirt_lam(float sirt_lam);
00034 void set_sirt_maxit(int sirt_maxit);
00035 void set_maxit(int maxit);
00036
00037 EMData * get_mask3D();
00038 int get_first_ring();
00039 int get_last_ring();
00040 int get_rstep();
00041 int get_ri();
00042 float get_xrng();
00043 float get_yrng();
00044 float get_step();
00045 float get_dtheta();
00046 float get_snr();
00047 std::string get_symmetry();
00048 bool get_CTF();
00049 bool get_have_angles();
00050 std::string get_ref_angle_type();
00051 bool get_use_sirt();
00052 float get_sirt_tol();
00053 float get_sirt_lam();
00054 int get_sirt_maxit();
00055 int get_maxit();
00056 private:
00057
00058 EMData * mask3D;
00059 int first_ring;
00060 int last_ring;
00061 int rstep;
00062 int ri;
00063 float xrng;
00064 float yrng;
00065 float step;
00066 float dtheta;
00067 float snr;
00068 std::string symmetry;
00069 bool CTF;
00070 bool have_angles;
00071 std::string ref_angle_type;
00072 bool use_sirt;
00073 float sirt_tol;
00074 float sirt_lam;
00075 int sirt_maxit;
00076 int maxit;
00077 };
00078 #endif // ALIGNOPTIONS_H