Index: trunk/SophyaLib/Manual/modulessophya_depend.txt
===================================================================
--- trunk/SophyaLib/Manual/modulessophya_depend.txt	(revision 2548)
+++ trunk/SophyaLib/Manual/modulessophya_depend.txt	(revision 2548)
@@ -0,0 +1,64 @@
+
+
+Base CVS Sophya:  
+/exp/eros/CVSPlanck/ 
+                   /SophyaLib/  
+                   /SophyaExt/   (modules avec dependences en lib-externes)
+                   /SophyaProg/  (Modules avec programmes executables)
+
+                   /SophyaPI/    (librairie GUI PI et contexte piapp)
+ 
+
+Le module Mgr/ (ds SophyaLib/) contient un fichier README, les scripts
+de management de code, et les fichiers Makefile.h .slb, ...
+
+Le module de base pour le code Sophya est actuellement :
+                                    /SophyaLib/BaseTools
+
+On devrait le decouper en trois :
+       /ComDefs/  (fichiers machdefs.h pexceptions.h sophyainit.h 
+                   anydataobj.h datatype.h)
+
+       /BaseTools/ (les classes de persistence, NDataBolock<T> 
+                    MuTyV et DVList ...)
+                    
+
+       /RandGen/   (generateurs aleatoire)
+
+
+Nom de Module      |   Dependances
+-----------------------------------------------------------------
+Comdefs/           |       -        (module ComDefs n'existe pas encore)
+BaseTools/         |   Comdefs/     (       "           "        "     )
+RandGen/           |   Comdefs/     (       "           "        "     )
+                   |
+SUtils/            |   Comdefs/     (actuellement BaseTools/)
+TArray/            |   BaseTools/
+SkyMap/            |   TArray/
+HiStats/           |   TArray/   + NTools/   (1)
+SkyT/              |   TArray/  NTools/
+Samba/             |   SkyMap/  NTools/
+
+NTools/            |   TArray/ + HiStats/ (?)        (2)
+
+SysTools/          |   Comdefs/     (actuellement BaseTools/)
+SysSpec/           |   Comdefs/     (3)
+
+(1) HiStats semble dependre de NTools - Je pense qu'il faut faire 
+quelque chose pour rendre HiStats independant de NTools/
+(2) NTools/ Dependences a eclaircir
+
+(3) SysSpec/ definit les fonctions manquant sur certains systemes
+(utilises actuellement sur MacOS-X / Darwin)
+
+Nom de Module      |   Dependences
+----------------------------------------------------------------------
+FitsIOServer/      |   TArray/ + SkyMap/ + HiStats/  + libcfitsio  (4)
+LinAlg/            |   TArray/  + liblapack
+IFFTW/             |   TArray/ + NTools/ + libfftw
+XAstroPack/        |   XephemAstroLib/   
+
+(4) si on a un systeme plus simple de gestion de dependances plus simple,
+FitsIOServer/ peut etre decoupe en 4 :
+FitsIOServer/ = FitsIOServer/ + FitsTArray/ + FitsSkyMap/ + FitsHiStats/
+
Index: trunk/SophyaLib/Manual/piahelp.tex
===================================================================
--- trunk/SophyaLib/Manual/piahelp.tex	(revision 2547)
+++ trunk/SophyaLib/Manual/piahelp.tex	(revision 2548)
@@ -2,4 +2,5 @@
 List of {\bf piapp} on-line Help groups: 
 \begin{itemize} 
+\item {\bf Commander }  (p. \pageref{Commander}) 
 \item {\bf CxxExecutorCmd }  (p. \pageref{CxxExecutorCmd}) 
 \item {\bf Expr. Arithmetic }  (p. \pageref{ExprZZArithmetic}) 
@@ -26,8 +27,9 @@
 \vspace{3mm} 
 \begin{tabular}{llllll}  
-Interpreter & p. \pageref{Interpreter}  & ObjectExpressions & p. \pageref{ObjectExpressions}  & PIConsole & p. \pageref{PIConsole}  \\  
+Commander & p. \pageref{Commander}  & ObjectExpressions & p. \pageref{ObjectExpressions}  & PIConsole & p. \pageref{PIConsole}  \\  
 PIDraw3DWdg & p. \pageref{PIDraw3DWdg}  & PIImage & p. \pageref{PIImage}  & PIScDrawWdg & p. \pageref{PIScDrawWdg}  \\  
 RPNEvaluator & p. \pageref{RPNEvaluator}  & Windows & p. \pageref{Windows}  & autoiniranf & p. \pageref{autoiniranf}  \\  
-exitpiapp & p. \pageref{exitpiapp}  & helpfit & p. \pageref{helpfit}  & shell execute & p. \pageref{shellZexecute}  \\  
+exitpiapp & p. \pageref{exitpiapp}  & helpfit & p. \pageref{helpfit}  & helpwindow & p. \pageref{helpwindow}  \\  
+shell execute & p. \pageref{shellZexecute}  &   &  &  &   \\  
 \end{tabular} 
 \end{center} 
@@ -35,5 +37,14 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf CxxExecutorCmd } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Commander } help group} \rule{2cm}{0.5mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+Commander & p. \pageref{Commander}  & RPNEvaluator & p. \pageref{RPNEvaluator}  & autoiniranf & p. \pageref{autoiniranf}  \\  
+shell execute & p. \pageref{shellZexecute}  &   &  &  &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf CxxExecutorCmd } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -47,5 +58,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Expr. Arithmetic } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Expr. Arithmetic } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -55,5 +66,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Expr. Plotting } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Expr. Plotting } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -68,5 +79,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf External Modules } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf External Modules } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -77,5 +88,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf FileIO } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf FileIO } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -88,5 +99,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Fitting } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Fitting } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -97,5 +108,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Func Plot } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Func Plot } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -106,5 +117,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Graphic-Elts } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Graphic-Elts } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -118,5 +129,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Graphics } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Graphics } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -133,5 +144,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Obj. Display } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Obj. Display } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -144,5 +155,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Object Management } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Object Management } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -156,5 +167,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf Objects } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Objects } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -168,14 +179,13 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf PIACmd } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf PIACmd } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
-Interpreter & p. \pageref{Interpreter}  & RPNEvaluator & p. \pageref{RPNEvaluator}  & autoiniranf & p. \pageref{autoiniranf}  \\  
-exitpiapp & p. \pageref{exitpiapp}  & shell execute & p. \pageref{shellZexecute}  &   &   \\  
+exitpiapp & p. \pageref{exitpiapp}  & helpwindow & p. \pageref{helpwindow}  &   &   \\  
 \end{tabular} 
 \end{center} 
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf SkyMapCmd } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf SkyMapCmd } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -192,5 +202,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf SophyaCmd } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf SophyaCmd } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -200,5 +210,5 @@
 \vspace{6mm} 
 \begin{center} 
- \rule{2cm}{1mm} \makebox[60mm]{{ \bf pawCmd } help group} \rule{2cm}{1mm} \\ 
+ \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf pawCmd } help group} \rule{2cm}{0.5mm} \\ 
 \vspace{3mm} 
 \begin{tabular}{llllll} 
@@ -214,4 +224,85 @@
 % ----- Liste des commandes dans chaque groupe ----- 
 \newpage 
+\subsection{Commander} \label{Commander} 
+Basic (generic) interpreter (class SOPHYA::Commander) builtin commands 
+ \\[2mm]  \noindent 
+\piahelpitem{Commander} \label{Commander} 
+\begin{verbatim} 
+>>> (Commander) Interpreter's keywords : 
+  > set varname string   # To set a variable, $varname 
+  > get newvarname varname # To set a newvariable, equal to $varname 
+  > setol varname patt     # Fills varname with object list 
+  > unset varname          # clear variable definition 
+  > rpneval varname RPNExpression # Reverse Polish Notation evaluation 
+  > varname = 'string string ...' # To set a variable, $varname  
+  > varname = RPNExpression # RPN evaluation / result -> varname 
+  > echo string            # output string 
+  > echo2file filename string # Append the string to the specified file 
+  > alias name string      # define a command alias 
+  > readstdin varname      # reads a line from stdin into $varname 
+  > foreach varname ( string-list ) # Loop 
+  > for varname i1:i2[:di]      # Integer loop  
+  > for varname f1:f2[:df]      # Float loop  
+  > end                         # end loops 
+  > if ( test ) then  # Conditional test : a == != < > <= >= b 
+  > else          # Conditional  
+  > endif         # End of conditional if bloc 
+  > break         # Delete (clears) all test and loop blocs 
+  > return        # Stops command execution from a file 
+  > defscript endscript # Command script definition 
+  > listvars      # List of variable names and values 
+  > listalias     # List of alias names and values 
+  > listcommands  # List of all known commands 
+  > listscripts   # List of all known scripts 
+  > clearcript    # Clear a script definition 
+  > exec filename # Execute commands from file 
+  > help <command_name>  # <command_name> usage info 
+  > timingon  timingoff traceon  traceoff 
+
+\end{verbatim} 
+\piahelpitem{RPNEvaluator} \label{RPNEvaluator} 
+\begin{verbatim} 
+ Reverse Polish Notation (HP calculator like) expression evaluation 
+  >> Stack: 
+     ... (4) (3) z=(2) y=(1) x=(0)=Stack.Top() 
+  >> Examples:  
+  - sin(PI/6): pi 6 / sin 
+  - 1*2*...*5: 1 2 3 4 5 product 
+  - x=x+y: x = $x $y * 
+  >>> Stack operations : 
+      print x<>y pop push (duplicate x) 
+  >>> Constants (Cst pushed to stack): 
+      pi e 
+  >>> Arithmetic operators (x,y) --> x@y 
+      + - * / % ( (int)y % (int)x )
+  >>> F(X): x --> F(x) 
+      chs sqrt sq log log10 exp  
+      fabs  floor ceil 
+      cos sin tan acos asin atan deg2rad rad2deg 
+  >>> F(X,Y): (x,y) --> F(x,y) 
+      pow atan2 
+  >>> F(): random number generators 
+      rand (flat 0..1) norand (normal/gaussian) 
+  >>> Stack sum/product/mean/sigma/sigma^2 
+      sum product mean sigma sigma2 sigmean (y->sigma x->mean) 
+
+\end{verbatim} 
+\piahelpitem{autoiniranf} \label{autoiniranf} 
+\begin{verbatim} 
+> Automatic random number generator initialisation
+   by Auto_Ini_Ranf(int lp) 
+   Usage: autoiniranf
+\end{verbatim} 
+\piahelpitem{shell execute} \label{shellZexecute} 
+\begin{verbatim} 
+> shell  command_string  # Execute  shell command
+> cshell command_string  # Execute cshell command
+---Examples:
+  > shell ls
+  > cshell echo '$LD_LIBRARY_PATH'; map2cl -h; ls
+  > shell myfile.csh [arg1] [arg2] [...]
+    (where the first line of "myfile.csh" is "#!/bin/csh")
+
+\end{verbatim} 
 \subsection{CxxExecutorCmd} \label{CxxExecutorCmd} 
 \noindent 
@@ -470,5 +561,6 @@
 \end{verbatim} 
 \subsection{External Modules} \label{ExternalZModules} 
-\noindent 
+Dynamic load (shared object modules) management command group 
+ \\[2mm]  \noindent 
 \piacommand{call} \label{call} 
 \begin{verbatim} 
@@ -917,5 +1009,6 @@
 \end{verbatim} 
 \subsection{Graphics} \label{Graphics} 
-\noindent 
+Basic graphics and object display commands 
+ \\[2mm]  \noindent 
 \piahelpitem{PIConsole} \label{PIConsole} 
 \begin{verbatim} 
@@ -1432,90 +1525,19 @@
 \end{verbatim} 
 \subsection{PIACmd} \label{PIACmd} 
-\noindent 
-\piahelpitem{Interpreter} \label{Interpreter} 
-\begin{verbatim} 
->>> (piacmd) Interpreter's keywords : 
-  > set varname string   # To set a variable, $varname 
-  > get newvarname varname # To set a newvariable, equal to $varname 
-  > setol varname patt     # Fills varname with object list 
-  > unset varname          # clear variable definition 
-  > rpneval varname RPNExpression # Reverse Polish Notation evaluation 
-  > varname = 'string string ...' # To set a variable, $varname  
-  > varname = RPNExpression # RPN evaluation / result -> varname 
-  > echo string            # output string 
-  > echo2file filename string # Append the string to the specified file 
-  > alias name string      # define a command alias 
-  > readstdin varname      # reads a line from stdin into $varname 
-  > foreach varname ( string-list ) # Loop 
-  > for varname i1:i2[:di]      # Integer loop  
-  > for varname f1:f2[:df]      # Float loop  
-  > end                         # end loops 
-  > if ( test ) then  # Conditional test : a == != < > <= >= b 
-  > else          # Conditional  
-  > endif         # End of conditional if bloc 
-  > break         # Delete (clears) all test and loop blocs 
-  > return        # Stops command execution from a file 
-  > defscript endscript # Command script definition 
-  > listvars      # List of variable names and values 
-  > listalias     # List of alias names and values 
-  > listcommands  # List of all known commands 
-  > listscripts   # List of all known scripts 
-  > clearcript    # Clear a script definition 
-  > exec filename # Execute commands from file 
-  > help <command_name>  # <command_name> usage info 
-  > helpwindow           # Displays help window 
-  > timingon  timingoff traceon  traceoff 
-
-\end{verbatim} 
-\piahelpitem{RPNEvaluator} \label{RPNEvaluator} 
-\begin{verbatim} 
- Reverse Polish Notation (HP calculator like) expression evaluation 
-  >> Stack: 
-     ... (4) (3) z=(2) y=(1) x=(0)=Stack.Top() 
-  >> Examples:  
-  - sin(PI/6): pi 6 / sin 
-  - 1*2*...*5: 1 2 3 4 5 product 
-  - x=x+y: x = $x $y * 
-  >>> Stack operations : 
-      print x<>y pop push (duplicate x) 
-  >>> Constants (Cst pushed to stack): 
-      pi e 
-  >>> Arithmetic operators (x,y) --> x@y 
-      + - * / % ( (int)y % (int)x )
-  >>> F(X): x --> F(x) 
-      chs sqrt sq log log10 exp  
-      fabs  floor ceil 
-      cos sin tan acos asin atan deg2rad rad2deg 
-  >>> F(X,Y): (x,y) --> F(x,y) 
-      pow atan2 
-  >>> F(): random number generators 
-      rand (flat 0..1) norand (normal/gaussian) 
-  >>> Stack sum/product/mean/sigma/sigma^2 
-      sum product mean sigma sigma2 sigmean (y->sigma x->mean) 
-
-\end{verbatim} 
-\piahelpitem{autoiniranf} \label{autoiniranf} 
-\begin{verbatim} 
-> Automatic random number generator initialisation
-   by Auto_Ini_Ranf(int lp) 
-   Usage: autoiniranf
-\end{verbatim} 
+piapp interpreter (class PIACmd) additional builtin commands 
+ \\[2mm]  \noindent 
 \piahelpitem{exitpiapp} \label{exitpiapp} 
 \begin{verbatim} 
-To end the piapp session (Interpreter's command)
-\end{verbatim} 
-\piahelpitem{shell execute} \label{shellZexecute} 
-\begin{verbatim} 
-> shell  command_string  # Execute  shell command
-> cshell command_string  # Execute cshell command
----Examples:
-  > shell ls
-  > cshell echo '$LD_LIBRARY_PATH'; map2cl -h; ls
-  > shell myfile.csh [arg1] [arg2] [...]
-    (where the first line of "myfile.csh" is "#!/bin/csh")
-
+To end the piapp session 
+\end{verbatim} 
+\piahelpitem{helpwindow} \label{helpwindow} 
+\begin{verbatim} 
+To display the Help window 
 \end{verbatim} 
 \subsection{SkyMapCmd} \label{SkyMapCmd} 
-\noindent 
+4 Pi spherical, local maps manipulation commands 
+and spherical harmonics analysis Ylm. 
+ This is mainly Based on SOPHYA SkyMap and Samba modules.  
+ \\[2mm]  \noindent 
 \piacommand{alm2cl} \label{alm2cl} 
 \begin{verbatim} 
