OSDN Git Service

rebuild: for X86LINUX64/X86LINUX64ICC
[eos/base.git] / hostdepend / X86LINUX64ICC / include / lmrcImageRhoFiltering.h
1 /*
2 # %M% %Y% %I%
3 # The latest update : %G% at %U%
4 #
5 #%Z% lmrcImageRhoFiltering.h ver %I%
6 #%Z% Created by 
7 #%Z%
8 #%Z% Usage : lmrcImageRhoFiltering.h 
9 #%Z% Attention
10 #%Z%
11 */
12 #ifndef  LMRC_IMAGE_RHO_FILTERING_H 
13 #define  LMRC_IMAGE_RHO_FILTERING_H
14
15 #include "mrcImage.h"
16 #include "Matrix3D.h"
17
18 typedef struct lmrcImageRhoFilteringInfo {
19         int     counterThresholdMode;     
20         double  counterThreshold;
21         int             weightMode;
22         int     flagThicknessWeight;
23         int             SubSampling;
24 } lmrcImageRhoFilteringInfo;
25
26 typedef enum lmrcImageRhoFiltering1Mode {
27         lmrcImageRhoFilter1ModeRhoFilter  = 0,
28         lmrcImageRhoFilter1ModeRamLak     = 1,
29         lmrcImageRhoFilter1ModeSheppLogan = 2,
30         lmrcImageRhoFilter1ModeCosine     = 3
31 } lmrcImageRhoFiltering1Mode;
32
33 typedef struct lmrcImageRhoFiltering1Info {
34         double Rmax;
35         lmrcImageRhoFiltering1Mode filterMode;
36 } lmrcImageRhoFiltering1Info;
37
38 /* For double tilt mode */
39 /*
40         mode 0: Preparing mode for final Rho Filtering 
41         mode 1: Final treatment : RhoFiltering 
42 */
43
44 /* prototype begin */
45 extern void lmrcImageRhoFiltering2(mrcImage* out3D, mrcImage* counter, int index, Matrix3D m, lmrcImageRhoFilteringInfo* linfo, long mode);
46
47 /* For single tilt mode */
48 extern void lmrcImageRhoFiltering(mrcImage* out, mrcImage* in, Matrix3D m, lmrcImageRhoFiltering1Info linfo, long mode);
49 /* prototype end */
50
51 #endif