C3D Toolkit  Kernel - 105122, Vision - 0.181114.105122

Операция с двумя аргументами как узел бинарного дерева. Подробнее...

Граф наследования:BTreeOperation:
[см. легенду]
Граф связей класса BTreeOperation:
[см. легенду]

Открытые члены

 BTreeOperation (PceOperationType code, BTreeNode &op1, BTreeNode &op2)
 Конструктор. Подробнее...
 
 BTreeOperation (const BTreeOperation &)
 Конструктор копирования.
 
virtual ~BTreeOperation ()
 Деструктор.
 
virtual BteNodeType IsA () const
 Выдать тип узла дерева.
 
virtual BTreeNodeDuplicate () const
 Создать копию объекта.
 
virtual bool IsLine () const
 Функция линейная.
 
virtual bool IsCos (double &a, double &b) const
 < имеет ли вид a * cos() + b.
 
Функции для вычисления значения и производной.
virtual EquTreeResCode GetValue (double &fvalue) const
 Вычислить значение. Подробнее...
 
virtual EquTreeResCode CalculateDerives (double &, double &, double &, double &, const VarsDerives &) const
 Вычислить значение и производные. Подробнее...
 
virtual void GetUsedVariables (SSArray< ItTreeVariable *> &, SSArray< ItUserFunc *> &) const
 Выдать использованные переменные. Подробнее...
 
virtual bool SetValue (double, const std::set< ItTreeVariable *> &)
 Установить значение. Подробнее...
 
Функции замены переменных по именам.
virtual void ReplaceParVariable (const c3d::string_t &varName, ItTreeVariable &newVar)
 Заменить переменные. Подробнее...
 
virtual void ReplaceParVariable (const ItTreeVariable &var, const BTreeNode &subTree)
 Заменить узел. Подробнее...
 
Функции доступа к данным.
virtual BTreeNodeGetSubNode (size_t i)
 Дать вложенный узел по индексу.
 
virtual bool GetDefRange (DefRange &, ItTreeVariable &, bool stopOnBreak) const
 Область определения. Подробнее...
 
virtual std_unique_ptr< BTreeNodeFixVars (const RPArray< ItTreeVariable > &unfixed, PArray< ItUserFunc > &newFuncs, EquTreeResCode &) const
 Фиксированные переменные. Подробнее...
 
virtual std_unique_ptr< BTreeNodeGetCalcEquivalent () const
 Дать эквивалентный узел.
 
virtual void GetString (c3d::string_t &str) const
 Дать строку. Подробнее...
 
virtual size_t SizeOf () const
 Вычислить размер в байтах.
 
int16 GetOperationCode () const
 Код операции.
 
BTreeNodeGetFirstOperand () const
 Первый операнд.
 
BTreeNodeGetSecondOperand () const
 Второй операнд.
 
Функции сравнения.
virtual bool IsEqual (const BTreeNode &other, const EqualVarsMap &equVars) const
 Равен ли узел заданному узлу. Подробнее...
 
virtual bool IsEqual (const BTreeOperation &other, const EqualVarsMap &equVars) const
 Равен ли узел заданному узлу. Подробнее...
 
- Открытые члены унаследованные от BTreeNode
EquTreeResCode CalculateDerives (const ItCoord *coord, double &v, double &fd, double &sd, double &td) const
 Вычислить значение и производные. Подробнее...
 
virtual void ReplaceIntVariable (const c3d::string_t &, ItIntervalTreeVariable &)
 Заменить переменные. Подробнее...
 
bool GetExtremumPoints (std::pair< double, double > interval, ItTreeVariable &var, std::vector< double > &points)
 Выдать значение параметра экстремума. Подробнее...
 
virtual bool IsEqual (const BTreeConst &, const EqualVarsMap &) const
 Равен ли узел заданному узлу. Подробнее...
 
virtual bool IsEqual (const BTreeIdent &, const EqualVarsMap &) const
 Равен ли узел заданному узлу. Подробнее...
 
virtual bool IsEqual (const BTreeFunction &, const EqualVarsMap &) const
 Равен ли узел заданному узлу. Подробнее...
 
virtual bool IsEqual (const BTreeOperation1Arg &, const EqualVarsMap &) const
 Равен ли узел заданному узлу. Подробнее...
 
virtual bool IsEqual (const BTreeOperation3Args &, const EqualVarsMap &) const
 Равен ли узел заданному узлу. Подробнее...
 
virtual bool IsEqual (const BTreeUserFunc &, const EqualVarsMap &) const
 Равен ли узел заданному узлу. Подробнее...
 
- Открытые члены унаследованные от TapeBase
 TapeBase (RegistrableRec regs=noRegistrable)
 Конструктор.
 
 TapeBase (const TapeBase &other)
 Конструктор копирования
 
virtual ~TapeBase ()
 Деструктор.
 
RegistrableRec GetRegistrable () const
 Является ли потоковый класс регистрируемым.
 
void SetRegistrable (RegistrableRec regs=registrable) const
 Установить состояние регистрации потокового класса.
 
virtual ClassDescriptor GetClassDescriptor (const VersionContainer &) const =0
 Получить дескриптор класса
 
virtual const char * GetPureName (const VersionContainer &) const
 Получить имя класса.
 
virtual bool IsFamilyRegistrable () const
 Принадлежит ли объект к регистрируемому семейству.
 

Дополнительные унаследованные члены

- Открытые типы унаследованные от BTreeNode
typedef std::map< ItTreeVariable *, ItTreeVariable * > EqualVarsMap
 Набор пар переменных.
 
typedef std::map< const ItCoord *, DerivesValuesVarsDerives
 Набор пар: координата - значение и производные.
 
- Открытые атрибуты унаследованные от BTreeNode
BteNodeType type
 Тип узла. Подробнее...
 
- Защищенные члены унаследованные от BTreeNode
 BTreeNode ()
 Конструктор по умолчанию.
 
- Защищенные данные унаследованные от BTreeNode
VarsDerives varDers
 Рабочие переменные.
 

Подробное описание

Операция с двумя аргументами как узел бинарного дерева.

Узел бинарного дерева, обозначающий операцию с двумя аргументами.

Методы

◆ GetValue()

virtual EquTreeResCode BTreeOperation::GetValue ( double &  fValue) const
virtual

Вычислить значение.

Вычислить значение узла.

Аргументы
[out]fValue- Значение.
Возвращает
Код результата разбора строки.

Замещает BTreeNode.

◆ CalculateDerives()

virtual EquTreeResCode BTreeOperation::CalculateDerives ( double &  fValue,
double &  derive1,
double &  derive2,
double &  derive3,
const VarsDerives ders 
) const
virtual

Вычислить значение и производные.

Вычислить значение и производные.

Аргументы
[out]fValue- Значение.
[out]derive1- Первая производная.
[out]derive2- Вторая производная.
[out]derive3- Третья производная.
[in]ders- Набор значений и производных.
Возвращает
Код результата разбора строки.

Замещает BTreeNode.

◆ GetUsedVariables()

virtual void BTreeOperation::GetUsedVariables ( SSArray< ItTreeVariable *> &  arr,
SSArray< ItUserFunc *> &  funcs 
) const
virtual

Выдать использованные переменные.

Выдать использованные переменные.

Аргументы
[out]arr- Переменные.
[out]funcs- Пользовательские функции.

Замещает BTreeNode.

◆ SetValue()

virtual bool BTreeOperation::SetValue ( double  v,
const std::set< ItTreeVariable *> &  unfixedDVars 
)
inlinevirtual

Установить значение.

Устанавливает значение v узлу дерева.

Аргументы
[in]v- Желаемое значение.
[in]unfixedDVars- Переменные, значение которых можно менять.

Замещает BTreeNode.

◆ ReplaceParVariable() [1/2]

virtual void BTreeOperation::ReplaceParVariable ( const c3d::string_t varName,
ItTreeVariable newVar 
)
virtual

Заменить переменные.

Заменить все переменные с указанными именем на новую переменную.

Аргументы
[out]varName- Имя.
[out]newVar- Новая переменная.

Замещает BTreeNode.

◆ ReplaceParVariable() [2/2]

virtual void BTreeOperation::ReplaceParVariable ( const ItTreeVariable var,
const BTreeNode subTree 
)
virtual

Заменить узел.

Заменить узел на копию нового, если заданная переменная использована.

Аргументы
[out]var- Переменная.
[out]subTree- Новый узел.

Замещает BTreeNode.

◆ GetDefRange()

virtual bool BTreeOperation::GetDefRange ( DefRange defRange,
ItTreeVariable var,
bool  stopOnBreak 
) const
virtual

Область определения.

Область определения.

Аргументы
[in,out]defRange- Область определения.
[out]var- Переменная.
[in]stopOnBreak- Не искать разрывы области определения.

Замещает BTreeNode.

◆ FixVars()

virtual std_unique_ptr<BTreeNode> BTreeOperation::FixVars ( const RPArray< ItTreeVariable > &  unfixedVars,
PArray< ItUserFunc > &  newFuncs,
EquTreeResCode code 
) const
virtual

Фиксированные переменные.

Фиксированные переменные.

Аргументы
[in]unfixedVars- Набор нефиксированных переменных. Если переменная нашлась в наборе, фиксировать копию.
[in]newFuncs- Пользовательские функции.
[out]code- Коды результата разбора строки.
Возвращает
Переменную для фиксирования.

Замещает BTreeNode.

◆ GetString()

virtual void BTreeOperation::GetString ( c3d::string_t ) const
virtual

Дать строку.

Дать строку выражения.

Аргументы
[out]-Строка.

Замещает BTreeNode.

◆ IsEqual() [1/2]

virtual bool BTreeOperation::IsEqual ( const BTreeNode other,
const EqualVarsMap equVars 
) const
inlinevirtual

Равен ли узел заданному узлу.

Равен ли узел заданному узлу.

Аргументы
[in]other- Узел для сравнения.
[in]equVars- Набор пар равных переменных.
Возвращает
true, если узлы равны.

Замещает BTreeNode.

◆ IsEqual() [2/2]

virtual bool BTreeOperation::IsEqual ( const BTreeOperation other,
const EqualVarsMap equVars 
) const
virtual

Равен ли узел заданному узлу.

Равен ли узел заданному узлу.

Аргументы
[in]other- Узел для сравнения.
[in]equVars- Набор пар равных переменных.
Возвращает
true, если узлы равны.

Переопределяет метод предка BTreeNode.


Объявления и описания членов класса находятся в файле: