diff --git a/pub/CMakeLists.txt.user b/pub/CMakeLists.txt.user index 8354d60d7c07f946927c78bdf59b503687572a0f..e3aa3eb2e5decfa96a4eca12dd78e211c24b25af 100644 --- a/pub/CMakeLists.txt.user +++ b/pub/CMakeLists.txt.user @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE QtCreatorProject> -<!-- Written by QtCreator 3.2.1, 2014-12-17T18:17:17. --> +<!-- Written by QtCreator 3.2.1, 2014-12-17T18:33:19. --> <qtcreator> <data> <variable>EnvironmentId</variable> - <value type="QByteArray">{17e008da-cc04-4249-8ce9-740ec6318e9c}</value> + <value type="QByteArray">{107b79ba-edad-4d3e-98c2-a148eca4fa0a}</value> </data> <data> <variable>ProjectExplorer.Project.ActiveTarget</variable> @@ -60,7 +60,7 @@ <valuemap type="QVariantMap"> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value> - <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{f94293ca-69a5-4eca-bd40-efd600923fca}</value> + <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{5c746291-c845-4b80-bf79-1457c8b5295f}</value> <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value> <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value> <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value> @@ -69,8 +69,10 @@ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/G/f2/pub/qtbuild</value> <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> - <value type="QString" key="CMakeProjectManager.MakeStep.AdditionalArguments">-j7</value> - <valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets"/> + <value type="QString" key="CMakeProjectManager.MakeStep.AdditionalArguments">-j4</value> + <valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets"> + <value type="QString">all</value> + </valuelist> <value type="bool" key="CMakeProjectManager.MakeStep.Clean">false</value> <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> diff --git a/pub/lib/calc.cpp b/pub/lib/calc.cpp index 33b999d264cdd04f31137993ed210fe6ff8a813a..3aa7da7a097dde437bce447a52248b49f23342da 100644 --- a/pub/lib/calc.cpp +++ b/pub/lib/calc.cpp @@ -5,7 +5,7 @@ //**************************************************************************// //! \file calc.cpp -//! \brief NCalc::Calculator: the command-line pocket calculator +//! \brief NCalc::Calculator: the command-line pocket calculator. #include <memory> #include <string> @@ -20,9 +20,11 @@ using namespace std; #include "reg.hpp" #include "expr.hpp" #include "calc.hpp" - #include "xax_lex.hpp" + +//! Evaluates one expression and displays result. + void NCalc::Calculator( string s ) { // cout << "computing '" << s << "'\n"; @@ -51,4 +53,3 @@ void NCalc::Calculator( string s ) } NReg::lastresult = ret; } - diff --git a/pub/lib/calc.hpp b/pub/lib/calc.hpp index be2d13636993d6cfcdd4b402bc87566f661c2b9b..d7ce049a74984319dcdf07fcb290cc9a124639dd 100644 --- a/pub/lib/calc.hpp +++ b/pub/lib/calc.hpp @@ -5,11 +5,11 @@ //***************************************************************************// //! \file calc.hpp -//! \brief NCalc::Calculator: the command-line pocket calculator +//! \brief NCalc::Calculator: the command-line pocket calculator. + //! Command-line pocket calculator. namespace NCalc { void Calculator( string expr ); } - diff --git a/pub/lib/commands.cpp b/pub/lib/commands.cpp index 36429383d5baa1694fa7de70b03c9433d788fd66..6cad84b410f93b41f8e6c03e7ea81e2259a944ff 100644 --- a/pub/lib/commands.cpp +++ b/pub/lib/commands.cpp @@ -5,7 +5,7 @@ //**************************************************************************// //! \file commands.cpp -//! \brief fridaCommand: main level commands +//! \brief Function fridaCommand: executes one main-level command. #include <cstring> @@ -39,7 +39,7 @@ #include "special.hpp" -//! Try interpreting cmd as a Frida command. +//! Executes cmd if is a Frida command, and returns true when successful. bool fridaCommand( string cmd ) { @@ -594,4 +594,3 @@ bool fridaCommand( string cmd ) return true; } - diff --git a/pub/lib/commands.hpp b/pub/lib/commands.hpp index 3f14feaa6666ff5926b0a60fbb6407c0eeb135c8..0a3563459f8dbe12ac66fba68ed5d03abb06fdc0 100644 --- a/pub/lib/commands.hpp +++ b/pub/lib/commands.hpp @@ -5,7 +5,6 @@ //**************************************************************************// //! \file commands.hpp -//! \brief fridaCommand: main level commands +//! \brief Function fridaCommand: executes one main-level command. bool fridaCommand( string cmd ); - diff --git a/pub/lib/curve.cpp b/pub/lib/curve.cpp index cdb9ade11353a749b278a1ed74d5d97723052aa2..245849409318ff457ddde41936e188694db92172 100644 --- a/pub/lib/curve.cpp +++ b/pub/lib/curve.cpp @@ -25,11 +25,13 @@ using boost::format; + //****************************************************************************// //* Create curve file *// //****************************************************************************// -//! Create curve files for given data files. + +//! Queries defining function, and creates curve files for given data files. void NCurveFile::createFitcurve() { @@ -60,7 +62,8 @@ void NCurveFile::createFitcurve() } } -//! Create one curve file, refering to no data file. + +//! Queries defining function, and creates one curve file, refering to no data. void NCurveFile::createFreecurve() { @@ -82,11 +85,13 @@ void NCurveFile::createFreecurve() NOlm::mem_store( fout ); } + //****************************************************************************// //* Modify curve file *// //****************************************************************************// -//! Modify the defining function expression. + +//! Queries and sets defining function expression. void NCurveFile::changeExpr() { @@ -114,7 +119,8 @@ void NCurveFile::changeExpr() } } -//! Set data file or convolution file. + +//! Queries and sets data file or convolution file reference. void NCurveFile::setFileReference( const string& which ) // which = "d" set data file @@ -165,7 +171,8 @@ void NCurveFile::setFileReference( const string& which ) } } -//! Fix or unfix curve parameters. + +//! Queries parameters to Fix or unfix. void NCurveFile::setFixed( bool fix ) { @@ -188,7 +195,8 @@ void NCurveFile::setFixed( bool fix ) } } -//! Set fit range restrictions. + +//! Queries and sets fit range restrictions. void NCurveFile::changeRange() { @@ -208,7 +216,8 @@ void NCurveFile::changeRange() } } -//! Set auxiliary parameters (weighing, plot grid). + +//! Sets switches as given through command string. void NCurveFile::setProperties( string which ) { @@ -234,11 +243,13 @@ void NCurveFile::setProperties( string which ) } } + //****************************************************************************// //* Parameter operations *// //****************************************************************************// -//! For each curve file, query new values for all parameters. + +//! For each curve file, queries new values for all parameters. void NCurveFile::ParsLoop() { @@ -250,7 +261,7 @@ void NCurveFile::ParsLoop() } -//! Take absolute values of certain parameters. +//! Queries parameters to set to absolute values. void NCurveFile::ParsAbs() { @@ -271,7 +282,7 @@ void NCurveFile::ParsAbs() } } -//! Copy parameters from another curve. +//! Queries parameters to copy from another curve. void NCurveFile::ParsCopy() { @@ -306,7 +317,7 @@ void NCurveFile::ParsCopy() } } -//! Display parameter list for set of online curves. +//! Displays parameter list. void NCurveFile::showPar() { @@ -315,7 +326,7 @@ void NCurveFile::showPar() cout << fin->pInfoCat(); } -//! Lookup data file and spectrum to be used as resolution. +//! Sets resolution file reference *sv, *kv, *jv. void NCurveFile::getConv( PSpec *sv, int *kv, int *jv, int k, int j ) { @@ -340,4 +351,3 @@ void NCurveFile::getConv( PSpec *sv, int *kv, int *jv, int k, int j ) S(*kv) + ": number of spectra does not match"; *sv = fv->VS(*jv); } - diff --git a/pub/lib/curve.hpp b/pub/lib/curve.hpp index ed71fd68de57d25224db3cc245f1ce62fc881c5f..b3e250d654fd2458ee3d48e912dd05f244f4ee2e 100644 --- a/pub/lib/curve.hpp +++ b/pub/lib/curve.hpp @@ -5,9 +5,10 @@ //***************************************************************************// //! \file curve.hpp -//! \brief NCurveFile: create, inspect, modify curve files. +//! \brief NCurveFile: Methods to create, inspect, modify curve files. -//! Create, inspect, modify curve files. + +//! Methods to create, inspect, modify curve files. namespace NCurveFile { @@ -27,4 +28,3 @@ namespace NCurveFile { void getConv( PSpec *sv, int *kv, int *jv, int k, int j ); } - diff --git a/pub/lib/dualplot.cpp b/pub/lib/dualplot.cpp index 1236a9e000738295f472650d5dda831006391438..7efaf8f412614fe03062aeccb663eff9951e9b4a 100644 --- a/pub/lib/dualplot.cpp +++ b/pub/lib/dualplot.cpp @@ -5,7 +5,7 @@ //***************************************************************************// //! \file dualplot.cpp -//! \brief collection NPlot of plot frames CPlot +//! \brief Collection NPlot of plot frames CPlot. #include <cstdio> #include <cmath> diff --git a/pub/lib/dualplot.hpp b/pub/lib/dualplot.hpp index e97dac5ef6bd1c286cd69dd316e3d69beb54ecb0..7b77fcb6d4aa286f57a69dbb506dfc0bf4a21321 100644 --- a/pub/lib/dualplot.hpp +++ b/pub/lib/dualplot.hpp @@ -5,22 +5,24 @@ //***************************************************************************// //! \file dualplot.hpp -//! \brief collection NPlot of plot frames CPlot +//! \brief Collection NPlot of plot frames CPlot. #include "axis.hpp" -//! One plot window. + +//! One plot frame. class CPlot { public: - int iPlot; ///< The index of this window in NPloWin::Plots. - CAxis X, Y; + int iPlot; //!< The index of this frame in NPloWin::Plots. + CAxis X; //!< Limits, log flag &c for x axis. + CAxis Y; //!< Limits, log flag &c for y axis. // For data plotting: - int maxpoints; - bool with_errors; + int maxpoints; //!< Maximum # points to be plotted without reduction. + bool with_errors; //!< Plot error bars? // For curve plotting: - int equipoints; - bool refine; + int equipoints; //!< Start curve plot with this # grid points. + bool refine; //!< Refine curve plot when appropriate? CPlot( int _iPlot, bool _logx, bool _logy ); @@ -46,28 +48,29 @@ class CPlot { string info() const; private: - int gp_fifo; - int gp_fno; - string gp_fnames; + // TODO: some of this could be made local static, if class instances + // are created anew instead of calling clearFrame(). + int gp_fifo; //!< Pipe to Gnuplot. + int gp_fno; //!< Number of Gnuplot input file. + string gp_fnames; //!< List of currently plotted Gnuplot input file names. - int ps_fnum; // file - int ps_snum; // spectrum - int ps_pnum; // spectrum with pstyle - int ps_cnum; // spectrum with cstyle + int ps_fnum; //!< Postscript output file number. + int ps_snum; //!< Slice number in Postscript file. + int ps_pnum; //!< Spectrum number, for setting pstyle. + int ps_cnum; //!< Curve number, for setting cstyle. void ps_ticktack( const vector<double>& Tacks, int ntpt, const double *ticklim, const CAxis *A ); - vector<string> ps_Doc; - vector<string> ps_accu; // future output is accumulated here + vector<string> ps_accu; //!< Main Postscript cache. + vector<string> ps_Doc; //!< Special Postscript cache for doc lines ?. }; //! Direct access to plot windows collection. namespace NPloWin { - extern vector<CPlot*> Plots; ///< This vector holds all plot windows. - extern int nPlot; ///< Must be kept equal to Plots.size(). - extern int iPlot; ///< Index of currently active plot window. + extern vector<CPlot*> Plots; //!< This vector holds all plot windows. + extern int nPlot; //!< Must be kept equal to Plots.size(). + extern int iPlot; //!< Index of currently active plot window. void initialize(); } - diff --git a/pub/lib/edif.hpp b/pub/lib/edif.hpp index 16ccf0e25141c27bc18138d322ffce2afcfb6c2b..65e30a1e2c39264526a152e2af344bf3e6be5f21 100644 --- a/pub/lib/edif.hpp +++ b/pub/lib/edif.hpp @@ -5,9 +5,10 @@ //***************************************************************************// //! \file edif.hpp -//! \brief NEdif: inspect and edit data and metadata +//! \brief NEdif: Methods to inspect and edit data and metadata. -//! Inspect and edit data and metadata. + +//! Methods to inspect and edit data and metadata. namespace NEdif { void showFiles(); @@ -21,4 +22,3 @@ namespace NEdif { void editDoc(); void delNumpar(); } - diff --git a/pub/lib/expr.hpp b/pub/lib/expr.hpp index a1d0a8d7788916f79878973b8efddafe3a9778d8..857de1d2b6b0a672d2d080bd8f9b0a5e27b16b89 100644 --- a/pub/lib/expr.hpp +++ b/pub/lib/expr.hpp @@ -5,7 +5,7 @@ //***************************************************************************// //! \file expr.hpp -//! \brief Expressions are parsed into CRef, CContext, CResult, virtual CNode +//! \brief Expressions are parsed into CRef, CContext, CResult, virtual CNode. #include <boost/shared_ptr.hpp> diff --git a/pub/lib/file_in.hpp b/pub/lib/file_in.hpp index 4a45b0f79fb18d4c6f8b8ad5e06a9dc63884daca..e0b0f3e7912c92980cbfe744173b33102f6838c5 100644 --- a/pub/lib/file_in.hpp +++ b/pub/lib/file_in.hpp @@ -7,9 +7,9 @@ //! \file file_in.hpp //! \brief NFileIn: load files -//! Load files. With support for various old formats. + +//! Method to load files, with support for various old formats. namespace NFileIn { void load(void); } - diff --git a/pub/lib/file_out.hpp b/pub/lib/file_out.hpp index d6de264d53c850eec43b84ded206ecc066a044a2..49ad87f8bcb520c33c12dac1226a2057e6d12f18 100644 --- a/pub/lib/file_out.hpp +++ b/pub/lib/file_out.hpp @@ -7,9 +7,9 @@ //! \file file_out.hpp //! \brief NFileOut: Save files -//! Save files. + +//! Method to save files. namespace NFileOut { void save( string fmt, bool allow_overwrite=false ); } - diff --git a/pub/lib/fit.hpp b/pub/lib/fit.hpp index 4383988237fc22454cad9c00286ba2288f8ca125..385f84237892b9515ce672d826746a9a7f2c8026 100644 --- a/pub/lib/fit.hpp +++ b/pub/lib/fit.hpp @@ -7,10 +7,10 @@ //! \file fit.hpp //! \brief NCurveFit: fit a curve file to a data file -//! Fit a curve file to a data file. + +//! Methods related to fitting. namespace NCurveFit { void setFitTuningPars( string which ); void fit( bool _allow_slow_conv ); } - diff --git a/pub/lib/geni.cpp b/pub/lib/geni.cpp index 3fd9be8abd0811d116aab6a6874dd9e0b2f1fcc2..05e2df6e5aa69f33e6db69ad98d56099a45fcb79 100644 --- a/pub/lib/geni.cpp +++ b/pub/lib/geni.cpp @@ -243,14 +243,14 @@ namespace NGeni { // internals: vector<const CGeni*> glist; // sorted array, for help text } -CGeni::CGeni( string _txt, int _narg, string _def, +CGeni::CGeni( string _name, int _narg, string _def, geni_eval _eval, string _com ) - : txt(_txt), narg(_narg), eval(_eval), com(_com) + : name(_name), narg(_narg), eval(_eval), com(_com) { vector<string> def_expr; triv::split( _def, def_expr, "," ); if ( def_expr.size()!=narg ) - throw "BUG: invalid default "+_def+" for CGeni "+txt; + throw "BUG: invalid default "+_def+" for CGeni "+name; def_arg.resize(narg); for ( int iarg=0; iarg<narg; ++iarg ) def_arg[iarg] = user_xaxparse( def_expr[iarg].c_str() ); @@ -264,7 +264,7 @@ const CGeni* NGeni::find( string key ) void CGeni::register_me() const { - NGeni::gmap.insert( make_pair( txt, this ) ); + NGeni::gmap.insert( make_pair( name, this ) ); NGeni::glist.push_back( this ); } @@ -272,7 +272,7 @@ void NGeni::display_genis() { cout << "Generalized integrals:\n"; for( auto g = glist.begin(); g!=glist.end(); ++g ) { - string s1 = (*g)->txt + "(a"; + string s1 = (*g)->name + "(a"; if( (*g)->narg>1 ) s1 += ",b"; s1 += ")"; diff --git a/pub/lib/geni.hpp b/pub/lib/geni.hpp index af741e7bfbfcb936acc4f0c8e42f311bd3638aa4..2b0dff2af29db3d170e855485db7d031836f073d 100644 --- a/pub/lib/geni.hpp +++ b/pub/lib/geni.hpp @@ -5,19 +5,22 @@ //***************************************************************************// //! \file geni.hpp -//! \brief collection NGeni of generalized integral wrappers CGeni +//! \brief Collection NGeni of generalized integral wrappers CGeni. + typedef boost::shared_ptr<class CResult> PResult; + //! Function type: Evaluate generalized integral for given vector(s). typedef void (*geni_eval) (double*, double*, int, const vector<PResult>& ); + //! A wrapper holding a functional. class CGeni { public: - string txt; + string name; int narg; geni_eval eval; string com; @@ -29,6 +32,7 @@ class CGeni { void register_me() const; }; + //! Collection of function wrappers CFunc namespace NGeni { // public (short) interface diff --git a/pub/lib/node.cpp b/pub/lib/node.cpp index f394f708aa98a770227d70c40d7f056155bf5461..877116b846b3c41be9862c142bc1a2445f111136 100644 --- a/pub/lib/node.cpp +++ b/pub/lib/node.cpp @@ -208,6 +208,8 @@ void CNodeFun::set_coord( CCoord& ret, int k ) const { ret = fu->coord( r+0, r+1, r+2 ); } +//! Returns string representation of this node. + string CNodeFun::tree_info() const { string ret = fun->txt + "("; @@ -234,7 +236,7 @@ CNodeGeni::CNodeGeni( const class CGeni *_geni, PNode _a0 ) : narg(1), geni(_geni) { if ( geni->narg!=1 ) - throw "syntax error: generalized integral '" + geni->txt + "' needs " + + throw "syntax error: generalized integral '" + geni->name + "' needs " + S(geni->narg) + " arguments, not 1"; arg.resize(narg); arg[0] = _a0; @@ -244,7 +246,7 @@ CNodeGeni::CNodeGeni( const class CGeni *_geni, PNode _a0, PNode _a1 ) : narg(2), geni(_geni) { if ( geni->narg!=2 ) - throw "syntax error: generalized integral '" + geni->txt + "' needs " + + throw "syntax error: generalized integral '" + geni->name + "' needs " + S(geni->narg) + " arguments, not 2"; arg.resize(narg); arg[0] = _a0; @@ -332,9 +334,12 @@ void CNodeGeni::set_coord( CCoord& ret, int k ) const { //* ret = fu->coord( r+0, r+1, r+2 ); } + +//! Returns string representation of this node. + string CNodeGeni::tree_info() const { - string ret = geni->txt+"(..)"; + string ret = geni->name+"("; for ( int iarg=0; iarg<narg; ++iarg ) ret += arg[iarg]->tree_info() + (iarg<narg-1 ? "," : ")" ); return ret; @@ -435,6 +440,8 @@ void CNodeCvin::set_coord( CCoord& ret, int k ) const { //* ret = fu->coord( r+0, r+1, r+2 ); } +//! Returns string representation of this node. + string CNodeCvin::tree_info() const { string ret = cvin->txt+"(..)"; @@ -719,6 +726,8 @@ void CNodeIva::set_coord( CCoord& ret, int k_in ) const } } +//! Returns string representation of this node. + string CNodeIva::tree_info() const { return "ref[" + var->var_info() + "]";