11#include "GUIDialogSheet.h" 
   20        class CInternalDialogKernel;
 
   54            enum class EKernelSettingRow : int32_t
 
   87            CGUIDialogKernel(int32_t i32KernelWidth, int32_t i32KernelHeight, CWnd* pParent = 
nullptr);
 
  308            virtual const CResult SetKernelValue(int32_t i32SelectedChannel, int32_t i32Row, int32_t i32Col, 
const double& f64Value);
 
  320            virtual const CResult SetKernelValue(int32_t i32SelectedChannel, int32_t i32Row, int32_t i32Col, 
const float& f32Value);
 
  330            virtual double GetKernelValue(int32_t i32SelectedChannel, int32_t i32Row, int32_t i32Col);
 
  441            DeclareGetClassType();
 
  445            virtual BOOL PreTranslateMessage(MSG* pMsg) 
override;
 
  446            virtual void OnOK() 
override;
 
  447            virtual void OnCancel() 
override;
 
  448            virtual const CResult AddPresetLayout();
 
  450            virtual const CResult ConvertKernelArrayToString(
 
  454            virtual const CResult ConvertKernelArrayToString(
 
  460                int32_t& i32ImageChannelOut, int32_t& i32KernelWidthOut, int32_t& i32KernelHeightOut, 
 
  465                int32_t& i32ImageChannelOut, int32_t& i32KernelWidthOut, int32_t& i32KernelHeightOut, 
 
  468            virtual const CResult InternalSetKernel(int32_t i32SelectedChannel,
 
  470            virtual const CResult InternalSetKernel(int32_t i32SelectedChannel,
 
  472            virtual const CResult InternalSetKernel(
 
  474            virtual const CResult InternalSetKernel(
 
  476            virtual const CResult InternalSetKernelValue(int32_t i32SelectedChannel, int32_t i32Row, int32_t i32Col, 
const double& f64Value);
 
  477            virtual const CResult InternalSetKernelValue(int32_t i32SelectedChannel, int32_t i32Row, int32_t i32Col, 
const float& f32Value);
 
  479            virtual const CResult InternalSetImageChannel(int32_t i32ImageChannel);
 
  480            virtual const CResult InternalSetKernelSize(int32_t i32KernelWidth, int32_t i32KernelHeight);
 
  481            virtual const CResult InternalSetKernelWidth(int32_t i32KernelWidth);
 
  482            virtual const CResult InternalSetKernelHeight(int32_t i32KernelHeight);
 
  483            virtual const CResult InternalSetSameKernelOnEachChannel(
bool bSameKernelOnEachChannel);
 
  485            virtual bool IsKernelArrayInitialized();
 
  486            virtual bool InitKernelArray();
 
  487            virtual bool FillKernelArray();
 
  488            virtual bool FillDialogKernelTable(int32_t i32SelectedChannel);
 
  490            virtual bool SetImageChannelOnDialog(int32_t i32ImageChannel);
 
  491            virtual bool SetKernelWidthOnDialog(int32_t i32KernelWidth);
 
  492            virtual bool SetKernelHeightOnDialog(int32_t i32KernelHeight);
 
  493            virtual bool SetSelectedChannelOnDialog(int32_t i32SelectedChannel);
 
  494            virtual bool SetCheckBoxSameKernelOnEachChannelOnDialog(BOOL bCheck);
 
  496            virtual bool OnKernelSizeChanged();
 
  497            virtual bool OnImageChannelChanged(int32_t i32ImageChannel);
 
  498            virtual bool OnChannelSelected(int32_t i32SelectedChannel);
 
  499            virtual bool OnCheckBoxSameKernelClicked(BOOL bCheck);
 
  505            virtual bool CalcLayoutSizeOfKernelValue(int32_t& i32Width, int32_t& i32Height, int32_t i32MinWidth = 576, int32_t i32MinHeight = 287);
 
  506            virtual bool AdjustLayout() 
override;
 
  508            DECLARE_MESSAGE_MAP()
 
  509            LRESULT  OnLoadButtonClicked(WPARAM wParam, LPARAM lParam);
 
  510            LRESULT  OnSaveButtonClicked(WPARAM wParam, LPARAM lParam);
 
  511            afx_msg 
void OnSize(UINT nType, 
int cx, 
int cy);
 
  512            afx_msg 
void OnEndSheetInPlaceEdit(NMHDR* pNMHDR, LRESULT* pResult);
 
  515            int32_t m_i32ImageChannel;
 
  516            int32_t m_i32KernelWidth;
 
  517            int32_t m_i32KernelHeight;
 
  518            uint8_t m_u8DecimalPlace;
 
  520            Base::CFLString<
wchar_t> m_strFormatStringFloat;
 
  522            double m_f64DefaultKernelFillValue;
 
  524            bool m_bKernelArrayInitialized;
 
  525            bool m_bSameKernelOnEachChannel;
 
  529            CGUIGridLayout* m_pGridKernelIO;
 
  530            CGUIGridLayout* m_pGridDecimalPlace;
 
  531            CGUIGridLayout* m_pGridKernelSetting;
 
  532            CGUIGridLayout* m_pGridKernel;
 
  534            Base::CFLArray< 
Base::CFLArray< 
Base::CFLArray<
double> > > m_flaKernel;
 
  536            CInternalDialogKernel* m_pInternal;
 
  537            friend class CInternalDialogKernel;
 
Template type 의 배열 클래스.
Definition FLArray.h:53
Template type 의 문자열 클래스
Definition FLString.h:34
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1631
virtual const CResult SetKernelValue(int32_t i32SelectedChannel, int32_t i32Row, int32_t i32Col, const float &f32Value)
다이얼로그에 커널 배열을 특정 채널, 행, 열 위치에 대해 float 타입으로 지정하는 함수로, 다이얼로그에 채워지는 값을 지정할 수 있습니다.
static const CResult ConvertStringToKernelArray(Base::CFLString< wchar_t > &flstrKernel, Base::CFLArray< Base::CFLArray< float > > &flaReturn)
문자열을 CFLArray<CFLArray<float>> 형태의 커널로 변환하는 함수
virtual const CResult SetKernelHeight(int32_t i32KernelHeight)
커널의 높이를 지정하는 함수
virtual double GetKernelValue(int32_t i32SelectedChannel, int32_t i32Row, int32_t i32Col)
사용자가 다이얼로그에 입력한 커널 값을 얻어 오는 함수
static const CResult ConvertStringToKernelArray(Base::CFLString< wchar_t > &flstrKernel, Base::CFLArray< Base::CFLArray< double > > &flaReturn)
문자열을 CFLArray<CFLArray<double>> 형태의 커널로 변환하는 함수
virtual EKernelType GetKernelType() const
다이얼로그의 커널 입력 타입을 반환
CGUIDialogKernel(int32_t i32KernelWidth, int32_t i32KernelHeight, CWnd *pParent=nullptr)
초기화 생성자
static const CResult ConvertStringToKernelArray(Base::CFLString< wchar_t > &flstrKernel, Base::CFLArray< Base::CFLArray< Base::CFLArray< float > > > &flaReturn)
문자열을 CFLArray<CFLArray<float>> 형태의 커널로 변환하는 함수
virtual void SetKernelType(EKernelType eKernelType)
다이얼로그의 커널 입력 타입을 지정
virtual const CResult GetKernel(Base::CFLArray< Base::CFLArray< Base::CFLArray< float > > > &flaKernel)
사용자가 다이얼로그에 입력한 커널 배열을 float 타입으로 얻어 오는 함수로, 순서는 채널, Row, Column 입니다. 예를 들어 0채널의 row = 3,...
virtual const CResult SetDecimalPlace(uint8_t u8DecimalPlace=3)
좌표의 소수점 표시 자릿수를 설정합니다. 소수점 둘째 자리까지 표시하려면(예 : 0.01, 2.54 등) 2 를 인자로 전달합니다. 가능한 값의 범위는 0~20입니다.
virtual int32_t GetKernelHeight() const
커널의 높이를 얻어 오는 함수
CGUIDialogKernel(const CGUIDialogKernel &rhs)
복사 생성자(레퍼런스)
virtual uint8_t GetDecimalPlace() const
좌표의 소수점 표시 자릿수를 얻어 옵니다. 소수점 둘째 자리까지 표시하도록 설정된 경우(예 : 0.01, 2.54 등) 2를 반환합니다.
virtual const CResult SetKernel(const Base::CFLArray< Base::CFLArray< Base::CFLArray< double > > > &flaKernel)
다이얼로그에 커널 배열을 특정 채널에 대해 double 타입으로 지정하는 함수로, 다이얼로그 초기 팝업 시 채워지는 값을 미리 지정할 수 있습니다.
virtual const CResult SetKernel(int32_t i32SelectedChannel, const Base::CFLArray< Base::CFLArray< float > > &flaKernel)
다이얼로그에 커널 배열을 특정 채널에 대해 float 타입으로 지정하는 함수로, 다이얼로그에 채워지는 값을 지정할 수 있습니다.
virtual const CResult SetGUIKernelPreviewRange(int32_t i32StartPosX, int32_t i32StartPosY, int32_t i32Width, int32_t i32Height)
다이얼로그의 커널 입력 창에서 미리보기 및 편집할 커널의 범위를 지정합니다.예를 들어 1023x1023 사이즈 커널에서 x=1001, y=1001 로 지정하고 width = 2,...
virtual const CResult SetKernel(const Base::CFLArray< Base::CFLArray< Base::CFLArray< float > > > &flaKernel)
다이얼로그에 커널 배열을 특정 채널에 대해 float 타입으로 지정하는 함수로, 다이얼로그 초기 팝업 시 채워지는 값을 미리 지정할 수 있습니다.
virtual int32_t GetKernelWidth() const
커널의 너비를 얻어 오는 함수
virtual bool IsSameKernelOnEachChannel() const
모든 채널에 대해 동일한 커널을 적용하는지 각 채널에 각각의 커널을 지정하는지 여부를 얻어 오는 함수
virtual int32_t GetImageChannel() const
지정한 이미지 채널을 얻어 오는 함수
virtual BOOL OnInitDialog() override
다이얼로그 초기화 함수
virtual void SetSameKernelOnEachChannel(bool bSameKernelOnEachChannel)
모든 채널에 대해 동일한 커널을 적용할지 각 채널에 각각의 커널을 지정할지 여부를 지정하는 함수
virtual const CResult Load(const wchar_t *pWcsFileNameWithPath)
.dat 또는 .ini 확장자의 커널 파일 로드
static const CResult ConvertStringToKernelArray(Base::CFLString< wchar_t > &flstrKernel, Base::CFLArray< Base::CFLArray< Base::CFLArray< double > > > &flaReturn)
문자열을 CFLArray<CFLArray<double>> 형태의 커널로 변환하는 함수
virtual const CResult SetKernelSize(int32_t i32KernelWidth, int32_t i32KernelHeight)
커널의 너비와 높이를 지정하는 함수
virtual const CResult Save(const wchar_t *pWcsFileNameWithPath)
.dat 또는 .ini 확장자의 커널 파일 저장
virtual const CResult SetImageChannel(int32_t i32ImageChannel)
이미지 채널을 지정하는 함수
virtual const CResult GetKernel(int32_t i32SelectedChannel, Base::CFLArray< Base::CFLArray< float > > &flaKernel)
사용자가 다이얼로그에 입력한 커널 배열을 특정 채널에 대해 float 타입으로 얻어 오는 함수
virtual const CResult GetKernel(Base::CFLArray< Base::CFLArray< Base::CFLArray< double > > > &flaKernel)
사용자가 다이얼로그에 입력한 커널 배열을 double 타입으로 얻어 오는 함수로, 순서는 채널, Row, Column 입니다. 예를 들어 0채널의 row = 3,...
virtual const CResult SetKernelWidth(int32_t i32KernelWidth)
커널의 너비를 지정하는 함수
static CGUIDialogKernel * CreateModelessDialog(EKernelType eKernelType, int32_t i32KernelWidth, int32_t i32KernelHeight)
Modeless dialog 를 생성하는 함수
virtual const CResult GetKernel(int32_t i32SelectedChannel, Base::CFLArray< Base::CFLArray< double > > &flaKernel)
사용자가 다이얼로그에 입력한 커널 배열을 특정 채널에 대해 double 타입으로 얻어 오는 함수
CGUIDialogKernel(CWnd *pParent=nullptr)
초기화 생성자
virtual const CResult SetKernel(int32_t i32SelectedChannel, const Base::CFLArray< Base::CFLArray< double > > &flaKernel)
다이얼로그에 커널 배열을 특정 채널에 대해 double 타입으로 지정하는 함수로, 다이얼로그에 채워지는 값을 지정할 수 있습니다.
virtual const CResult SetKernelValue(int32_t i32SelectedChannel, int32_t i32Row, int32_t i32Col, const double &f64Value)
다이얼로그에 커널 배열을 특정 채널, 행, 열 위치에 대해 double 타입으로 지정하는 함수로, 다이얼로그에 채워지는 값을 지정할 수 있습니다.
virtual const CResult SetDefaultKernelFillValue(double f64DefaultKernelValue)
커널의 기본 값을 지정하는 함수로, 지정한 값이 기본으로 다이얼로그의 입력 창에 입력됩니다.
virtual ~CGUIDialogKernel()
기본 소멸자
Definition AESCryptography.h:18
Definition D2DObject.h:12
EKernelType
커널 입력 형식
Definition GUIDialogKernel.h:30
@ EKernelType_UserDefined
사용자가 커널을 입력하는 형태
Definition GUIDialogKernel.h:35
@ EKernelType_Predefined
미리 정의된 커널을 이용하는 형태
Definition GUIDialogKernel.h:41