C3D Kernel  104065
Открытые члены
Класс BTreeOperation

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

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

Полный список членов класса

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

 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
 Равен ли узел заданному узлу.

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

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


Методы

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

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

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

Замещает BTreeNode.

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.

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

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

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

Замещает BTreeNode.

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

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

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

Замещает BTreeNode.

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

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

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

Замещает BTreeNode.

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

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

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

Замещает BTreeNode.

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

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

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

Замещает BTreeNode.

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.

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

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

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

Замещает BTreeNode.

virtual bool BTreeOperation::IsEqual ( const BTreeNode other,
const EqualVarsMap equVars 
) const [inline, virtual]

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

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

Замещает BTreeNode.

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

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

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

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


Объявления и описания членов класса находятся в файле:
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Макросы