![]() |
FLImaging 6.5.8.1
|
수식을 표현하는 클래스 더 자세히 ...
#include <Expression.h>
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 () |
![]() | |
CFLBase () | |
기본 생성자 | |
virtual | ~CFLBase () |
소멸자 | |
void | Lock () const |
객체에 Lock을 설정 | |
bool | TryLock () const |
객체에 Lock을 시도 합니다. | |
void | Unlock () const |
객체를 Unlock | |
virtual const CProcessingUnitBase * | GetProcessingUnit () 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 |
예외를 발생 시킵니다. 발생 시킨 객체의 정보와 오류 코드가 로그에 기록 됩니다. | |
수식을 표현하는 클래스
FLImaging::Foundation::CExpression::CExpression | ( | ) |
기본 생성자
FLImaging::Foundation::CExpression::CExpression | ( | const CExpression & | rhs | ) |
복사 생성자
[in] | rhs | 복사할 객체 |
FLImaging::Foundation::CExpression::CExpression | ( | const CExpression * | pRhs | ) |
복사 생성자
[in] | pRhs | 복사할 객체 |
FLImaging::Foundation::CExpression::CExpression | ( | const wchar_t * | pWcsExpression | ) |
초기화 생성자
[in] | pWcsExpression | 객체의 수식을 해당 문자열로 설정 |
|
virtual |
기본 소멸자
const CResult FLImaging::Foundation::CExpression::Assign | ( | const CExpression & | rhs | ) |
const CResult FLImaging::Foundation::CExpression::Assign | ( | const CExpression * | pRhs | ) |
const CResult FLImaging::Foundation::CExpression::AssignVariable | ( | const wchar_t * | pWcsVariableName, |
double | f64Value ) |
변수의 값을 설정합니다.
[in] | pWcsVariableName | 변수 이름 |
[in] | f64Value | 변수 값 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |
const CResult FLImaging::Foundation::CExpression::AssignVariable | ( | int32_t | i32Index, |
double | f64Value ) |
변수의 값을 설정합니다.
[in] | i32Index | 변수 인덱스 번호 |
[in] | f64Value | 변수 값 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |
const CResult FLImaging::Foundation::CExpression::Clear | ( | ) |
const CResult FLImaging::Foundation::CExpression::CollectExpression | ( | wchar_t ** | ppWcsEvaluatorExpression = nullptr | ) |
같은 항끼리 연산하여 전개된 수식을 정리합니다.
[in] | ppWcsEvaluatorExpression | 정리한 수식 문자열 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |
const CResult FLImaging::Foundation::CExpression::Evaluate | ( | wchar_t ** | ppWcsEvaluatorExpression = nullptr | ) |
수식의 변수에 설정된 값을 넣고 계산합니다.
[out] | ppWcsEvaluatorExpression | 변수에 값이 들어간 수식 문자열 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |
const CResult FLImaging::Foundation::CExpression::ExpandExpression | ( | wchar_t ** | ppWcsEvaluatorExpression = nullptr | ) |
수식을 전개합니다.
[in] | ppWcsEvaluatorExpression | 전개한 수식 문자열 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |
const double FLImaging::Foundation::CExpression::GetEvaluatedVariable | ( | const wchar_t * | pWcsVariableName | ) |
계산된 변수의 값을 가져옵니다.
[in] | pWcsVariableName | 변수 이름 |
const | double 변수 값 |
const double FLImaging::Foundation::CExpression::GetEvaluatedVariable | ( | int32_t | i32Index | ) |
계산된 변수의 값을 가져옵니다.
[in] | i32Index | 변수 인덱스 번호 |
const | double 변수 값 |
const wchar_t * FLImaging::Foundation::CExpression::GetExpression | ( | ) |
설정된 수식 문자열을 가져옵니다.
const | wchar_t* 설정된 수식 문자열 |
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> | 설정된 수식 문자열 |
int32_t FLImaging::Foundation::CExpression::GetIndexOfEvaluatedVariable | ( | const wchar_t * | pWcsVariableName | ) |
값이 설정되지 않은 변수의 인덱스 번호를 가져옵니다.
[in] | pWcsVariableName | 변수 이름 |
int32_t | 변수의 인덱스 번호 |
int32_t FLImaging::Foundation::CExpression::GetIndexOfVariable | ( | const wchar_t * | pWcsVariableName | ) |
값이 설정된 변수의 인덱스 번호를 가져옵니다.
[in] | pWcsVariableName | 변수 이름 |
int32_t | 변수의 인덱스 번호 |
double * FLImaging::Foundation::CExpression::GetVariable | ( | const wchar_t * | pWcsVariableName | ) |
설정된 변수를 가져옵니다.
[in] | pWcsVariableName | 변수 이름 |
double* | 변수 주소 |
double * FLImaging::Foundation::CExpression::GetVariable | ( | int32_t | i32Index | ) |
설정된 변수를 가져옵니다.
[in] | i32Index | 변수 인덱스 번호 |
double* | 변수 주소 |
int32_t FLImaging::Foundation::CExpression::GetVariableCount | ( | ) |
설정된 변수 개수를 가져옵니다.
int32_t | 변수 개수 |
EExpressionValid FLImaging::Foundation::CExpression::IsExprssionValid | ( | ) |
계산된 수식이 유효한지 판별
FLImaging::Foundation::CExpression::EExpressionValid | 수식이 유효한지 반환 |
const CResult FLImaging::Foundation::CExpression::ResetVariable | ( | const wchar_t * | pWcsVariableName | ) |
const CResult FLImaging::Foundation::CExpression::ResetVariable | ( | int32_t | i32Index | ) |
const CResult FLImaging::Foundation::CExpression::SetExpression | ( | const wchar_t * | pWcsExpression | ) |
수식 문자열을 설정합니다.
[in] | pWcsExpression | 설정할 수식 문자열 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |
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 | 계산 정도 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |
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 | 계산 정도 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |
const CResult FLImaging::Foundation::CExpression::UnrollPower | ( | wchar_t ** | ppWcsEvaluatorExpression = nullptr | ) |
수식에 있는 제곱식을 곱셈 표현으로 전개합니다.
[in] | ppWcsEvaluatorExpression | 전개한 수식 문자열 |
const | FLImaging::CResult 함수 실행 결과 (성공 시 EResult_OK 반환) |