#pragma once #include "afxwin.h" #include "PoroMediaDialogShare.h" #include "FiltersInput.h" // FiltersDialog dialog class FiltersDialog : public CDialog, public PoroMediaDialogShare { DECLARE_DYNAMIC(FiltersDialog) public: FiltersDialog(CWnd* pParent = NULL); // standard constructor virtual ~FiltersDialog(); // Dialog Data enum { IDD = IDD_FILTERSDIALOG }; protected: //standard stuff virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support virtual void OnOK(); virtual void OnCancel(); virtual BOOL OnInitDialog(); DECLARE_MESSAGE_MAP() //general afx_msg void OnBnClickedButtonInputDirectory(); afx_msg void OnBnClickedButtonWorkDirectory(); afx_msg void OnCbnSelchangeComboThresholdingMethod(); afx_msg void OnBnClickedStop(); afx_msg void OnEnChangeEditWidthSlices(); afx_msg void OnEnChangeEditEndSlice(); afx_msg void OnEnChangeEditWidthx(); afx_msg void OnEnChangeEditEndx(); afx_msg void OnEnChangeEditWidthy(); afx_msg void OnEnChangeEditEndy(); afx_msg void OnEnChangeEditStartSlice(); afx_msg void OnEnChangeEditStartx(); afx_msg void OnEnChangeEditStarty(); afx_msg void OnEnChangeEditManualThreshold(); private: void updateMemoryEstimate(); //dialog specific public: //binerization CButton check_skip_binarize; //contrast CEdit field_contrast_percentage_cntrl; short field_contrast_percentage_short; //convolve CComboBox combo_convolve_type; CButton check_filter_convolve_savebounds; CEdit field_filter_convolve_cntrl; float field_filter_convolve_float; //anisotropic parameters CButton check_filter_aniso_fast; CButton check_filter_aniso_conboost; CEdit field_aniso_midpt_txt; CEdit field_filter_aniso_K_cntrl; short field_filter_aniso_K_short; CEdit field_filter_aniso_TAU_cntrl; float field_filter_aniso_TAU_float; CEdit field_filter_aniso_iterations_cntrl; short field_filter_aniso_iterations_short; CEdit field_filter_aniso_midpoint_cntrl; short field_filter_aniso_midpoint_short; CButton check_filter_aniso_var; CButton check_filter_aniso_savebounds; CComboBox combo_filter_aniso_diffcoef; CEdit field_filter_aniso_radius_cntrl; float field_filter_aniso_radius_float; //voxel removal parameters CButton check_voxrem_run_pores; CEdit field_voxrem_pore_vox_vol_cntrl; long field_voxrem_pore_vox_vol_long; CEdit field_voxrem_pore_um_vol_cntrl; double field_voxrem_pore_um_vol_double; CButton check_voxrem_run_fibers; CEdit field_voxrem_fiber_vox_vol_cntrl; long field_voxrem_fiber_vox_vol_long; CEdit field_voxrem_fiber_um_vol_cntrl; double field_voxrem_fiber_um_vol_double; //close filter CEdit field_filter_close_iterations_cntrl; short field_filter_close_iterations_short; CEdit field_filter_close_neighs_cntrl; short field_filter_close_neighs_short; CButton check_filter_close_extended; //output options CEdit field_rotate_XY_YZ_times_cntrl; short field_rotate_XY_YZ_times_short; CEdit field_rotate_XY_ZX_times_cntrl; short field_rotate_XY_ZX_times_short; CButton check_save_raw_files; CButton check_save_bin_stack; CButton check_save_bin_files; CButton check_save_cbin_files; CButton check_save_intermediate_results; //messages afx_msg void OnEnChangeEditPixelSize(); afx_msg void OnEnChangeEditVoxremVolvoxPores(); afx_msg void OnEnChangeEditVoxremVolumPores(); afx_msg void OnEnChangeEditVoxremVolvoxFibers(); afx_msg void OnEnChangeEditVoxremVolumFibers(); afx_msg void OnBnClickedCheckVoxremEnable(); afx_msg void OnBnClickedCheckAnisoEnable(); afx_msg void OnEnChangeEditRotateXyYz(); afx_msg void OnEnChangeEditRotateXyZx(); afx_msg void OnBnClickedCheckContrastEnable(); afx_msg void OnBnClickedCheckConvolveEnable(); afx_msg void OnBnClickedCheckCloseEnable(); afx_msg void OnBnClickedCheckCloseExtended(); afx_msg void OnBnClickedCheckAnisoConBoost(); afx_msg void OnBnClickedCheckAnisoKVar(); afx_msg void OnBnClickedCheckSkipBinarize(); };