* Bug 15599 fixed: now degree of zero polynomial is -Inf
[scilab.git] / scilab / modules / ast / includes / ast / expHistory.hxx
index 92da592..fd9b925 100644 (file)
@@ -2,11 +2,14 @@
  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  *  Copyright (C) 2014 - Scilab Enterpprises - Cedric Delamarre
  *
- *  This file must be used under the terms of the CeCILL.
- *  This source file is licensed as described in the file COPYING, which
- *  you should have received as part of this distribution.  The terms
- *  are also available at
- *  http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ * Copyright (C) 2012 - 2016 - Scilab Enterprises
+ *
+ * This file is hereby licensed under the terms of the GNU GPL v2.0,
+ * pursuant to article 5.3.4 of the CeCILL v.2.1.
+ * This file was originally licensed under the terms of the CeCILL v2.1,
+ * and continues to be available under such terms.
+ * For more information, see the COPYING file which you should have received
+ * along with this program.
  *
  */
 
@@ -43,16 +46,18 @@ public :
     void                    computeArgs();
     bool                    needResize();
     void                    setArgsOwner(bool);
+    void                    setExpOwner(bool);
 
     // current InternalType a
     bool                    setCurrent(types::InternalType*);
     types::InternalType*    getCurrent();
+    void                    setDeleteCurrent(bool bDelete); // false by default
 
     // parent of me
     ExpHistory*             getParent();
 
     // use to know if we have to reinsert current in there parent and where
-    void                    setReinsertion();
+    void                    setReinsertion(bool bForce = false);
     void                    resetReinsertion();
     bool                    reinsertMe();
     int                     getWhereReinsert();
@@ -72,18 +77,18 @@ private :
 
     types::typed_list*      m_pArgs;
     int*                    m_piArgsDimsArray;
-    int                     m_iArgsDims;
-
     ast::SimpleVar*         m_pExp;
     ExpHistory*             m_pParent;
     types::InternalType*    m_pITCurrent;
-
     bool                    m_bReinsertMe;
+    bool                    m_bCellExp;
+    int                     m_iArgsDims;
     int                     m_iWhere;
     int                     m_iLevel;
-
-    bool                    m_bCellExp;
     bool                    m_pArgsOwner;
+    bool                    m_pExpOwner;
+    bool                    m_bDeleteCurrent;
+
 };
 
 #endif /* __EXPHISTORY_HXX__ */