Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

mcMathMng Class Reference

#include <MathMng.h>

Inheritance diagram for mcMathMng:

Inheritance graph
[legend]
Collaboration diagram for mcMathMng:

Collaboration graph
[legend]
List of all members.

Detailed Description

Implements a simple fraction in the program, working as a simple container class of two mcPolynomial classes (to hold numerator and denominator).

The user can edit the fraction as any other element, switching from numerator to denominator using the up or right keys.

Definition at line 524 of file MathMng.h.

Public Member Functions

 mcMathMng (const mcPolynomial &left, const mcPolynomial &right)
bool data_isValidContainerFor (mcElementType t) const
 Returns TRUE if this element can safely contain the given element type.
mcWRAPPER const mcPolynomial & data_GetLeftMem () const
mcWRAPPER const mcPolynomial & data_GetRightMem () const
mcWRAPPER mcPolynomial & data_GetLeftMem ()
mcWRAPPER mcPolynomial & data_GetRightMem ()
mcWRAPPER void data_SetFilter (const mcFilter *p)
mcWRAPPER void gui_MoveSel ()
mcWRAPPER wxArrayString gui_GetPossibleOpOnSel (mcMathMngCmd *p) const
mcWRAPPER void gui_GetPossibleOperations (mcMathMngCmdID *p) const
mcWRAPPER void gui_MultiplyBySel ()
mcWRAPPER void gui_ExecCmdOnSel (mcMathMngCmdID n)
mcWRAPPER const mcPolynomial & gui_GetFocusMem () const
mcWRAPPER mcPolynomial & gui_GetFocusMem ()
mcWRAPPER mcMathMngType math_GetMathMngType () const
mcWRAPPER mcExpSimRes math_Simplify (long flags, long rflags)
mcWRAPPER mcExpSimRes math_Expand (long flags, long rflags)
mcWRAPPER void math_MoveConstants (bool toleft)
mcWRAPPER void math_MoveParameters (bool toleft)
mcWRAPPER void math_MoveUnknowns (bool toleft)
mcWRAPPER void math_MoveNonSymbol (bool toleft)
mcWRAPPER void math_MoveSymbol (const mcSymbolProperties *sym, bool toleft)
mcWRAPPER void math_MoveFreeFrom (const mcSymbolProperties *sym, bool toleft)
mcWRAPPER void math_MoveAll (bool toleft)
mcWRAPPER void math_FactoreOutAll (bool bForceUseless)
mcWRAPPER void math_FactoreOut (const mcSymbolProperties *sym, const mcPolynomial &pol, bool bForceUseless)
mcWRAPPER void math_FactoreOutFreeOf (const mcSymbolProperties *sym, const mcPolynomial &pol, bool bForceUseless)
mcWRAPPER mcIntegerValue math_GetMaxDegreeFor (const mcSymbolProperties *p) const
mcWRAPPER mcElement math_Find (int n, const mcElement &tofind, long flags, int *pos=NULL) const
mcWRAPPER void math_SetMathType (mcMathMngType t)
mcWRAPPER bool math_isFactorized () const

Protected Member Functions

void data_Init (const mcPolynomial &left, const mcPolynomial &right)

Private Member Functions

 mcDEFINE_MAIN_CLASS (MathMng, mcElement)


Constructor & Destructor Documentation

mcMathMng::mcMathMng (  const mcPolynomial &  left,
const mcPolynomial &  right
)  [inline]
 

Definition at line 536 of file MathMng.h.

References data_Init(), and mcObject::data_SetRefData().


Member Function Documentation

mcWRAPPER mcPolynomial& mcMathMng::data_GetLeftMem (   )  [inline]
 

Definition at line 547 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER const mcPolynomial& mcMathMng::data_GetLeftMem (   )  const [inline]
 

Definition at line 543 of file MathMng.h.

References mcWRAPPER.

Referenced by data_Init(), mcMathOrSystemHelpers::gui_AddEmptyLineToLastAndSystem(), mcMathOrSystemHelpers::gui_AddEmptyLineToNewAndSystem(), mcMathMngHelpers::gui_GetSelection(), and mcMathMngHelpers::math_Compare().

mcWRAPPER mcPolynomial& mcMathMng::data_GetRightMem (   )  [inline]
 

Definition at line 549 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER const mcPolynomial& mcMathMng::data_GetRightMem (   )  const [inline]
 

Definition at line 545 of file MathMng.h.

References mcWRAPPER.

Referenced by data_Init(), mcMathMngHelpers::gui_GetSelection(), mcMathMngHelpers::math_Compare(), and mcPolySolver::math_SolveLineSecondDegree().

void mcMathMng::data_Init (  const mcPolynomial &  left,
const mcPolynomial &  right
)  [inline, protected]
 

Definition at line 530 of file MathMng.h.

References data_GetLeftMem(), data_GetRightMem(), math_SetMathType(), and mcMMT_EQUATION.

Referenced by mcMathLine::mcMathLine(), and mcMathMng().

bool mcMathMng::data_isValidContainerFor (  mcElementType  t  )  const [inline, virtual]
 

Returns TRUE if this element can safely contain the given element type.

Without this function a lot of errors could be undetectable:

        mcPolynomial pol; // creates a new polynomial
        mcElement e(pol); // references it
        [...]    // the programmers forgots what "e" references
        mcFraction f(e);  // mcFraction wraps a mcPolynomialHelpers class !
        f.data_GetNum();  // CRASH

This function must be overridden by mcElement-derived classes in order to provide a list of the mcElementType it can safely contain.

Reimplemented from mcElement.

Reimplemented in mcMathLine.

Definition at line 540 of file MathMng.h.

References mcET_MATHMNG.

mcWRAPPER void mcMathMng::data_SetFilter (  const mcFilter *  p  )  [inline]
 

Definition at line 551 of file MathMng.h.

References mcElementArray::data_SetFilter(), and mcWRAPPER.

Referenced by mcMathAndSystem::data_SetFilter(), and mcMathAndSystemHelpers::data_SetFilter().

mcWRAPPER void mcMathMng::gui_ExecCmdOnSel (  mcMathMngCmdID  n  )  [inline]
 

Definition at line 564 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER mcPolynomial& mcMathMng::gui_GetFocusMem (   )  [inline]
 

Definition at line 570 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER const mcPolynomial& mcMathMng::gui_GetFocusMem (   )  const [inline]
 

Definition at line 568 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::gui_GetPossibleOperations (  mcMathMngCmdID *  p  )  const [inline]
 

Definition at line 560 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER wxArrayString mcMathMng::gui_GetPossibleOpOnSel (  mcMathMngCmd *  p  )  const [inline]
 

Definition at line 558 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::gui_MoveSel (   )  [inline]
 

Definition at line 556 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::gui_MultiplyBySel (   )  [inline]
 

Definition at line 562 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER mcExpSimRes mcMathMng::math_Expand (  long  flags,
long  rflags
)  [inline]
 

Definition at line 578 of file MathMng.h.

References mcElementArray::math_Expand(), and mcWRAPPER.

mcWRAPPER void mcMathMng::math_FactoreOut (  const mcSymbolProperties *  sym,
const mcPolynomial &  pol,
bool  bForceUseless
)  [inline]
 

Definition at line 598 of file MathMng.h.

References mcPolynomial::math_FactoreOut(), and mcWRAPPER.

mcWRAPPER void mcMathMng::math_FactoreOutAll (  bool  bForceUseless  )  [inline]
 

Definition at line 596 of file MathMng.h.

References mcPolynomial::math_FactoreOutAll(), and mcWRAPPER.

mcWRAPPER void mcMathMng::math_FactoreOutFreeOf (  const mcSymbolProperties *  sym,
const mcPolynomial &  pol,
bool  bForceUseless
)  [inline]
 

Definition at line 600 of file MathMng.h.

References mcPolynomial::math_FactoreOutFreeOf(), and mcWRAPPER.

mcWRAPPER mcElement mcMathMng::math_Find (  int  n,
const mcElement &  tofind,
long  flags,
int *  pos = NULL
)  const [inline]
 

Definition at line 605 of file MathMng.h.

References mcElement::math_Find(), and mcWRAPPER.

mcWRAPPER mcMathMngType mcMathMng::math_GetMathMngType (   )  const [inline]
 

Definition at line 574 of file MathMng.h.

References mcWRAPPER.

Referenced by mcMathAndSystemHelpers::math_GetMathSystemType().

mcWRAPPER mcIntegerValue mcMathMng::math_GetMaxDegreeFor (  const mcSymbolProperties *  p  )  const [inline]
 

Definition at line 603 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER bool mcMathMng::math_isFactorized (   )  const [inline]
 

Definition at line 611 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::math_MoveAll (  bool  toleft  )  [inline]
 

Definition at line 593 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::math_MoveConstants (  bool  toleft  )  [inline]
 

Definition at line 581 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::math_MoveFreeFrom (  const mcSymbolProperties *  sym,
bool  toleft
)  [inline]
 

Definition at line 591 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::math_MoveNonSymbol (  bool  toleft  )  [inline]
 

Definition at line 587 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::math_MoveParameters (  bool  toleft  )  [inline]
 

Definition at line 583 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::math_MoveSymbol (  const mcSymbolProperties *  sym,
bool  toleft
)  [inline]
 

Definition at line 589 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::math_MoveUnknowns (  bool  toleft  )  [inline]
 

Definition at line 585 of file MathMng.h.

References mcWRAPPER.

mcWRAPPER void mcMathMng::math_SetMathType (  mcMathMngType  t  )  [inline]
 

Definition at line 608 of file MathMng.h.

References mcWRAPPER.

Referenced by data_Init().

mcWRAPPER mcExpSimRes mcMathMng::math_Simplify (  long  flags,
long  rflags
)  [inline]
 

Definition at line 576 of file MathMng.h.

References mcElementArray::math_Simplify(), and mcWRAPPER.

mcMathMng::mcDEFINE_MAIN_CLASS (  MathMng  ,
mcElement 
)  [private]
 


The documentation for this class was generated from the following file:

Documentation generated with Doxygen on Sun Feb 6 17:12:47 2005
Visit MathStudio home page for more info

[ Top ]