FLImaging 6.5.8.1
FLImaging::Foundation::CExpression 클래스 참조

수식을 표현하는 클래스 더 자세히 ...

#include <Expression.h>

FLImaging::Foundation::CExpression에 대한 상속 다이어그램 :
FLImaging::Base::CFLBase

Public 타입

enum  EExpressionValid { EExpressionValid_Initialized = 0 , EExpressionValid_Valid , EExpressionValid_Invalid }
 수식이 유효한지 표현하기 위한 열거형 더 자세히 ...
 

Public 멤버 함수

 CExpression ()
 
 CExpression (const CExpression &rhs)
 
 CExpression (const CExpression *pRhs)
 
 CExpression (const wchar_t *pWcsExpression)
 
virtual ~CExpression ()
 
const CResult Clear ()
 
const CResult Assign (const CExpression &rhs)
 
const CResult Assign (const CExpression *pRhs)
 
const CResult SetExpression (const wchar_t *pWcsExpression)
 
const wchar_t * GetExpression ()
 
Base::CFLString< wchar_t > GetExpression (bool bExponentialNotation, int32_t i32CoeffPrecision)
 
const CResult Evaluate (wchar_t **ppWcsEvaluatorExpression=nullptr)
 
const CResult Solve (const wchar_t *pWcsVariable, Base::CFLArray< std::complex< double > > *pFlaResult, ECoefficientOrder eCoeffOrder=ECoefficientOrder_Ascending, EAccuracy eAccuracy=EAccuracy_Bits64)
 
const CResult Solve (const wchar_t *pWcsVariable, Base::CFLArray< std::complex< double > > *pFlaResult, Base::CFLArray< std::complex< double > > *pFlaDiscontinuous, ECoefficientOrder eCoeffOrder=ECoefficientOrder_Ascending, EAccuracy eAccuracy=EAccuracy_Bits64)
 
const CResult ExpandExpression (wchar_t **ppWcsEvaluatorExpression=nullptr)
 
const CResult UnrollPower (wchar_t **ppWcsEvaluatorExpression=nullptr)
 
const CResult CollectExpression (wchar_t **ppWcsEvaluatorExpression=nullptr)
 
int32_t GetVariableCount ()
 
int32_t GetIndexOfVariable (const wchar_t *pWcsVariableName)
 
int32_t GetIndexOfEvaluatedVariable (const wchar_t *pWcsVariableName)
 
const CResult AssignVariable (int32_t i32Index, double f64Value)
 
const CResult AssignVariable (const wchar_t *pWcsVariableName, double f64Value)
 
const CResult ResetVariable (int32_t i32Index)
 
const CResult ResetVariable (const wchar_t *pWcsVariableName)
 
double * GetVariable (int32_t i32Index)
 
double * GetVariable (const wchar_t *pWcsVariableName)
 
const double GetEvaluatedVariable (int32_t i32Index)
 
const double GetEvaluatedVariable (const wchar_t *pWcsVariableName)
 
EExpressionValid IsExprssionValid ()
 
- FLImaging::Base::CFLBase(으)로부터 상속된 Public 멤버 함수
 CFLBase ()
 기본 생성자
 
virtual ~CFLBase ()
 소멸자
 
void Lock () const
 객체에 Lock을 설정
 
bool TryLock () const
 객체에 Lock을 시도 합니다.
 
void Unlock () const
 객체를 Unlock
 
virtual const CProcessingUnitBaseGetProcessingUnit () const
 설정된 ProcessingUnit을 반환
 
virtual const CResult SetProcessingUnit (const CProcessingUnitBase &pub)
 ProcessingUnit을 설정
 
virtual const CResult SetProcessingUnit (const CProcessingUnitBase *pPub)
 ProcessingUnit을 설정
 
virtual void ResetProcessingUnit ()
 설정된 ProcessingUnit을 해제
 
virtual bool IsValid () const
 객체 유효성 확인
 
template<class T >
bool IsValid (T &tValue) const
 입력 값 유효성 확인
 
template<class T >
bool IsValid (T *pTValue) const
 입력 값 유효성 확인
 
template<class T >
void GenerateMin (T &tValue) const
 해당 타입의 최소값 생성
 
template<class T >
void GenerateMin (T *pTValue) const
 해당 타입의 최소값 생성
 
template<class T >
void GenerateMinInt32 (T &tValue) const
 부호있는 32비트 정수 최소값 생성
 
template<class T >
void GenerateMinInt32 (T *pTValue) const
 부호있는 32비트 정수 최소값 생성
 
template<class T >
void GenerateMinInt31 (T &tValue) const
 부호있는 31비트 정수 최소값 생성
 
template<class T >
void GenerateMinInt31 (T *pTValue) const
 부호있는 31비트 정수 최소값 생성
 
template<class T >
void GenerateMax (T &tValue) const
 해당 타입의 최댓값 생성
 
template<class T >
void GenerateMax (T *pTValue) const
 해당 타입의 최댓값 생성
 
template<class T >
void GenerateMaxInt32 (T &tValue) const
 부호있는 32비트 정수 최댓값 생성
 
template<class T >
void GenerateMaxInt32 (T *pTValue) const
 부호있는 32비트 정수 최댓값 생성
 
template<class T >
void GenerateMaxInt31 (T &tValue) const
 부호있는 31비트 정수 최댓값 생성
 
template<class T >
void GenerateMaxInt31 (T *pTValue) const
 부호있는 31비트 정수 최댓값 생성
 
template<class T >
void GenerateInvalid (T &tValue) const
 Invalid값 생성
 
template<class T >
void GenerateInvalid (T *pTValue) const
 Invalid값 생성
 
virtual void OnReceiveBroadcast (const CBroadcastMessage *pMessage)
 Callback 함수. BroadcastMessage를 수신받는 함수
 
virtual int64_t GetClassType () const =0
 Class의 Type 값을 반환한다. 반환되는 값 자체는 의미가 없으나 같은 종류의 클래스인 경우 같은 값이 나오게 되어 비교가 가능하다.
 
const char * GetClassNameWithNamespace () const
 실제 인스턴스의 namespace를 포함한 클래스 명을 반환한다.
 
const char * GetClassNameWithoutNamespace () const
 실제 인스턴스의 namespace를 포함하지 않은 클래스 명을 반환한다.
 
virtual uint32_t GetClassHash () const
 실제 인스턴스의 클래스 해쉬 값을 반환합니다. 같은 클래스에 대해서는 인스턴스가 달라도 동일한 값을 가지게 됩니다.
 
virtual bool IsLicenseAvailable () const
 현재 보유한 라이선스로 해당 알고리즘을 사용할 수 있는지에 대한 여부를 반환 합니다.
 
const CResult ShareSynchronizationObject (const CFLBase *pSrcObject) const
 원본 객체의 동기화 객체를 공유
 
bool IsSharedSynchronizationObject () const
 공유 동기화 객체를 사용 중인지 여부
 
virtual void Throw (const CResult &res, const wchar_t *pWcsExtraMessage=nullptr) const
 예외를 발생 시킵니다. 발생 시킨 객체의 정보와 오류 코드가 로그에 기록 됩니다.
 
virtual void Throw (const std::exception &res, const wchar_t *pWcsExtraMessage) const
 예외를 발생 시킵니다. 발생 시킨 객체의 정보와 오류 코드가 로그에 기록 됩니다.
 

상세한 설명

수식을 표현하는 클래스

멤버 열거형 문서화

◆ EExpressionValid

수식이 유효한지 표현하기 위한 열거형

열거형 멤버
EExpressionValid_Initialized 

해당 수식은 초기화 된 뒤 유효성 판별을 수행하지 않았습니다.

EExpressionValid_Valid 

유효한 수식

EExpressionValid_Invalid 

유효하지 않은 수식

생성자 & 소멸자 문서화

◆ CExpression() [1/4]

FLImaging::Foundation::CExpression::CExpression ( )

기본 생성자

◆ CExpression() [2/4]

FLImaging::Foundation::CExpression::CExpression ( const CExpression & rhs)

복사 생성자

매개변수
[in]rhs복사할 객체

◆ CExpression() [3/4]

FLImaging::Foundation::CExpression::CExpression ( const CExpression * pRhs)

복사 생성자

매개변수
[in]pRhs복사할 객체

◆ CExpression() [4/4]

FLImaging::Foundation::CExpression::CExpression ( const wchar_t * pWcsExpression)

초기화 생성자

매개변수
[in]pWcsExpression객체의 수식을 해당 문자열로 설정

◆ ~CExpression()

virtual FLImaging::Foundation::CExpression::~CExpression ( )
virtual

기본 소멸자

멤버 함수 문서화

◆ Assign() [1/2]

const CResult FLImaging::Foundation::CExpression::Assign ( const CExpression & rhs)

객체를 복사합니다.

매개변수
[in]rhs복사할 객체
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ Assign() [2/2]

const CResult FLImaging::Foundation::CExpression::Assign ( const CExpression * pRhs)

객체를 복사합니다.

매개변수
[in]pRhs복사할 객체
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ AssignVariable() [1/2]

const CResult FLImaging::Foundation::CExpression::AssignVariable ( const wchar_t * pWcsVariableName,
double f64Value )

변수의 값을 설정합니다.

매개변수
[in]pWcsVariableName변수 이름
[in]f64Value변수 값
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ AssignVariable() [2/2]

const CResult FLImaging::Foundation::CExpression::AssignVariable ( int32_t i32Index,
double f64Value )

변수의 값을 설정합니다.

매개변수
[in]i32Index변수 인덱스 번호
[in]f64Value변수 값
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ Clear()

const CResult FLImaging::Foundation::CExpression::Clear ( )

객체의 변수를 초기화합니다.

반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ CollectExpression()

const CResult FLImaging::Foundation::CExpression::CollectExpression ( wchar_t ** ppWcsEvaluatorExpression = nullptr)

같은 항끼리 연산하여 전개된 수식을 정리합니다.

매개변수
[in]ppWcsEvaluatorExpression정리한 수식 문자열
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ Evaluate()

const CResult FLImaging::Foundation::CExpression::Evaluate ( wchar_t ** ppWcsEvaluatorExpression = nullptr)

수식의 변수에 설정된 값을 넣고 계산합니다.

매개변수
[out]ppWcsEvaluatorExpression변수에 값이 들어간 수식 문자열
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ ExpandExpression()

const CResult FLImaging::Foundation::CExpression::ExpandExpression ( wchar_t ** ppWcsEvaluatorExpression = nullptr)

수식을 전개합니다.

매개변수
[in]ppWcsEvaluatorExpression전개한 수식 문자열
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ GetEvaluatedVariable() [1/2]

const double FLImaging::Foundation::CExpression::GetEvaluatedVariable ( const wchar_t * pWcsVariableName)

계산된 변수의 값을 가져옵니다.

매개변수
[in]pWcsVariableName변수 이름
반환값
constdouble 변수 값

◆ GetEvaluatedVariable() [2/2]

const double FLImaging::Foundation::CExpression::GetEvaluatedVariable ( int32_t i32Index)

계산된 변수의 값을 가져옵니다.

매개변수
[in]i32Index변수 인덱스 번호
반환값
constdouble 변수 값

◆ GetExpression() [1/2]

const wchar_t * FLImaging::Foundation::CExpression::GetExpression ( )

설정된 수식 문자열을 가져옵니다.

반환값
constwchar_t* 설정된 수식 문자열

◆ GetExpression() [2/2]

Base::CFLString< wchar_t > FLImaging::Foundation::CExpression::GetExpression ( bool bExponentialNotation,
int32_t i32CoeffPrecision )

설정된 수식 문자열을 지정한 포맷으로 가져옵니다.

매개변수
[in]bExponentialNotation지수 표기법으로 표시 여부, true 일 경우 계수를 4.4e-4 와 같이 표기하며 false 일 경우 계수를 0.00044 와 같이 표기
[in]i32CoeffPrecision표현할 계수의 소수점 자릿수
반환값
FLImaging::Base::CFLString<wchar_t>설정된 수식 문자열
참고
FLImaging::Base::CFLString

◆ GetIndexOfEvaluatedVariable()

int32_t FLImaging::Foundation::CExpression::GetIndexOfEvaluatedVariable ( const wchar_t * pWcsVariableName)

값이 설정되지 않은 변수의 인덱스 번호를 가져옵니다.

매개변수
[in]pWcsVariableName변수 이름
반환값
int32_t변수의 인덱스 번호

◆ GetIndexOfVariable()

int32_t FLImaging::Foundation::CExpression::GetIndexOfVariable ( const wchar_t * pWcsVariableName)

값이 설정된 변수의 인덱스 번호를 가져옵니다.

매개변수
[in]pWcsVariableName변수 이름
반환값
int32_t변수의 인덱스 번호

◆ GetVariable() [1/2]

double * FLImaging::Foundation::CExpression::GetVariable ( const wchar_t * pWcsVariableName)

설정된 변수를 가져옵니다.

매개변수
[in]pWcsVariableName변수 이름
반환값
double*변수 주소

◆ GetVariable() [2/2]

double * FLImaging::Foundation::CExpression::GetVariable ( int32_t i32Index)

설정된 변수를 가져옵니다.

매개변수
[in]i32Index변수 인덱스 번호
반환값
double*변수 주소

◆ GetVariableCount()

int32_t FLImaging::Foundation::CExpression::GetVariableCount ( )

설정된 변수 개수를 가져옵니다.

반환값
int32_t변수 개수

◆ IsExprssionValid()

EExpressionValid FLImaging::Foundation::CExpression::IsExprssionValid ( )

계산된 수식이 유효한지 판별

반환값
FLImaging::Foundation::CExpression::EExpressionValid수식이 유효한지 반환
참고
FLImaging::Foundation::CExpression::EExpressionValid

◆ ResetVariable() [1/2]

const CResult FLImaging::Foundation::CExpression::ResetVariable ( const wchar_t * pWcsVariableName)

변수를 리셋합니다.

매개변수
[in]pWcsVariableName변수 이름
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ ResetVariable() [2/2]

const CResult FLImaging::Foundation::CExpression::ResetVariable ( int32_t i32Index)

변수를 리셋합니다.

매개변수
[in]i32Index변수 인덱스 번호
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ SetExpression()

const CResult FLImaging::Foundation::CExpression::SetExpression ( const wchar_t * pWcsExpression)

수식 문자열을 설정합니다.

매개변수
[in]pWcsExpression설정할 수식 문자열
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult

◆ Solve() [1/2]

const CResult FLImaging::Foundation::CExpression::Solve ( const wchar_t * pWcsVariable,
Base::CFLArray< std::complex< double > > * pFlaResult,
Base::CFLArray< std::complex< double > > * pFlaDiscontinuous,
ECoefficientOrder eCoeffOrder = ECoefficientOrder_Ascending,
EAccuracy eAccuracy = EAccuracy_Bits64 )

수식의 1변수 방정식의 해를 계산합니다. 만약 분모에 변수가 존재한다면 분모를 0으로 하는 변수의 값 또한 반환합니다.

매개변수
[in]pWcsVariable미지수 기호
[out]pFlaResult방정식의 해
[out]pFlaDiscontinuous분모를 0으로 하는 변수의 값
[in]eCoeffOrder배열에서 계수를 늘어놓은 방식 지정
[in]eAccuracy계산 정도
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult
FLImaging::Base::CFLArray
FLImaging::Foundation::ECoefficientOrder
FLImaging::Foundation::EAccuracy

◆ Solve() [2/2]

const CResult FLImaging::Foundation::CExpression::Solve ( const wchar_t * pWcsVariable,
Base::CFLArray< std::complex< double > > * pFlaResult,
ECoefficientOrder eCoeffOrder = ECoefficientOrder_Ascending,
EAccuracy eAccuracy = EAccuracy_Bits64 )

수식의 1변수 방정식의 해를 계산합니다.

매개변수
[in]pWcsVariable미지수 기호
[out]pFlaResult방정식의 해
[in]eCoeffOrder배열에서 계수를 늘어놓은 방식 지정
[in]eAccuracy계산 정도
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult
FLImaging::Base::CFLArray
FLImaging::Foundation::ECoefficientOrder
FLImaging::Foundation::EAccuracy

◆ UnrollPower()

const CResult FLImaging::Foundation::CExpression::UnrollPower ( wchar_t ** ppWcsEvaluatorExpression = nullptr)

수식에 있는 제곱식을 곱셈 표현으로 전개합니다.

매개변수
[in]ppWcsEvaluatorExpression전개한 수식 문자열
반환값
constFLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환)
참고
FLImaging::CResult