00001
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00040 #ifndef emdata__transform_h__
00041 #define emdata__transform_h__
00042
00043 public:
00044
00051 EMData *do_fft() const;
00052
00053
00054 #ifdef EMAN2_USING_CUDA
00055
00060 EMData *do_fft_cuda() const;
00061
00067 EMData *do_ift_cuda(bool preserve_input = true) const;
00068 #endif //EMAN2_USING_CUDA
00069
00070
00071
00075 EMData* do_fft_inplace();
00076
00077
00087 EMData *do_ift();
00088
00089
00090
00091
00092
00093 EMData* do_ift_inplace();
00094
00095
00114 std::string render_amp8(int x, int y, int xsize, int ysize,
00115 int bpl, float scale, int min_gray, int max_gray,
00116 float min_render, float max_render,float gamma,int flags);
00117
00136 std::string render_ap24(int x, int y, int xsize, int ysize,
00137 int bpl, float scale, int min_gray, int max_gray,
00138 float min_render, float max_render,float gamma,int flags);
00139
00155 void render_amp24(int x, int y, int xsize, int ysize,
00156 int bpl, float scale, int min_gray, int max_gray,
00157 float min_render, float max_render,
00158 void *ref, void cmap(void *, int coord, unsigned char *tri));
00159
00160
00164 void ri2ap();
00165
00169 void ap2ri();
00170
00175 void ri2inten();
00176
00184 EMData* bispecRotTransInvN(int N, int NK);
00185
00186
00187
00193 EMData* bispecRotTransInvDirect(int type=0);
00194
00195
00202 void insert_clip(const EMData * const block, const IntPoint & origin);
00203
00204
00218 void insert_scaled_sum(EMData *block, const FloatPoint & center,
00219 float scale=1.0, float mult_factor=1.0);
00220
00221
00222
00223 #endif //emdata__transform_h__