OSDN Git Service

Please enter the commit message for your changes. Lines starting v2.3.77p0323
authorTakuo Yasunaga <yasunaga@bio.kyutech.ac.jp>
Tue, 1 Jun 2021 07:51:36 +0000 (16:51 +0900)
committerTakuo Yasunaga <yasunaga@bio.kyutech.ac.jp>
Tue, 1 Jun 2021 07:51:36 +0000 (16:51 +0900)
 with '#' will be ignored, and an empty message aborts the commit.

 On branch master
 Your branch is up to date with 'origin/master'.

 Changes to be committed:
modified:   .DS_Store
new file:   bin/eosMathAverage
new file:   bin/eosMathMedian
new file:   bin/eosMathSorting
modified:   include/eosMATH.h
modified:   src/Objects/General/Makefile
new file:   src/Objects/General/eosMath/Config/Define.inc
new file:   src/Objects/General/eosMath/Config/Target.inc
new file:   src/Objects/General/eosMath/Makefile
new file:   src/Objects/General/eosMath/doc/.eosMath.html
new file:   src/Objects/General/eosMath/doc/.footer
new file:   src/Objects/General/eosMath/doc/.header
new file:   src/Objects/General/eosMath/doc/Makefile
new file:   src/Objects/General/eosMath/doc/eosMath.html
new file:   src/Objects/General/eosMath/inc/Makefile
new file:   src/Objects/General/eosMath/inc/eosMath.h
new file:   src/Objects/General/eosMath/inc/eosMath.h.org
new file:   src/Objects/General/eosMath/src/.CCHeader
new file:   src/Objects/General/eosMath/src/.CHeader
new file:   src/Objects/General/eosMath/src/.Ruby
new file:   src/Objects/General/eosMath/src/.Wish
new file:   src/Objects/General/eosMath/src/Makefile
new file:   src/Objects/General/eosMath/src/X86MAC64
new file:   src/Objects/General/eosMath/src/eosMathStatistics.c
modified:   src/Objects/Makefile
modified:   src/Tools/.Source
modified:   src/Tools/Config/Define.inc
new file:   src/Tools/eosMath/.Source.org
new file:   src/Tools/eosMath/Config/Define.inc
new file:   src/Tools/eosMath/Makefile
new file:   src/Tools/eosMath/eosMathAverage/Config/Define.inc
new file:   src/Tools/eosMath/eosMathAverage/Config/OptionControlFile
new file:   src/Tools/eosMath/eosMathAverage/Config/Target.inc
new file:   src/Tools/eosMath/eosMathAverage/Makefile
new file:   src/Tools/eosMath/eosMathAverage/doc/Makefile
new file:   src/Tools/eosMath/eosMathAverage/inc/config.h
new file:   src/Tools/eosMath/eosMathAverage/inc/eosMathAverage.h
new file:   src/Tools/eosMath/eosMathAverage/src/.Depend
new file:   src/Tools/eosMath/eosMathAverage/src/.Source
new file:   src/Tools/eosMath/eosMathAverage/src/Makefile
new file:   src/Tools/eosMath/eosMathAverage/src/X86MAC64
new file:   src/Tools/eosMath/eosMathAverage/src/argCheck.c
new file:   src/Tools/eosMath/eosMathAverage/src/eosMathAverage.c
new file:   src/Tools/eosMath/eosMathAverage/src/eosMathAverage.html
new file:   src/Tools/eosMath/eosMathAverage/src/eosMathAverage.pane
new file:   src/Tools/eosMath/eosMathAverage/src/init.c
new file:   src/Tools/eosMath/eosMathAverage/src/test/Makefile
new file:   src/Tools/eosMath/eosMathAverage/src/test/data
new file:   src/Tools/eosMath/eosMathAverage/src/usage.c
new file:   src/Tools/eosMath/eosMathAverage/src/util.c
new file:   src/Tools/eosMath/eosMathMedian/Config/Define.inc
new file:   src/Tools/eosMath/eosMathMedian/Config/OptionControlFile
new file:   src/Tools/eosMath/eosMathMedian/Config/Target.inc
new file:   src/Tools/eosMath/eosMathMedian/Makefile
new file:   src/Tools/eosMath/eosMathMedian/doc/Makefile
new file:   src/Tools/eosMath/eosMathMedian/inc/config.h
new file:   src/Tools/eosMath/eosMathMedian/inc/eosMathMedian.h
new file:   src/Tools/eosMath/eosMathMedian/src/.Depend
new file:   src/Tools/eosMath/eosMathMedian/src/.Source
new file:   src/Tools/eosMath/eosMathMedian/src/Makefile
new file:   src/Tools/eosMath/eosMathMedian/src/X86MAC64
new file:   src/Tools/eosMath/eosMathMedian/src/argCheck.c
new file:   src/Tools/eosMath/eosMathMedian/src/eosMathMedian.c
new file:   src/Tools/eosMath/eosMathMedian/src/eosMathMedian.html
new file:   src/Tools/eosMath/eosMathMedian/src/eosMathMedian.pane
new file:   src/Tools/eosMath/eosMathMedian/src/init.c
new file:   src/Tools/eosMath/eosMathMedian/src/test/Makefile
new file:   src/Tools/eosMath/eosMathMedian/src/test/data
new file:   src/Tools/eosMath/eosMathMedian/src/usage.c
new file:   src/Tools/eosMath/eosMathMedian/src/util.c
new file:   src/Tools/eosMath/eosMathSorting/Config/Define.inc
new file:   src/Tools/eosMath/eosMathSorting/Config/OptionControlFile
new file:   src/Tools/eosMath/eosMathSorting/Config/Target.inc
new file:   src/Tools/eosMath/eosMathSorting/Makefile
new file:   src/Tools/eosMath/eosMathSorting/doc/Makefile
new file:   src/Tools/eosMath/eosMathSorting/inc/config.h
new file:   src/Tools/eosMath/eosMathSorting/inc/eosMathSorting.h
new file:   src/Tools/eosMath/eosMathSorting/src/.Depend
new file:   src/Tools/eosMath/eosMathSorting/src/.Source
new file:   src/Tools/eosMath/eosMathSorting/src/Makefile
new file:   src/Tools/eosMath/eosMathSorting/src/X86MAC64
new file:   src/Tools/eosMath/eosMathSorting/src/argCheck.c
new file:   src/Tools/eosMath/eosMathSorting/src/eosMathSorting.c
new file:   src/Tools/eosMath/eosMathSorting/src/eosMathSorting.html
new file:   src/Tools/eosMath/eosMathSorting/src/eosMathSorting.pane
new file:   src/Tools/eosMath/eosMathSorting/src/init.c
new file:   src/Tools/eosMath/eosMathSorting/src/test/Makefile
new file:   src/Tools/eosMath/eosMathSorting/src/test/data
new file:   src/Tools/eosMath/eosMathSorting/src/usage.c
new file:   src/Tools/eosMath/eosMathSorting/src/util.c
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/Config/OptionControlFile
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/inc/mrcImageBackgroundSubtraction.h
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/argCheck.c
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/init.c
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/mrcImageBackgroundSubtraction.c
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/mrcImageBackgroundSubtraction.html
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/mrcImageBackgroundSubtraction.pane
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/test/Makefile
modified:   src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/usage.c

99 files changed:
.DS_Store
bin/eosMathAverage [new symlink]
bin/eosMathMedian [new symlink]
bin/eosMathSorting [new symlink]
include/eosMATH.h
src/Objects/General/Makefile [changed mode: 0755->0644]
src/Objects/General/eosMath/Config/Define.inc [new file with mode: 0755]
src/Objects/General/eosMath/Config/Target.inc [new file with mode: 0755]
src/Objects/General/eosMath/Makefile [new file with mode: 0755]
src/Objects/General/eosMath/doc/.eosMath.html [new file with mode: 0755]
src/Objects/General/eosMath/doc/.footer [new file with mode: 0755]
src/Objects/General/eosMath/doc/.header [new file with mode: 0755]
src/Objects/General/eosMath/doc/Makefile [new file with mode: 0755]
src/Objects/General/eosMath/doc/eosMath.html [new file with mode: 0644]
src/Objects/General/eosMath/inc/Makefile [new file with mode: 0755]
src/Objects/General/eosMath/inc/eosMath.h [new file with mode: 0644]
src/Objects/General/eosMath/inc/eosMath.h.org [new file with mode: 0644]
src/Objects/General/eosMath/src/.CCHeader [new file with mode: 0755]
src/Objects/General/eosMath/src/.CHeader [new file with mode: 0755]
src/Objects/General/eosMath/src/.Ruby [new file with mode: 0755]
src/Objects/General/eosMath/src/.Wish [new file with mode: 0755]
src/Objects/General/eosMath/src/Makefile [new file with mode: 0755]
src/Objects/General/eosMath/src/X86MAC64 [new symlink]
src/Objects/General/eosMath/src/eosMathStatistics.c [new file with mode: 0644]
src/Objects/Makefile [changed mode: 0755->0644]
src/Tools/.Source
src/Tools/Config/Define.inc
src/Tools/eosMath/.Source.org [new file with mode: 0644]
src/Tools/eosMath/Config/Define.inc [new file with mode: 0644]
src/Tools/eosMath/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/Config/Define.inc [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/Config/OptionControlFile [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/Config/Target.inc [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/doc/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/inc/config.h [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/inc/eosMathAverage.h [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/.Depend [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/.Source [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/X86MAC64 [new symlink]
src/Tools/eosMath/eosMathAverage/src/argCheck.c [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/eosMathAverage.c [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/eosMathAverage.html [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/eosMathAverage.pane [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/init.c [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/test/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/test/data [new symlink]
src/Tools/eosMath/eosMathAverage/src/usage.c [new file with mode: 0755]
src/Tools/eosMath/eosMathAverage/src/util.c [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/Config/Define.inc [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/Config/OptionControlFile [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/Config/Target.inc [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/doc/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/inc/config.h [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/inc/eosMathMedian.h [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/.Depend [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/.Source [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/X86MAC64 [new symlink]
src/Tools/eosMath/eosMathMedian/src/argCheck.c [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/eosMathMedian.c [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/eosMathMedian.html [new file with mode: 0644]
src/Tools/eosMath/eosMathMedian/src/eosMathMedian.pane [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/init.c [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/test/Makefile [new file with mode: 0644]
src/Tools/eosMath/eosMathMedian/src/test/data [new symlink]
src/Tools/eosMath/eosMathMedian/src/usage.c [new file with mode: 0755]
src/Tools/eosMath/eosMathMedian/src/util.c [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/Config/Define.inc [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/Config/OptionControlFile [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/Config/Target.inc [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/doc/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/inc/config.h [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/inc/eosMathSorting.h [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/.Depend [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/.Source [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/Makefile [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/X86MAC64 [new symlink]
src/Tools/eosMath/eosMathSorting/src/argCheck.c [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/eosMathSorting.c [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/eosMathSorting.html [new file with mode: 0644]
src/Tools/eosMath/eosMathSorting/src/eosMathSorting.pane [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/init.c [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/test/Makefile [new file with mode: 0644]
src/Tools/eosMath/eosMathSorting/src/test/data [new symlink]
src/Tools/eosMath/eosMathSorting/src/usage.c [new file with mode: 0755]
src/Tools/eosMath/eosMathSorting/src/util.c [new file with mode: 0755]
src/Tools/mrcImage/mrcImageBackgroundSubtraction/Config/OptionControlFile
src/Tools/mrcImage/mrcImageBackgroundSubtraction/inc/mrcImageBackgroundSubtraction.h
src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/argCheck.c
src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/init.c
src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/mrcImageBackgroundSubtraction.c
src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/mrcImageBackgroundSubtraction.html [changed mode: 0644->0755]
src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/mrcImageBackgroundSubtraction.pane
src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/test/Makefile [changed mode: 0644->0755]
src/Tools/mrcImage/mrcImageBackgroundSubtraction/src/usage.c

index da601f6..2cae705 100644 (file)
Binary files a/.DS_Store and b/.DS_Store differ
diff --git a/bin/eosMathAverage b/bin/eosMathAverage
new file mode 120000 (symlink)
index 0000000..eddb955
--- /dev/null
@@ -0,0 +1 @@
+../sbin/MachineIndependent
\ No newline at end of file
diff --git a/bin/eosMathMedian b/bin/eosMathMedian
new file mode 120000 (symlink)
index 0000000..eddb955
--- /dev/null
@@ -0,0 +1 @@
+../sbin/MachineIndependent
\ No newline at end of file
diff --git a/bin/eosMathSorting b/bin/eosMathSorting
new file mode 120000 (symlink)
index 0000000..eddb955
--- /dev/null
@@ -0,0 +1 @@
+../sbin/MachineIndependent
\ No newline at end of file
index 7e57de9..a5fc919 100644 (file)
@@ -9,8 +9,8 @@
 #
 */
 /* $Log$ */
-#ifndef EOS_MATH_H 
-#define EOS_MATH_H 
+#ifndef EOS_MATH_H
+#define EOS_MATH_H
 
 #include <stdio.h>
 
@@ -29,7 +29,13 @@ extern "C" {
 #endif
 
 /* prototype begin */
-double eosBeseel_I(double x, int n);
+
+extern void eosMathSorting(double* v, int n);
+extern double eosMathMedian(double* v, int n);
+extern double eosMathAverage(double* v, int n);
+extern double eosMathStdDev(double* v, int n);
+extern double eosMathTrimmedAverage(double* v, int n, double trim);
+extern double eosMathHodgesLehmannEstimator(double* v, int n);
 
 
 /* prototype end */
@@ -38,4 +44,4 @@ double eosBeseel_I(double x, int n);
 };
 #endif
 
-#endif  /* XXXX */ 
+#endif  /* EOS_MATH_H */ 
old mode 100755 (executable)
new mode 100644 (file)
diff --git a/src/Objects/General/eosMath/Config/Define.inc b/src/Objects/General/eosMath/Config/Define.inc
new file mode 100755 (executable)
index 0000000..256d0c2
--- /dev/null
@@ -0,0 +1,3 @@
+OBJECTNAME = eosMath
+EXTRA_INC =
+EXTRA_CCOPTS =
diff --git a/src/Objects/General/eosMath/Config/Target.inc b/src/Objects/General/eosMath/Config/Target.inc
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Objects/General/eosMath/Makefile b/src/Objects/General/eosMath/Makefile
new file mode 100755 (executable)
index 0000000..75b467d
--- /dev/null
@@ -0,0 +1,132 @@
+include ../../../Config/Define.inc
+include ../../Config/Define.inc
+include ../Config/Define.inc
+include Config/Define.inc
+
+DIRS = src inc doc
+
+all:
+       for dir in ${DIRS} ; \
+       do \
+               $(CD) $${dir}; $(MAKE) all; $(CD) ..; \
+       done
+
+install:
+       for dir in ${DIRS}; \
+       do \
+               ${CD} $${dir} ; $(MAKE) install; $(CD) ..; \
+       done
+
+debug:
+       for dir in ${DIRS} ; \
+       do \
+               $(CD) $${dir}; $(MAKE) debug; $(CD) ..; \
+       done
+
+install-debug:
+       for dir in ${DIRS}; \
+       do \
+               ${CD} $${dir} ; $(MAKE) install-debug; $(CD) ..; \
+       done
+
+clean:
+       for dir in ${DIRS} ; \
+       do \
+               $(CD) $${dir}; $(MAKE) clean; $(CD) ..; \
+       done
+
+depend:
+       for dir in ${DIRS} ; \
+       do \
+               $(CD) $${dir}; $(MAKE) depend; $(CD) ..; \
+       done
+
+put:
+       for dir in ${DIRS} ; \
+       do \
+               $(CD) $${dir}; $(MAKE) put; $(CD) ..; \
+       done
+
+check:
+       @cd src; \
+       if [ ! -d $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) ] ; then \
+                echo making directory; \
+                mkdir -p $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE); \
+        fi 
+       ln -sf ../../../../../hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) src/$(OSTYPE); 
+       @$(RM) -f src/Makefile
+       @$(RM) -f inc/Makefile
+       @$(RM) -f doc/Makefile
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/src/Makefile src/Makefile
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/inc/Makefile inc/Makefile
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/doc/Makefile doc/Makefile
+       @rm -f src/.Depend src/.Source
+       @touch src/$(OSTYPE)/.Depend
+       @touch src/$(OSTYPE)/.Source
+       @touch src/.CCHeader
+       @touch src/.CHeader
+       @touch src/.Wish
+       @touch src/.Ruby
+       @cd inc; make install
+       @cd src; make install-ascii
+
+#
+# CVS
+#
+cvsupdate:: 
+       cvs -d $(EOS_CVSROOT) update -d   
+
+cvscommit::
+       cvs -d $(EOS_CVSROOT) commit -R
+
+#
+# Backup
+#
+backup:
+       @cd ../../../.. ; \
+       echo $(OBJECTNAME) ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]*;  \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.*; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*
+
+backup-all:
+       @cd ../../../.. ; \
+       echo $(OBJECTNAME) ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]*;  \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.*; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*
+
+#
+# Distribution
+#
+distribute:
+       @cd ../../../.. ; \
+       echo $(OBJECTNAME) ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]*;  \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.*; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]* ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) 
+
+distribute-all:
+       @cd ../../../.. ; \
+       echo $(OBJECTNAME) ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]*;  \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.*; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]* ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) 
+
+include Config/Target.inc
+
diff --git a/src/Objects/General/eosMath/doc/.eosMath.html b/src/Objects/General/eosMath/doc/.eosMath.html
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Objects/General/eosMath/doc/.footer b/src/Objects/General/eosMath/doc/.footer
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Objects/General/eosMath/doc/.header b/src/Objects/General/eosMath/doc/.header
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Objects/General/eosMath/doc/Makefile b/src/Objects/General/eosMath/doc/Makefile
new file mode 100755 (executable)
index 0000000..11b3c90
--- /dev/null
@@ -0,0 +1,41 @@
+include ../../../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../Config/Define.inc
+include ../Config/Define.inc
+
+SOURCEDOC  = $(OBJECTNAME).html
+DOCDSTDIR  = $(EOS_HOME)/doc/Objects
+TARGETDOC  = $(DOCDSTDIR)/$(SOURCEDOC)
+
+all: $(SOURCEDOC)
+
+install : $(TARGETDOC) 
+
+$(TARGETDOC):$(SOURCEDOC)
+       $(INSTALL) -m 444 *.html $(DOCDSTDIR)
+       @cd $(DOCDSTDIR); make
+
+$(SOURCEDOC) : .$(SOURCEDOC) .header .footer ../inc/$(OBJECTNAME).h Makefile ../src/*.c
+       @echo Creating $(OBJECTNAME).html
+       @cat .header                             > $(SOURCEDOC)
+       @#htmlUpdateTime                        >> $(SOURCEDOC)
+       @cat .$(SOURCEDOC)                      >> $(SOURCEDOC)
+       @echo \<HR\>                            >> $(SOURCEDOC)
+       @echo "<A NAME=\"Information\">" >> $(SOURCEDOC)
+       @echo "<H2>Information from source codes</H2>" >> $(SOURCEDOC)
+       @echo "</A>"               >> $(SOURCEDOC)
+       @echo "<PRE>"               >> $(SOURCEDOC)
+       -@ident ../src/*.c                      >> $(SOURCEDOC)
+       @echo "</PRE>"              >> $(SOURCEDOC)
+       @echo \<HR\>                            >> $(SOURCEDOC)
+       @echo \<A NAME=\"include\"\>>> $(SOURCEDOC)
+       @echo "<H2>$(OBJECTNAME).h</H2>">> $(SOURCEDOC)
+       @echo \</A\>                            >>$(SOURCEDOC)
+       @echo \<PRE\>                           >> $(SOURCEDOC)
+       @cat ../inc/$(OBJECTNAME).h >> $(SOURCEDOC)
+       @echo \</PRE\>                          >> $(SOURCEDOC) 
+       @cat .footer                            >> $(SOURCEDOC)
+
+clean:
+
+depend:
diff --git a/src/Objects/General/eosMath/doc/eosMath.html b/src/Objects/General/eosMath/doc/eosMath.html
new file mode 100644 (file)
index 0000000..f815c3a
--- /dev/null
@@ -0,0 +1,59 @@
+<HR>
+<A NAME="Information">
+<H2>Information from source codes</H2>
+</A>
+<PRE>
+</PRE>
+<HR>
+<A NAME="include">
+<H2>eosMath.h</H2>
+</A>
+<PRE>
+/*
+# eosMath.h : $Revision$  
+# $Date$ 
+# Created by $Author$
+# Usage : eosMath.h 
+# Attention
+#   $Loccker$
+#      $State$ 
+#
+*/
+/* $Log$ */
+#ifndef EOS_MATH_H
+#define EOS_MATH_H
+
+#include <stdio.h>
+
+/* constant begin */
+
+
+/* constant end */
+
+/* struct begin */
+
+
+/* struct end */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* prototype begin */
+
+extern void eosMathSorting(double* v, int n);
+extern double eosMathMedian(double* v, int n);
+extern double eosMathAverage(double* v, int n);
+extern double eosMathStdDev(double* v, int n);
+extern double eosMathTrimmedAverage(double* v, int n, double trim);
+extern double eosMathHodgesLehmannEstimator(double* v, int n);
+
+
+/* prototype end */
+
+#ifdef __cplusplus
+};
+#endif
+
+#endif  /* EOS_MATH_H */ 
+</PRE>
diff --git a/src/Objects/General/eosMath/inc/Makefile b/src/Objects/General/eosMath/inc/Makefile
new file mode 100755 (executable)
index 0000000..e1bd97e
--- /dev/null
@@ -0,0 +1,31 @@
+include ../../../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../Config/Define.inc
+include ../Config/Define.inc
+
+INCFILE = $(OBJECTNAME).h
+
+all: 
+
+install:$(EOS_HOME)/include/$(INCFILE)
+
+$(EOS_HOME)/include/$(INCFILE):$(INCFILE)
+       if [ ! -d  $(EOS_HOME)/include ] ; then \
+               mkdir $(EOS_HOME)/include ; \
+       fi
+       $(INSTALL) -m 444 $(INCFILE) $(EOS_HOME)/include/
+
+clean:
+       $(RM) -f *.bak
+
+depend:
+       $(RM) -f *.bak  
+
+cvsupdate::
+       cvs -d $(EOS_CVSROOT) update 
+
+cvscommit::
+       @echo "cvs -d $(EOS_CVSROOT) commit"  
+
+cvsadd::
+       @echo "cvs -d $(EOS_CVSROOT) add"  
diff --git a/src/Objects/General/eosMath/inc/eosMath.h b/src/Objects/General/eosMath/inc/eosMath.h
new file mode 100644 (file)
index 0000000..a5fc919
--- /dev/null
@@ -0,0 +1,47 @@
+/*
+# eosMath.h : $Revision$  
+# $Date$ 
+# Created by $Author$
+# Usage : eosMath.h 
+# Attention
+#   $Loccker$
+#      $State$ 
+#
+*/
+/* $Log$ */
+#ifndef EOS_MATH_H
+#define EOS_MATH_H
+
+#include <stdio.h>
+
+/* constant begin */
+
+
+/* constant end */
+
+/* struct begin */
+
+
+/* struct end */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* prototype begin */
+
+extern void eosMathSorting(double* v, int n);
+extern double eosMathMedian(double* v, int n);
+extern double eosMathAverage(double* v, int n);
+extern double eosMathStdDev(double* v, int n);
+extern double eosMathTrimmedAverage(double* v, int n, double trim);
+extern double eosMathHodgesLehmannEstimator(double* v, int n);
+
+
+/* prototype end */
+
+#ifdef __cplusplus
+};
+#endif
+
+#endif  /* EOS_MATH_H */ 
diff --git a/src/Objects/General/eosMath/inc/eosMath.h.org b/src/Objects/General/eosMath/inc/eosMath.h.org
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/src/Objects/General/eosMath/src/.CCHeader b/src/Objects/General/eosMath/src/.CCHeader
new file mode 100755 (executable)
index 0000000..73e038f
--- /dev/null
@@ -0,0 +1,2 @@
+CCHeader = \
+
diff --git a/src/Objects/General/eosMath/src/.CHeader b/src/Objects/General/eosMath/src/.CHeader
new file mode 100755 (executable)
index 0000000..35bb91e
--- /dev/null
@@ -0,0 +1,2 @@
+CHeader = \
+
diff --git a/src/Objects/General/eosMath/src/.Ruby b/src/Objects/General/eosMath/src/.Ruby
new file mode 100755 (executable)
index 0000000..02cfa9b
--- /dev/null
@@ -0,0 +1,2 @@
+Ruby = \
+
diff --git a/src/Objects/General/eosMath/src/.Wish b/src/Objects/General/eosMath/src/.Wish
new file mode 100755 (executable)
index 0000000..ee878ff
--- /dev/null
@@ -0,0 +1,2 @@
+Wish = \
+
diff --git a/src/Objects/General/eosMath/src/Makefile b/src/Objects/General/eosMath/src/Makefile
new file mode 100755 (executable)
index 0000000..030c1e5
--- /dev/null
@@ -0,0 +1,345 @@
+SHELL=/bin/ksh
+include ../Config/Define.inc
+include ../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../../../Config/Define.inc
+
+include $(OSTYPE)/.Source
+include .CHeader
+include .CCHeader
+include .Wish
+include .Ruby
+
+LIBNAME=lib$(OBJECTNAME).a
+SHAREDLIB=lib$(OBJECTNAME).so
+LIBNAMEDEBUG=lib$(OBJECTNAME).debug.a
+
+DSTDIR=../../../../../lib/$(OSTYPE)/
+SOURCE=$(OSTYPE)/.Source
+ARCHTEMPLATEDIR=$(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH
+
+all: hostdepend static-lib shared-lib ruby-lib debug
+       @echo LIBNAME:$(LIBNAME)
+       @echo OBJECTNAME:$(OBJECTNAME)
+
+hostdepend:
+       @if [ ! -L $(OSTYPE) ] ; then  \
+               moveHostdependent ; \
+       fi
+
+debug: debug-lib
+
+static-lib::
+       @echo static-lib:LIBNAME:$(LIBNAME) ; \
+       $(RM) -f $(OSTYPE)/Makefile; \
+       $(CP) $(ARCHTEMPLATEDIR)/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(LIBNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME) WORLDNAME=$(WORLDNAME) 
+
+shared-lib::
+       @echo shared-lib:LIBNAME:$(LIBNAME) ; \
+       $(RM) -f $(OSTYPE)/Makefile;  \
+       $(CP) $(ARCHTEMPLATEDIR)/Makefile $(OSTYPE)/Makefile ; \
+       cd  $(OSTYPE); \
+       $(MAKE) $(SHAREDLIB) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME) WORLDNAME=$(WORLDNAME) 
+
+ruby-lib::
+       @if [ -d Swig ]; then \
+               echo "--- Swig ---"; \
+               cd Swig; \
+               if [ -f extconf.rb ] ; then \
+                       swig -ruby -I/usr/include -I$(EOS_HOME)/include *.i ; \
+                       ruby extconf.rb --with-Eos-include=$(EOS_HOME)/include --with-Eos-lib=$(EOS_HOME)/lib/$(OSTYPE) --with-opt-lib=$LD_LIBRARY_PATH --with-opt-lib=$(EOS_HOME)/util/$(OSTYPE)/lib --with-GL-lib=/usr/lib ; \
+                       make ; \
+                       make sitearchdir=$(EOS_HOME)/lib/$(OSTYPE) install; \
+               fi ; \
+       fi  
+
+debug-lib::
+       @cd $(OSTYPE); \
+       $(RM) -f Makefile; \
+       $(CP) $(ARCHTEMPLATEDIR)/Makefile Makefile ; \
+       $(MAKE) $(LIBNAMEDEBUG) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME) WORLDNAME=$(WORLDNAME) 
+
+clean: 
+       rm -f *.[oa] *.debugo *.cudagdbo *.so *.sharedo *.linkinfo $(OSTYPE)/*.[ao] $(OSTYPE)/*.debugo $(OSTYPE)/*.cudagdbo $(OSTYPE)/*.linkinfo *.bak core $(OSTYPE)/*.sharedo $(OSTYPE)/*.so
+
+Makefile:
+       touch .Source
+       touch .CHeader
+       touch .CCHeader
+
+install: all install-static install-shared install-ascii 
+       @echo "Installation has completed: $(LIBNAME)" 
+
+install-static: $(DSTDIR)/$(LIBNAME)
+install-shared: $(DSTDIR)/$(SHAREDLIB)
+
+install-debug: debug $(DSTDIR)/$(LIBNAMEDEBUG) install-ascii 
+       @echo "Installation has completed: $(LIBNAMEDEBUG)" 
+
+install-ascii: h hh wish ruby 
+
+h:
+       @if [ -n "$(CHeader)" ] ; \
+       then\
+               echo "C Header Install" ; \
+               for file in $(CHeader) dummy ; \
+               do \
+                       if [ -f $${file} ] ; \
+                       then\
+                               echo $${file}; $(INSTALL) -m 444 $${file} $(EOS_HOME)/include ; \
+                       fi;\
+               done; \
+       fi
+
+hh:
+       @if [ -n "$(CCHeader)" ] ; \
+       then \
+               echo "C++ Header Install" ; \
+               for file in $(CCHeader) dummy ; \
+               do \
+                       if [ -f $${file} ] ; \
+                       then\
+                               echo $${file}; $(INSTALL) -m 444 $${file} $(EOS_HOME)/include ; \
+                       fi;\
+               done; \
+       fi
+
+wish:
+       @if [ -n "$(Wish)" ] ; \
+       then \
+               echo "Wish Install" ; \
+               for file in $(Wish) dummy ; \
+               do \
+                       if [ -f $${file} ] ; \
+                       then\
+                               echo $${file}; $(INSTALL) -m 444 $${file} $(EOS_HOME)/lib ; \
+                       fi;\
+               done; \
+       fi
+
+ruby:
+       @if [ -n "$(Ruby)" ] ; \
+       then \
+               echo "Ruby Install" ; \
+               for file in $(Ruby) dummy ; \
+               do \
+                       if [ -f $${file} ] ; \
+                       then\
+                               echo $${file}; $(INSTALL) -m 444 $${file} $(EOS_HOME)/lib ; \
+                       fi;\
+               done; \
+       fi
+
+put:
+       @Files=`ls -l | grep $${USER} | grep rw | grep -e "\.c" ` ;\
+       for file in $${Files} dummy; \
+       do \
+               if [ -w $${file} ] ; \
+               then\
+                       echo $${file}; sccsPut $${file} ; \
+               fi;\
+       done
+
+$(DSTDIR)/$(LIBNAME): static-lib
+       @echo Installing lib: $(LIBNAME)
+       @if [ ! -d $(DSTDIR) ] ; then mkdir $(DSTDIR) ; fi
+       @cd $(OSTYPE); $(INSTALL) -m 444 $(LIBNAME) ../$(DSTDIR)
+       @echo LIBNAME:$(LIBNAME)
+       @echo Link EosObjects
+       @OBJLIST=`ls $(OSTYPE)/*.o `;\
+       echo $${OBJLIST} | sed -f ../../../../Config/o2nl.sed > .tmp1 ; \
+       echo $(REALOBJ)  | sed -f ../../../../Config/o2nl.sed > .tmp2 ; \
+       echo "#### Attention Uncompiled file ####";\
+       comm -13 .tmp1 .tmp2 ; \
+       echo "########";\
+       echo $(AR) r $(DSTDIR)/libEosObjects.a $${OBJLIST} ; \
+       $(AR) r $(DSTDIR)/libEosObjects.a $${OBJLIST}; \
+       echo $(AR) s $(DSTDIR)/libEosObjects.a ; \
+       $(AR) s $(DSTDIR)/libEosObjects.a \
+       chmod 660 $(DSTDIR)/libEosObjects.a
+       @rm .tmp1 .tmp2
+
+$(DSTDIR)/$(LIBNAMEDEBUG): debug 
+       @echo Installing lib: $(LIBNAMEDEBUG)
+       @if [ ! -d $(DSTDIR) ] ; then mkdir $(DSTDIR) ; fi
+       @cd $(OSTYPE); $(INSTALL) -m 444 $(LIBNAMEDEBUG) ../$(DSTDIR)
+       @echo LIBNAME:$(LIBNAMEDEBUG)
+       @echo Link EosObjects
+       @OBJLISTDEBUG=`ls $(OSTYPE)/*.debugo `;\
+       echo $${OBJLISTDEBUG} | sed -f ../../../../Config/o2nl.sed > .tmp1 ; \
+       echo $(REALOBJDEBUG)  | sed -f ../../../../Config/o2nl.sed > .tmp2 ; \
+       echo "#### Attention Uncompiled file ####";\
+       comm -13 .tmp1 .tmp2 ; \
+       echo "########";\
+       echo $(AR) r $(DSTDIR)/libEosObjects.debug.a $${OBJLISTDEBUG} ; \
+       $(AR) r $(DSTDIR)/libEosObjects.debug.a $${OBJLISTDEBUG}; 
+       echo $(AR) s $(DSTDIR)/libEosObjects.debug.a ; \
+       $(AR) s $(DSTDIR)/libEosObjects.debug.a 
+       chmod 660 $(DSTDIR)/libEosObjects.debug.a
+       @rm .tmp1 .tmp2
+
+$(DSTDIR)/$(SHAREDLIB): shared-lib
+       @echo Installing lib: $(SHAREDLIB)
+       @if [ ! -d $(DSTDIR) ] ; then mkdir $(DSTDIR) ; fi
+       @cd $(OSTYPE); $(INSTALL) -m 444 $(SHAREDLIB) ../$(DSTDIR)
+       @echo LIBNAME:$(SHAREDLIB)
+       @echo Link EosObjects
+       @OBJLIST=`ls $(OSTYPE)/*.sharedo `;\
+       echo $${OBJLIST} | sed -f ../../../../Config/o2nl.sed > .tmp1 ; \
+       echo $(REALSHAREDOBJ)  | sed -f ../../../../Config/o2nl.sed > .tmp2 ; \
+       echo "#### Attention Uncompiled file ####";\
+       comm -13 .tmp1 .tmp2 ; \
+       echo "########"; \
+       if [ ! -d  $(DSTDIR)/shared ] ; then \
+               mkdir $(DSTDIR)/shared; \
+       fi; \
+       $(CP) $${OBJLIST} $(DSTDIR)/shared ; \
+       echo "$(CP) $${OBJLIST} $(DSTDIR)/shared" ; \
+       $(SHARED) $(DSTDIR)/libEosObjects.so $(DSTDIR)/shared/*.sharedo ; \
+       echo "$(SHARED) $(DSTDIR)/libEosObjects.so $(DSTDIR)/shared/*.sharedo" ; \
+       chmod 660 $(DSTDIR)/libEosObjects.so
+       @rm .tmp1 .tmp2
+
+install-all: 
+       @cd ..  ; $(MAKE) install
+
+install-ruby: ruby-lib
+       cd $(OSTYPE); $(RUBY) -r ftools -e 'File::install(ARGV[0], ARGV[1], 0555, true)' $(SHAREDLIB) $(RUBYSHAREDLIB)/$(SHAREDLIB)     
+
+depend:
+       @echo dependency checking now 
+       @echo $(OSTYPE)
+       @echo SRC = \\ > $(SOURCE) 
+       @ls -1 *.c  | sed -e "s/\.c/.c \\\\/"   >> $(SOURCE)
+       @ls -1 *.cc | sed -e "s/\.cc/.cc \\\\/" >> $(SOURCE)
+       @ls -1 *.ccm | sed -e "s/\.ccm/.ccm \\\\/" >> $(SOURCE)
+       @ls -1 *.idl | sed -e "s/\.idl/.idl \\\\/" >> $(SOURCE)
+       @ls -1 *.cu | sed -e "s/\.cu/.cu \\\\/" >> $(SOURCE)
+       @echo >> $(SOURCE)
+       @#
+       @echo OBJ = \\ >> $(SOURCE)
+       @ls -1 *.c   | sed -e "s/\.c/.o \\\\/"    >> $(SOURCE)
+       @ls -1 *.cc  | sed -e "s/\.cc/.o  \\\\/"  >> $(SOURCE)
+       @ls -1 *.ccm  | sed -e "s/\.ccm/.o  \\\\/"  >> $(SOURCE)
+       @ls -1 *.idl | sed -e "s/\.idl/.o  \\\\/" >> $(SOURCE)
+       @ls -1 *.cu  | sed -e "s/\.cu/.o  \\\\/"  >> $(SOURCE)
+       @echo >> $(SOURCE)
+       @#
+       @echo SHAREDOBJ = \\ >> $(SOURCE)
+       @ls -1 *.c   | sed -e "s/\.c/.sharedo \\\\/"    >> $(SOURCE)
+       @ls -1 *.cc  | sed -e "s/\.cc/.sharedo  \\\\/"  >> $(SOURCE)
+       @ls -1 *.ccm  | sed -e "s/\.ccm/.sharedo  \\\\/"  >> $(SOURCE)
+       @ls -1 *.idl | sed -e "s/\.idl/.sharedo  \\\\/" >> $(SOURCE)
+       @ls -1 *.cu  | sed -e "s/\.cu/.sharedo  \\\\/"  >> $(SOURCE)
+       @echo >> $(SOURCE)
+       @#
+       @echo REALOBJ = \\ >> $(SOURCE)
+       @ls -1 *.c   | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.c/.o \\\\/"  >> $(SOURCE)
+       @ls -1 *.cc  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.cc/.o \\\\/" >> $(SOURCE)
+       @ls -1 *.ccm  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.ccm/.o \\\\/" >> $(SOURCE)
+       @ls -1 *.idl | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.idl/.o \\\\/" >> $(SOURCE)
+       @ls -1 *.cu  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.cu/.o \\\\/" >> $(SOURCE)
+       @echo >> $(SOURCE) 
+       @echo REALSHAREDOBJ = \\ >> $(SOURCE)
+       @ls -1 *.c   | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.c/.sharedo \\\\/"  >> $(SOURCE)
+       @ls -1 *.cc  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.cc/.sharedo \\\\/" >> $(SOURCE)
+       @ls -1 *.ccm  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.ccm/.sharedo \\\\/" >> $(SOURCE)
+       @ls -1 *.idl | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.idl/.sharedo \\\\/" >> $(SOURCE)
+       @ls -1 *.cu  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.cu/.sharedo \\\\/" >> $(SOURCE)
+       @echo >> $(SOURCE) 
+       @echo OBJDEBUG = \\ >> $(SOURCE)
+       @ls -1 *.c   | sed -e "s/\.c/.debugo \\\\/"    >> $(SOURCE)
+       @ls -1 *.cc  | sed -e "s/\.cc/.debugo  \\\\/"  >> $(SOURCE)
+       @ls -1 *.ccm  | sed -e "s/\.ccm/.debugo  \\\\/"  >> $(SOURCE)
+       @ls -1 *.idl | sed -e "s/\.idl/.debugo  \\\\/" >> $(SOURCE)
+       @echo >> $(SOURCE)
+       @#
+       @echo REALOBJDEBUG = \\ >> $(SOURCE)
+       @ls -1 *.c   | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.c/.debugo \\\\/"  >> $(SOURCE)
+       @ls -1 *.cc  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.cc/.debugo \\\\/" >> $(SOURCE)
+       @ls -1 *.ccm  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.ccm/.debugo \\\\/" >> $(SOURCE)
+       @ls -1 *.idl | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.idl/.debugo \\\\/" >> $(SOURCE)
+       @ls -1 *.cu  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.cu/.debugo \\\\/" >> $(SOURCE)
+       @echo >> $(SOURCE) 
+       @echo OBJCUDAGDB = \\ >> $(SOURCE)
+       @ls -1 *.c   | sed -e "s/\.c/.cudagdb.o \\\\/"    >> $(SOURCE)
+       @ls -1 *.cc  | sed -e "s/\.cc/.cudagdb.o  \\\\/"  >> $(SOURCE)
+       @ls -1 *.cu  | sed -e "s/\.cu/.cudagdb.o  \\\\/"  >> $(SOURCE)
+       @echo >> $(SOURCE)
+       @#
+       @echo REALOBJCUDAGDB = \\ >> $(SOURCE)
+       @ls -1 *.c   | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.c/.cudagdb.o \\\\/"  >> $(SOURCE)
+       @ls -1 *.cc  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.cc/.cudagdb.o \\\\/" >> $(SOURCE)
+       @ls -1 *.cu  | sed -e "s/^/\$(OSTYPE)\//" -e "s/\.cu/.cudagdb.o \\\\/" >> $(SOURCE)
+       @echo >> $(SOURCE) 
+       @#
+       @echo >> $(SOURCE)
+       @echo CCHeader = \\ > .CCHeader
+       @ls -1 *.hh | sed -e "s/\.hh/.hh \\\\/" >> .CCHeader
+       @echo >> .CCHeader
+       @#
+       @echo CHeader = \\ > .CHeader
+       @ls -1 *.h | sed -e "s/\.h/.h \\\\/" >> .CHeader
+       @echo >> .CHeader
+       @#
+       @echo Wish = \\ > .Wish
+       @ls -1 *.wish | sed -e "s/\.wish/.wish \\\\/" >> .Wish
+       @echo >> .Wish
+       @#
+       @echo Ruby = \\ > .Ruby
+       @ls -1 *.rb | sed -e "s/\.rb/.rb \\\\/" >> .Ruby
+       @echo >> .Ruby
+       @#
+       @ls -1 *.c *.cc *.ccm | \
+       awk -vHostType=$(OSTYPE) -f$(EOS_HOME)/sbin/awk/objectdependency.awk > $(OSTYPE)/.Depend
+       @#
+       @$(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(KHOROS_INCS) *.c *.cc *.ccm >> $(OSTYPE)/.Depend
+       @for file in $(SRC) dummy ; \
+       do  \
+               if [ -f $${file} ] ; \
+               then \
+                       echo $${file} ; \
+                       ln -sf ../$${file} $(OSTYPE)/$${file}; \
+               fi ;\
+       done
+
+#
+#
+#
+test::
+       @if [ -d test ] ; then \
+               cd test; \
+               $(MAKE); \
+       else \
+               echo "No test directory: making test"; \
+               mkdir test; \
+               cd test; \
+               touch Makefile; \
+       fi
+
+#
+# cvs
+#
+cvsupdate::
+       cvs -d $(EOS_CVSROOT) update -d 
+
+cvslogin::
+       cvs -d $(EOS_CVSROOT) login 
+
+cvscommit::
+       @echo "cvs -d $(EOS_CVSROOT) commit -m @"message@" filename"
+
+cvsadd::
+       @echo "cvs -d $(EOS_CVSROOT) add  filename|dirname"
+       @echo "Need Commit for filename"
+       @echo "make cvscommit"
+
+cvsremove::
+       @echo "cvs -d $(EOS_CVSROOT) remove filename"
+       @echo "Need Commit for filename"
+       @echo "make cvscommit" 
+
+include $(OSTYPE)/.Depend
+include ../Config/Target.inc
diff --git a/src/Objects/General/eosMath/src/X86MAC64 b/src/Objects/General/eosMath/src/X86MAC64
new file mode 120000 (symlink)
index 0000000..6d47b87
--- /dev/null
@@ -0,0 +1 @@
+../../../../../hostdepend/X86MAC64/src/Objects/General/eosMath/src/X86MAC64
\ No newline at end of file
diff --git a/src/Objects/General/eosMath/src/eosMathStatistics.c b/src/Objects/General/eosMath/src/eosMathStatistics.c
new file mode 100644 (file)
index 0000000..1c88ebb
--- /dev/null
@@ -0,0 +1,150 @@
+/*
+# %M% %Y% %I%
+# The latest update : %G% at %U%
+#
+#%Z% eosMathStatistics ver %I%
+#%Z% Created by 
+#%Z%
+#%Z% Usage : eosMathStatistics 
+#%Z% Attention
+#%Z%
+*/
+static char __sccs_id[] = "%Z%eosMathStatistics ver%I%; Date:%D% %Z%";
+
+#include "../inc/eosMath.h"
+#include "genUtil.h"
+#include "Memory.h"
+
+
+void
+eosMathSorting(double* v, int n)
+{
+  int i, j;
+  double tmp;
+  for(i=0; i<n-1; i++) {
+    for(j=0; j<n-1; j++) {
+      if(v[j]>v[j+1]) {
+        tmp = v[j];
+        v[j] = v[j+1];
+        v[j+1] = tmp;
+      }
+    }
+  }
+}
+
+double
+eosMathMedian(double* v, int n)
+{
+  int i;
+  double* tmp;
+  double med;
+  tmp = memoryAllocate(sizeof(double)*n, "in eosMathMedian");
+  for(i=0; i<n; i++) {
+    tmp[i] = v[i];
+  }
+  eosMathSorting(tmp, n);
+  if(n%2) {
+    med = (tmp[n/2-1]+tmp[n/2])/2.0;
+  } else {
+    med = tmp[n/2]; 
+  }
+
+  free(tmp);
+  return med;
+}
+
+
+double
+eosMathAverage(double* v, int n)
+{
+  int i;
+  double sum;
+  sum = 0;
+  for(i=0; i<n; i++) {
+    sum += v[i];
+  }
+  return sum/n;  
+}
+
+double
+eosMathStddev(double* v, double mean, int n)
+{
+  int i;
+  double sum;
+  sum = 0;
+  for(i=0; i<n; i++) {
+    sum += SQR(v[i]-mean);
+  }
+  if(0<sum) {
+    return sqrt(sum/n);
+  } else {
+    return 0;
+  }
+}
+
+
+double
+eosMathTrimmedAverage(double* v, int n, double trim)
+{
+
+  int i;
+  int nn;
+  int iStart;
+  double* tmp;
+  double* tmp2;
+  double avg;
+
+  nn = (int)(n*(1-trim*2)+0.5);
+  iStart = (int)(n*trim+0.5) ;
+
+  tmp = memoryAllocate(sizeof(double)*n, "in eosMathMedian");
+  tmp2 = memoryAllocate(sizeof(double)*nn, "in eosMathMedian");
+  for(i=0; i<n; i++) {
+    tmp[i] = v[i];
+  }
+  eosMathSorting(tmp, n);
+
+  for(i=0; i<nn; i++) {
+    tmp2[i] = tmp[i+iStart];
+  }
+  avg = eosMathAverage(tmp2, nn);
+
+  free(tmp);
+  free(tmp2);
+
+  return avg;
+}
+
+
+double
+eosMathHodgesLehmannEstimator(double* v, int n)
+{
+
+  int i, j, k;
+  int nn;
+  double* tmp;
+  double avg;
+
+  nn = n*(n-1)/2;
+  tmp = memoryAllocate(sizeof(double)*nn, "in eosMathMedian");
+
+  k=0;
+  for(i=0; i<n; i++) {
+  for(j=1; j<n; j++) {
+    tmp[k] = (v[i] + v[j])/2.0;
+    k++;
+  }
+  }
+  eosMathSorting(tmp, nn);
+
+  if(nn%2) {
+    avg = (tmp[nn/2-1]+tmp[nn/2])/2.0;
+  } else {
+    avg = tmp[nn/2]; 
+  }
+
+  free(tmp);
+  return avg;
+}
+
+
old mode 100755 (executable)
new mode 100644 (file)
index b8134d0..cf52194 100644 (file)
@@ -10,6 +10,7 @@ crystal \
 ctfInfo \
 database \
 eosBayes \
+eosMath \
 eosPoint \
 filter \
 hf2000 \
index 9ee2d89..85eb032 100644 (file)
@@ -1 +1,6 @@
 WORLDNAME=Tools
+WORLDNAME=Tools
+WORLDNAME=Tools
+WORLDNAME=Tools
+WORLDNAME=Tools
+WORLDNAME=Tools
diff --git a/src/Tools/eosMath/.Source.org b/src/Tools/eosMath/.Source.org
new file mode 100644 (file)
index 0000000..3595f81
--- /dev/null
@@ -0,0 +1,4 @@
+SOURCE=\
+eosMathMedian \
+eosMathSorting \
+#LastSource
diff --git a/src/Tools/eosMath/Config/Define.inc b/src/Tools/eosMath/Config/Define.inc
new file mode 100644 (file)
index 0000000..7d7bf83
--- /dev/null
@@ -0,0 +1 @@
+CLASSNAME = eosMath
diff --git a/src/Tools/eosMath/Makefile b/src/Tools/eosMath/Makefile
new file mode 100755 (executable)
index 0000000..6c348f0
--- /dev/null
@@ -0,0 +1,119 @@
+include ../../Config/Define.inc
+include ../Config/Define.inc
+include Config/Define.inc
+include .Source
+
+all:
+       for dir in ${SOURCE} ; \
+       do \
+               if [ -d $${dir} ] ; then \
+                       $(CD) $${dir}; make all; $(CD) ..; \
+               fi \
+       done
+
+install:
+       for dir in ${SOURCE} ; \
+       do \
+               if [ -d $${dir} ] ; then \
+                       $(CD) $${dir}; make install; $(CD) ..; \
+               fi \
+       done
+
+put:
+       for dir in ${SOURCE} ; \
+       do \
+               if [ -d $${dir} ] ; then \
+                       $(CD) $${dir}; make put; $(CD) ..; \
+               fi \
+       done
+
+putSF:
+       if [ -f private ] ; then \
+               echo "$(WORLDNAME)/$(CLASSNAME) is private " ; \
+       else \
+               for dir in ${SOURCE} ; \
+               do \
+                       if [ -d $${dir} ] ; then \
+                               $(CD) $${dir}; make putSF; $(CD) ..; \
+                       fi \
+               done \
+       fi
+
+clean:
+       for dir in ${SOURCE} ; \
+       do \
+               $(CD) $${dir}; make clean; $(CD) ..; \
+       done
+
+check:
+       @for dir in ${SOURCE} ; do \
+               if [ -d $${dir} ] ; then \
+                       $(CD) $${dir}; \
+                       echo  $${dir}; \
+                       $(RM) Makefile; \
+                       $(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/Makefile Makefile ; \
+                       make check; \
+                       $(CD) ..; \
+               fi \
+       done
+
+update:
+       @for dir in ${SOURCE} ; do \
+               if [ -d $${dir} ] ; then \
+                       $(CD) $${dir}; \
+                       echo  $${dir}; \
+                       $(RM) Makefile; \
+                       $(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/Makefile Makefile ; \
+                       make update; \
+                       $(CD) ..; \
+               fi \
+       done
+
+depend: check
+       @for dir in ${SOURCE} ; \
+       do \
+               $(CD) $${dir}; make depend; $(CD) ..; \
+       done
+
+backup: 
+       cd ../../..; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/Config; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/Makefile; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/.[A-z]*
+       tar uvf ${EOS_HOME}/backup/EosBase.tar .[A-z]*
+       @for dir in ${SOURCE} ; \
+       do \
+               $(CD) $${dir}; make backup; $(CD) ..; \
+       done
+
+backup-all: 
+       cd ../../..; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/Config; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/Makefile; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/.[A-z]*
+       tar rvf ${EOS_HOME}/backup/EosBase.tar .[A-z]*
+       @for dir in ${SOURCE} ; \
+       do \
+               $(CD) $${dir}; make backup; $(CD) ..; \
+       done
+
+distribute: 
+       cd ../../..; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/Config; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/Makefile; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/.[A-z]*
+       @for dir in ${SOURCE} ; \
+       do \
+               $(CD) $${dir}; make distribute; $(CD) ..; \
+       done
+
+distribute-all: 
+       cd ../../..; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/Config; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/Makefile; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/.[A-z]*
+       @for dir in ${SOURCE} ; \
+       do \
+               $(CD) $${dir}; make distribute-all; $(CD) ..; \
+       done
+
diff --git a/src/Tools/eosMath/eosMathAverage/Config/Define.inc b/src/Tools/eosMath/eosMathAverage/Config/Define.inc
new file mode 100755 (executable)
index 0000000..b8507ee
--- /dev/null
@@ -0,0 +1,4 @@
+OBJECTNAME = eosMathAverage
+EXTRA_LIB  =
+EXTRA_CCOPTS =
+EXTRA_INC =
diff --git a/src/Tools/eosMath/eosMathAverage/Config/OptionControlFile b/src/Tools/eosMath/eosMathAverage/Config/OptionControlFile
new file mode 100755 (executable)
index 0000000..e48c2fa
--- /dev/null
@@ -0,0 +1,7 @@
+# OptionControlFile
+# FileFormat
+"-i","-i[nput]","InputDataFile","Essential","1","1","In","inFile","NULL"
+"-o","-o[utput]","OutputDataFile","Essential","1","1","Out","outFile","NULL"
+"-trim","-trim","Trim[0-0.5]","Optional","1","1","Trim","Real","0.0"
+"-c","-c[onfig]","ConfigurationFile","Optional","1","1","configFile","inFile","NULL"
+"-m","-m[ode]","Mode","Optional","1","1","mode","Integer","0"
diff --git a/src/Tools/eosMath/eosMathAverage/Config/Target.inc b/src/Tools/eosMath/eosMathAverage/Config/Target.inc
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathAverage/Makefile b/src/Tools/eosMath/eosMathAverage/Makefile
new file mode 100755 (executable)
index 0000000..3d1cbd9
--- /dev/null
@@ -0,0 +1,115 @@
+include ../../../Config/Define.inc
+include ../../Config/Define.inc
+include ../Config/Define.inc
+include Config/Define.inc
+
+all:
+       cd src; make all; cd ..
+
+install:
+       cd src; make install; cd ..
+
+
+putSF:
+       if [ -f private ] ; \
+       then \
+               echo "$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME) is private"; \
+       else \
+               cvs -z4 -d:ext:$$USER@$$EOS_SOURCEFORGE commit || cvs -z4 -d:ext:$$USER@$$EOS_SOURCEFORGE import src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME); \
+       fi
+
+put:
+       cd src; make put; cd ..
+
+clean:
+       cd src; make clean; cd ..
+
+depend:
+       cd src; make depend; cd ..
+
+check:
+       @if [ ! -d $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) ] ; then \
+               echo making directory; \
+               mkdir -p $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE); \
+       fi
+       ln -sf ../../../../../hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) src/$(OSTYPE); 
+       @$(RM) src/Makefile
+       @echo "New src/Makefile" 
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/src/Makefile src/Makefile
+       @cd src; rm -f $(OSTYPE)/.Depend; touch $(OSTYPE)/.Depend; make depend
+
+update:
+       @if [ ! -d $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) ] ; then \
+               echo making directory; \
+               mkdir -p $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE); \
+       fi
+       ln -sf ../../../../../hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) src/$(OSTYPE); 
+       @$(RM) src/Makefile
+       @echo "New src/Makefile" 
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/src/Makefile src/Makefile
+       @cd src; rm -f $(OSTYPE)/.Depend; touch $(OSTYPE)/.Depend; echo "Y" | make update      
+
+cvsupdate::
+       cvs -d $(EOS_CVSROOT) update -d 
+
+cvscommit::
+       cvs -d $(EOS_CVSROOT) commit
+
+backup:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config       ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile
+
+backup-all:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config       ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile
+       
+distribute:
+       cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config     ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE)
+       
+distribute-all:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config     ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE)
+
+eosintroduce:
+       ${EOS_HOME}/sbin/eosintroduce ${WORLDNAME} ${CLASSNAME} ${OBJECTNAME} ./ 
+
+include Config/Target.inc
diff --git a/src/Tools/eosMath/eosMathAverage/doc/Makefile b/src/Tools/eosMath/eosMathAverage/doc/Makefile
new file mode 100755 (executable)
index 0000000..8215199
--- /dev/null
@@ -0,0 +1,2 @@
+install:
+       cd ../src; make install-doc; cd ../doc  
diff --git a/src/Tools/eosMath/eosMathAverage/inc/config.h b/src/Tools/eosMath/eosMathAverage/inc/config.h
new file mode 100755 (executable)
index 0000000..4a0662c
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef CONFIG_H
+#define CONFIG_H
+
+#include "../inc/eosMathAverage.h"
+
+#endif /* CONFIG_H */
diff --git a/src/Tools/eosMath/eosMathAverage/inc/eosMathAverage.h b/src/Tools/eosMath/eosMathAverage/inc/eosMathAverage.h
new file mode 100755 (executable)
index 0000000..336bb6a
--- /dev/null
@@ -0,0 +1,49 @@
+#ifndef EOSMATHAVERAGE_H
+#define EOSMATHAVERAGE_H
+#include <stdio.h>
+#include <stdlib.h>
+
+#define OPTION_FLAG     '-'
+#define OPTION_FLAG_POS (0)
+#define OPTION_POS      (1)
+
+
+
+
+typedef struct eosMathAverageInfo {
+    long flagRedirect;
+
+    long flagIn;
+    char* In;
+    FILE* fptIn;
+    
+    long flagOut;
+    char* Out;
+    FILE* fptOut;
+    
+    long flagTrim;
+    float Trim;
+    
+    long flagconfigFile;
+    char* configFile;
+    FILE* fptconfigFile;
+    
+    long flagmode;
+    long mode;
+    
+} eosMathAverageInfo;
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern void argCheck(eosMathAverageInfo* info, int argc, char* avgv[]);
+extern void khorosInit(int argc, char* avgv[]);
+extern void init0(eosMathAverageInfo* info);
+extern void init1(eosMathAverageInfo* info);
+extern void usage(char* usage);
+extern void additionalUsage(void);
+extern void htmlBeforeUsage(char* usage);
+extern void htmlAfterUsage(char* usage);
+#ifdef __cplusplus
+};
+#endif
+#endif /* EOSMATHAVERAGE_H */
diff --git a/src/Tools/eosMath/eosMathAverage/src/.Depend b/src/Tools/eosMath/eosMathAverage/src/.Depend
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathAverage/src/.Source b/src/Tools/eosMath/eosMathAverage/src/.Source
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathAverage/src/Makefile b/src/Tools/eosMath/eosMathAverage/src/Makefile
new file mode 100755 (executable)
index 0000000..a360703
--- /dev/null
@@ -0,0 +1,430 @@
+include ../Config/Define.inc
+include ../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../../../Config/Define.inc
+
+EOSHOME=../../../../../
+DSTDIR=$(EOSHOME)/bin
+DSTDOC=$(EOSHOME)/doc
+DSTTAR=$(EOSHOME)/tar
+
+INCFILES   = 
+
+LIBFILES   = \
+                       $(LIBPREFIX)EosObjects$(LIBSUFFIX) 
+
+LIBFILESDEBUG   = \
+                       $(LIBPREFIX)EosObjects.debug$(LIBSUFFIX) 
+
+SRCC  = \
+                       $(OBJECTNAME).c \
+                       init.c \
+                       argCheck.c \
+                       usage.c  \
+                       util.c \
+
+SRCCXX  = \
+                       $(OBJECTNAME).cc \
+                       init.cc \
+                       argCheck.cc \
+                       usage.cc  \
+                       util.cc \
+
+MODULES    = \
+                       $(OBJECTNAME).o \
+                       init.o \
+                       argCheck.o \
+                       usage.o  \
+                       util.o \
+
+REALMODULES    = \
+                       $(OSTYPE)/$(OBJECTNAME).o \
+                       $(OSTYPE)/init.o \
+                       $(OSTYPE)/argCheck.o \
+                       $(OSTYPE)/usage.o \
+                       $(OSTYPE)/util.o 
+
+MODULESDEBUG    = \
+                       $(OBJECTNAME).debugo \
+                       init.debugo \
+                       argCheck.debugo \
+                       usage.debugo  \
+                       util.debugo \
+
+REALMODULESDEBUG    = \
+                       $(OSTYPE)/$(OBJECTNAME).debugo \
+                       $(OSTYPE)/init.debugo \
+                       $(OSTYPE)/argCheck.debugo \
+                       $(OSTYPE)/usage.debugo \
+                       $(OSTYPE)/util.debugo 
+
+
+all: $(OSTYPE)/$(OBJECTNAME) 
+       if [ ! -L $(OSTYPE) ] ; then \
+               moveHostdependent; \
+       fi
+
+debug: $(OSTYPE)/$(OBJECTNAME).debug
+
+cudagdb: $(OSTYPE)/$(OBJECTNAME).cudagdb
+
+
+$(OSTYPE)/$(OBJECTNAME)::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME)  WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+$(OSTYPE)/$(OBJECTNAME).debug::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME).debug  WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+$(OSTYPE)/$(OBJECTNAME).cudagdb::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME).cudagdb WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+cvsupdate::
+       cvs -d $(EOS_CVSROOT) update -d 
+
+cvscommit::
+       cvs -d $(EOS_CVSROOT) commit 
+
+edit:
+       @if [ -r $(OBJECTNAME).c ]; \
+       then \
+               sccsEdit $(OBJECTNAME).c; \
+       else \
+               echo "Source files are already editable"; \
+       fi
+       @if [ -r wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsEdit $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are already editable."; \
+       fi
+       @if [ -r ruby/$(OBJECTNAME).rb ]; \
+       then \
+               cd ruby; sccsEdit $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are already editable."; \
+       fi
+       @if [ -r perl/$(OBJECTNAME).pl ]; \
+       then \
+               cd perl; sccsEdit $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (perl) are already editable."; \
+       fi
+       @if [ -r ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsEdit OptionControlFile; \
+       else \
+               echo "OptionControlFile are already editable."; \
+       fi
+       
+unedit:
+       @if [ -w $(OBJECTNAME).c ]; \
+       then \
+               sccsUnedit $(OBJECTNAME).c; \
+       else \
+               echo "Source files are not editable"; \
+       fi
+       @if [ -w wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsUnedit $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are not editable."; \
+       fi
+       @if [ -w ruby/$(OBJECTNAME).rb]; \
+       then \
+               cd ruby; sccsUnedit $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are not editable."; \
+       fi
+       @if [ -w perl/$(OBJECTNAME).pl ]; \
+       then \
+               cd perl; sccsUnedit $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (ruby) are not editable."; \
+       fi
+       @if [ -w ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsUnedit OptionControlFile; \
+       else \
+               echo "OptionControlFile are not editable."; \
+       fi
+       
+report:
+       @if [ -r $(OBJECTNAME).c ]; \
+       then \
+               sccsReport $(OBJECTNAME).c; \
+       else \
+               echo "Source files are already editable"; \
+       fi
+       @if [ -r wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsReport $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are already editable."; \
+       fi
+       @if [ -r ruby/$(OBJECTNAME).rb ]; \
+       then \
+               cd ruby; sccsReport $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are already editable."; \
+       fi
+       @if [ -r perl/$(OBJECTNAME).pl ] ; \
+       then \
+               cd perl; sccsReport $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (perl) are already editable."; \
+       fi
+       @if [ -r ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsReport OptionControlFile; \
+       else \
+               echo "OptionControlFile are already editable."; \
+       fi
+
+clean : 
+       rm -f *.debugo $(OSTYPE)/*.debugo *.cudagdbo $(OSTYPE)/*.cudagdbo *.o $(OSTYPE)/*.o *.linkinfo $(OSTYPE)/*.linkinfo \
+               $(OSTYPE)/$(OBJECTNAME) $(OSTYPE)/*.$(OSTYPE) \
+               $(OSTYPE)/$(OBJECTNAME).debug $(OSTYPE)/*.$(OSTYPE).debug \
+               $(OSTYPE)/$(OBJECTNAME).cudagdb $(OSTYPE)/*.$(OSTYPE).cudagdb \
+               $(OSTYPE)/$(OBJECTNAME).linkinfo $(OSTYPE)/*.$(OSTYPE).linkinfo \
+               *.bak *.$(OSTYPE) core
+
+install: install-bin install-doc install-wish install-ruby install-shell install-perl
+       @if [ dummy$(KHOROS_KENGOBJ) != dummy ]  ; \
+       then \
+               if [ -x $(KHOROS_KGENOBJ) ] ;  \
+               then \
+                       make install-khoros ; \
+               fi; \
+       fi 
+
+install-bin:$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME) 
+
+$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME):$(OSTYPE)/$(OBJECTNAME) $(DSTDIR)/$(OBJECTNAME) 
+       @echo ---- Installing to bin
+       @echo $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME)
+       @if [ ! -d $(DSTDIR)/$(OSTYPE) ]; \
+       then \
+               mkdir $(DSTDIR)/$(OSTYPE); \
+       fi
+       @if [ -x $(OSTYPE)/$(OBJECTNAME) ]; \
+       then \
+               echo "Compilation is complete"; \
+               $(RM) -f $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME); \
+               $(CD) $(OSTYPE); $(INSTALL) -m 555 $(OBJECTNAME) ../$(DSTDIR)/$(OSTYPE); \
+               $(CHMOD) 555 ../$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME); \
+       else \
+               echo "Compilation is incomplete. $(OBJECTNAME)"; \
+       fi
+       @echo ---- end of bin
+
+install-wish:
+       @if [ -d wish ]; \
+       then \
+               echo "---- Tcl/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/wish/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/wish/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f wish/* $(DSTDIR)/wish/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/wish/$(OBJECTNAME)/*  ;\
+               touch $(DSTDIR)/wish/$(OBJECTNAME)/tclIndex;\
+               $(CHMOD) 666 $(DSTDIR)/wish/$(OBJECTNAME)/tclIndex;\
+               echo "---- Tcl/Tk file Installed";\
+       fi
+
+install-ruby:
+       @if [ -d ruby ]; \
+       then \
+               echo "---- Ruby/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/ruby/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/ruby/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f ruby/* $(DSTDIR)/ruby/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/ruby/$(OBJECTNAME)/* ; \
+               echo "---- Ruby/Tk file Installed"; \
+       fi
+
+install-perl:
+       @if [ -d perl ]; \
+       then \
+               echo "---- Perl/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/perl/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/perl/$(OBJECTNAME) ; \
+               fi; \
+               $(CP) -f perl/* $(DSTDIR)/perl/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/perl/$(OBJECTNAME)/* ; \
+               echo "---- Perl/Tk file Installed"; \
+       fi
+
+install-shell:
+       @if [ ! -d $(DSTDIR)/shell/$(OBJECTNAME) ]; \
+       then \
+               mkdir $(DSTDIR)/shell/$(OBJECTNAME) ; \
+       fi
+       @if [ -d shell ]; \
+       then \
+               echo "---- Shell file Install"; \
+               if [ ! -d $(DSTDIR)/shell/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/shell/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f shell/* $(DSTDIR)/shell/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/shell/$(OBJECTNAME)/*; \
+               echo "---- Shell file Installed"; \
+       fi
+
+install-khoros:
+       @echo Installing to khoros
+       @if [ ! -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KGENOBJ) ]; \
+       then \
+               echo kgenobj;\
+               $(KHOROS_KGENOBJ) -tb Eos -oname $(OBJECTNAME) -type script -pane -cantata true -cat Eos -subcat $(CLASSNAME) -description $(OBJECTNAME) -bname $(OBJECTNAME) -form  -lang ksh ; \
+       fi
+       @if [ ! -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KSET) ]; \
+       then \
+               $(KHOROS_KSET) -tb Eos -oname $(OBJECTNAME) -icon $(OBJECTNAME) ; \
+       fi
+       @if [ -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KSET) ]; \
+       then \
+               $(CHMOD) -R 775 ../../../../../objects/script/$(OBJECTNAME) ; \
+               if [ $?  ] ; \
+               then \
+                       echo "-- setting khoros ---" ; \
+                       if [ -d ../../../../../objects/script/$(OBJECTNAME)/uis/ ] ; \
+                       then \
+                               $(CD) ../../../../../objects/script/$(OBJECTNAME)/uis/ ; \
+                               $(RM) -f $(OBJECTNAME).pane ; \
+                               $(LN) -s ../../../../src/Tools/$(CLASSNAME)/$(OBJECTNAME)/src/$(OBJECTNAME).pane $(OBJECTNAME).pane; \
+                               $(CD) ../../ ; \
+                               $(CHMOD) -R 555 $(OBJECTNAME); \
+                       else \
+                               echo "../../../../../objects/script/$(OBJECTNAME)/uis/ does not exist."; \
+                       fi ; \
+               else \
+                       echo "Failed !!: Cannot chage mode in installing  $(OBJECTNAME) to khoros system"; \
+               fi ; \
+               echo "-- end of khoros-installing"; \
+       fi
+
+install-doc: html 
+       @if [ ! -d $(DSTDOC)/SmallTools ]; \
+       then \
+               mkdir $(DSTDOC)/SmallTools ;\
+       fi
+       @if [ -f $(DSTDOC)/SmallTools/$(OBJECTNAME).html ]; \
+       then \
+               $(RM) -f $(DSTDOC)/SmallTools/$(OBJECTNAME).html ;\
+       fi
+       @$(CP) $(OBJECTNAME).html  $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @$(CHMOD) 444 $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @if [ -f ../doc/*.html ]; \
+       then \
+               $(CP) ../doc/*.html  $(DSTDOC)/SmallTools/ ;\
+       fi
+       @$(CHMOD) 444 $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @if [ -f $(DSTDOC)/SmallTools/Makefile ]; \
+       then \
+               cd $(DSTDOC)/SmallTools; $(MAKE); \
+       fi
+
+html: $(OBJECTNAME).html
+
+configFileRead:
+       @ctrl2configFileRead $(CLASSNAME) $(OBJECTNAME) ../Config/OptionControlFile
+
+$(OBJECTNAME).html: $(OSTYPE)/$(OBJECTNAME)
+       @echo creating html
+       @$(OSTYPE)/$(OBJECTNAME) -html 2> $(OBJECTNAME).html.tmp
+       @sed -e s/$(OSTYPE)\\/// $(OBJECTNAME).html.tmp > $(OBJECTNAME).html
+       @$(RM) $(OBJECTNAME).html.tmp
+
+$(DSTDIR)/$(OBJECTNAME): $(OSTYPE)/$(OBJECTNAME)
+       @ln -s -f ../sbin/MachineIndependent $@
+
+depend::
+       @echo dependency checking now
+       @if [ ! -L $(OSTYPE) ] ; then \
+               moveHostdependent; \
+       fi
+       rm -f $(OSTYPE)/.Depend 
+       #echo C
+       @if [ -f $(OBJECTNAME).c ] ; \
+       then \
+               echo "dependency: *.c"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) *.c   ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) *.c                  >> $(OSTYPE)/.Depend ; \
+       fi
+       #echo CC
+       @if [ -f $(OBJECTNAME).cc ] ; \
+       then \
+               echo "dependency: *.cc"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cc ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cc >> $(OSTYPE)/.Depend ; \
+       fi
+       @if [ -f $(OBJECTNAME).ccm ] ; \
+       then \
+               echo "dependency: *.ccm"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.ccm ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.ccm >> $(OSTYPE)/.Depend ; \
+       fi
+       @if [ -f $(OBJECTNAME).cu ] ; \
+       then \
+               echo "dependency: *.cu"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cu ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cu >> $(OSTYPE)/.Depend ; \
+       fi
+
+update:../Config/OptionControlFile
+       maketool $(CLASSNAME) $(OBJECTNAME) update
+
+updateNoAns:../Config/OptionControlFile
+       maketool $(CLASSNAME) $(OBJECTNAME) update N
+
+changeName::
+
+Test:$(OSTYPE)/$(OBJECTNAME) TestDir
+       @if [ -f test/Makefile ] ; \
+       then \
+               cd test; make ; \
+       else \
+               echo "No test Makefile"; \
+       fi
+
+TestDir::
+       @if [ ! -d test ] ; \
+       then \
+               echo "Creating test dir"; \
+               mkdir  test; \
+       fi
+       @if [ ! -f test/Makefile ] ; \
+       then \
+               echo "Creating Makefile"; \
+               cd test; \
+               protoTestMakefileCreate; \
+       fi
+       @if [ ! -d test/data ]; \
+       then \
+               mkdir $(EOSHOME)/data/$(OBJECTNAME); \
+               cd test; \
+               ln -sf ../$(EOSHOME)/data/$(OBJECTNAME) data; \
+       fi 
+
+tar::
+       cd $(DSTTAR); tar cvf Tools.$(CLASSNAME).$(OBJECTNAME).tar ../bin/$(OBJECTNAME) \
+                                                            ../bin/*/$(OBJECTNAME).* \
+                                                            ../src/Tools/$(CLASSNAME)/$(OBJECTNAME) \
+                               ; gzip Tools.$(CLASSNAME).$(OBJECTNAME).tar
+
+-include $(OSTYPE)/.Depend
+-include ../Config/Target.inc
diff --git a/src/Tools/eosMath/eosMathAverage/src/X86MAC64 b/src/Tools/eosMath/eosMathAverage/src/X86MAC64
new file mode 120000 (symlink)
index 0000000..b1a2209
--- /dev/null
@@ -0,0 +1 @@
+../../../../../hostdepend/X86MAC64/src/Tools/eosMath/eosMathAverage/src/X86MAC64
\ No newline at end of file
diff --git a/src/Tools/eosMath/eosMathAverage/src/argCheck.c b/src/Tools/eosMath/eosMathAverage/src/argCheck.c
new file mode 100755 (executable)
index 0000000..a4ab4c1
--- /dev/null
@@ -0,0 +1,107 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>
+#include "../inc/config.h"
+#include "genUtil.h"
+#include "eosString.h"
+#include "File.h"
+#include "Memory.h"
+
+
+void
+argCheck(eosMathAverageInfo* info, int argc, char* argv[])
+{
+    long i;
+    char s[1024];
+    FILE* fpt;
+    
+    if(NULL==(fpt=fopen(".EosLog", "a+"))) { 
+        
+    } else {
+        for(i=0; i<argc; i++) {
+            fprintf(fpt, "%s ", argv[i]);
+        }
+        fprintf(fpt, "\n");
+        fclose(fpt);
+    }
+    for(i=1; i<argc; i++) {
+        if(OPTION_FLAG==argv[i][OPTION_FLAG_POS]) {
+            SSWITCH(argv[i]+OPTION_POS)
+                SCASE("i") {
+                    if(i+1<argc) {
+                        info->In = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagIn++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("o") {
+                    if(i+1<argc) {
+                        info->Out = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagOut++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("trim") {
+                    if(i+1<argc) {
+                        info->Trim = stringGetNthRealData(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagTrim++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("c") {
+                    if(i+1<argc) {
+                        info->configFile = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagconfigFile++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("m") {
+                    if(i+1<argc) {
+                        info->mode = stringGetNthIntegerData(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagmode++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("h") {
+                    usage(argv[0]);
+                    exit(EXIT_SUCCESS);
+                    break;
+                }
+                SCASE("html") {
+                    htmlBeforeUsage(argv[0]);
+                    usage(argv[0]);
+                    htmlAfterUsage(argv[0]);
+                    exit(EXIT_SUCCESS);
+                    break;
+                }
+                SDEFAULT {
+                    fprintf(stderr, "Not Supported Options: :%s\n", argv[i]);
+                    usage(argv[0]);
+                    exit(EXIT_FAILURE);
+                    break;
+                }
+            SSWITCHEND;
+        } 
+    } 
+} 
diff --git a/src/Tools/eosMath/eosMathAverage/src/eosMathAverage.c b/src/Tools/eosMath/eosMathAverage/src/eosMathAverage.c
new file mode 100755 (executable)
index 0000000..8366ea7
--- /dev/null
@@ -0,0 +1,78 @@
+/*
+# eosMathAverage : $Revision$  
+# $Date$ 
+# Created by $Author$
+# Usage : eosMathAverage
+# Attention
+#   $Loccker$
+#      $State$ 
+#
+*/
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>                  
+#define GLOBAL_DECLARATION
+#include "../inc/config.h"
+
+#define DEBUG
+#include "genUtil.h"
+#include "Array.h"
+#include "Memory.h"
+#include "eosMath.h"
+
+/*
+Example:
+typedef struct leosMathAverageInfo {
+       float a;
+       int   b;
+} leosMathAverageInfo;
+
+typedef enum leosMathAverageMode {
+       a=0,
+       b=1
+} leosMathAverageMode;
+*/
+
+int
+main(int argc, char* argv[]) 
+{
+       eosMathAverageInfo info;
+  Array in;
+  int n, i;
+  double* v;
+  double avg;
+
+       init0(&info);
+  argCheck(&info, argc, argv);
+  init1(&info);
+
+       DEBUGPRINT("Program Start\n");
+
+ arrayReadFromFile(info.fptIn, &in, "in main");
+
+  if(1<in.dim) {
+    fprintf(stderr, "Not supported dim: %ld\n", in.dim);
+    exit(EXIT_FAILURE);
+  }
+  n = in.n[0];
+  v = memoryAllocate(sizeof(double)*n, "in main");
+  for(i=0; i<n; i++) {
+    v[i] = in.A[i];
+  }
+
+  if(info.flagTrim) {
+    avg = eosMathTrimmedAverage(v, n, info.Trim);
+  } else {
+    avg = eosMathAverage(v, n);
+  }
+
+  fprintf(info.fptOut, "%f\n", avg);
+       exit(EXIT_SUCCESS);
+}
+
+void
+additionalUsage()
+{
+       fprintf(stderr, "----- Additional Usage -----\n");
+}
diff --git a/src/Tools/eosMath/eosMathAverage/src/eosMathAverage.html b/src/Tools/eosMath/eosMathAverage/src/eosMathAverage.html
new file mode 100755 (executable)
index 0000000..e9c4b9e
--- /dev/null
@@ -0,0 +1,18 @@
+<HTML>
+<HEAD>
+<TITLE>eosMathAverage</TITLE>
+</HEAD>
+<BODY>
+<H1>eosMathAverage</H1>
+<H2>Usage</H2>
+<PRE>
+Usage: eosMathAverage
+Options:
+    [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :InputDataFile
+    [-o[utput]           Out                 (NULL      ).as(outFile             ) ] :Essential :OutputDataFile
+    [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile
+    [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode
+----- Additional Usage -----
+</PRE>
+</BODY>
+</HTML>
diff --git a/src/Tools/eosMath/eosMathAverage/src/eosMathAverage.pane b/src/Tools/eosMath/eosMathAverage/src/eosMathAverage.pane
new file mode 100755 (executable)
index 0000000..ef69f04
--- /dev/null
@@ -0,0 +1,17 @@
+-F 4.3 1 0 52x1+0+0 +0+0 'Cantata' cantata
+  -M 1 1 52x1+0+0 +1+0 ' ' subform
+    -P 1 0 52x1+0+1 +0+0 ' ' eosMathAverage
+      -D 1 0 9x1+0+0 'Options' _gui_options
+        -H 1  6x1+0+0 'License' 'license' $BOOTSTRAP/repos/license/License license
+        -E
+        -R 1 0 1 5x1+35+0 'Run' 'execute operation' $EOS/bin/eosMathAverage
+        -H 1  5x1+41+0 'Help' 'help page' $EOS/src/Tools/eosMath/eosMathAverage/doc/eosMathAverage.doc help
+        -Q 1 0 5.25x1+47+0 'Close'
+        -I 1 0 1 1 0 1 -1x1+1+1.500000 ' ' 'In' 'InputDataFile' i
+        -O 1 0 1 1 0 1 -1x1+1+3.000000 ' ' 'Out' 'OutputDataFile' o
+        -f 1 0 1 0 0 -1x1+1+4.500000 0 0 0.000000 0 0 0 'Trim' 'Trim[0-0.5]' trim
+        -I 1 0 1 0 0 1 -1x1+1+6.000000 ' ' 'configFile' 'ConfigurationFile' c
+        -i 1 0 1 0 0 -1x1+1+7.500000 0 0 0 0 0 'mode' 'Mode' m
+    -E
+  -E
+-E
diff --git a/src/Tools/eosMath/eosMathAverage/src/init.c b/src/Tools/eosMath/eosMathAverage/src/init.c
new file mode 100755 (executable)
index 0000000..c0e0cef
--- /dev/null
@@ -0,0 +1,95 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>
+#include "../inc/config.h"
+#include "genUtil.h"
+#include "eosString.h"
+#include "File.h"
+#include "Memory.h"
+
+
+void
+init0(eosMathAverageInfo* info)
+{
+    info->fptIn = NULL;    info->flagIn = 0;
+    info->fptOut = NULL;    info->flagOut = 0;
+    info->Trim = 0.0;    info->flagTrim = 0;
+    info->fptconfigFile = NULL;    info->flagconfigFile = 0;
+    info->mode = 0;    info->flagmode = 0;
+}
+
+void
+init1(eosMathAverageInfo* info)
+{
+    char s[1024];
+    int i;
+    if(!info->flagIn) {
+        stringGetFromFile(s, "In", stdin, stdout, 0);
+        info->In = stringGetNthWord(s, 1, " ,\t");
+        info->flagIn++;
+    }
+    if(info->flagIn) {
+        info->fptIn = fileOpen(info->In, "r");
+    }
+    
+    if(!info->flagOut) {
+        stringGetFromFile(s, "Out", stdin, stdout, 0);
+        info->Out = stringGetNthWord(s, 1, " ,\t");
+        info->flagOut++;
+    }
+    if(info->flagOut) {
+        info->fptOut = fileOpen(info->Out, "w");
+    }
+    
+    if(info->flagTrim) {
+    }
+    
+    if(info->flagconfigFile) {
+        info->fptconfigFile = fileOpen(info->configFile, "r");
+    }
+    
+    if(info->flagmode) {
+    }
+    
+}
+#ifdef KHOROS
+#include <stdio.h>
+#include "bootstrap.h"
+#include "dataserv.h"
+#include "datamanip.h"
+extern void func_usage_additions(void);
+extern void func_free_args(kexit_status status, kaddr client_data);
+extern void func_get_args(kform* pane);
+
+void
+func_usage_additions(void)
+{
+}
+void
+func_free_args(kexit_status status, kaddr client_data)
+{
+}
+void
+func_get_args(kform* pane)
+{
+}
+void
+khorosInit(int argc, char* argv[])
+{
+    char* eospath;
+    char  panepath[1024];
+    FILE* fpt;
+    
+    eospath = getenv("EOS_HOME");
+    sprintf(panepath, "%s/src/Tools/eosMath/eosMathAverage/src/eosMathAverage.pane", eospath);
+    khoros_initialize(argc, argv, "EOS");
+    fpt = fopen(panepath, "r");    if(NULL!=fpt) {
+        fclose(fpt);
+        kclui_initialize(panepath, KGEN_NONE, "EOS", "eosMathAverage",
+                     func_usage_additions,
+                     func_get_args,
+                     func_free_args);
+    }
+}
+#endif /* KHOROS */ 
diff --git a/src/Tools/eosMath/eosMathAverage/src/test/Makefile b/src/Tools/eosMath/eosMathAverage/src/test/Makefile
new file mode 100755 (executable)
index 0000000..492b39f
--- /dev/null
@@ -0,0 +1,20 @@
+include ../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../../../Config/Define.inc
+include ../../../../../Config/Define.inc
+
+all: help exec
+
+help:
+       @echo "----- Help Message Check -----"
+       @../$(OSTYPE)/$(OBJECTNAME)      -h
+
+exec:
+       @echo "----- Execution Check -----"
+       ../$(OSTYPE)/$(OBJECTNAME)  -i data/test.in -o data/test.out
+       ../$(OSTYPE)/$(OBJECTNAME)  -i data/test.in -o data/test.trim.out -trim 0.2
+       ../$(OSTYPE)/$(OBJECTNAME)  -i data/test2.in -o data/test2.out
+       ../$(OSTYPE)/$(OBJECTNAME)  -i data/test2.in -o data/test2.trim.out -trim 0.2
+       @echo "----- Calc check -----"          
+
+clean:
diff --git a/src/Tools/eosMath/eosMathAverage/src/test/data b/src/Tools/eosMath/eosMathAverage/src/test/data
new file mode 120000 (symlink)
index 0000000..2b9c328
--- /dev/null
@@ -0,0 +1 @@
+../../../../../..//data/eosMathAverage
\ No newline at end of file
diff --git a/src/Tools/eosMath/eosMathAverage/src/usage.c b/src/Tools/eosMath/eosMathAverage/src/usage.c
new file mode 100755 (executable)
index 0000000..fba7369
--- /dev/null
@@ -0,0 +1,37 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "../inc/config.h"
+
+void
+usage(char* thisProgram)
+{
+    fprintf(stderr, "Usage: %s\n", thisProgram);
+    fprintf(stderr, "Options:\n");
+    fprintf(stderr, "    [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :InputDataFile\n");
+    fprintf(stderr, "    [-o[utput]           Out                 (NULL      ).as(outFile             ) ] :Essential :OutputDataFile\n");
+    fprintf(stderr, "    [-trim               Trim                (0.0       ).as(Real                ) ] :Optional  :Trim[0-0.5]\n");
+    fprintf(stderr, "    [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile\n");
+    fprintf(stderr, "    [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode\n");
+    additionalUsage();
+}
+
+void
+htmlBeforeUsage(char* thisProgram)
+{
+    fprintf(stderr, "<HTML>\n");
+    fprintf(stderr, "<HEAD>\n");
+    fprintf(stderr, "<TITLE>%s</TITLE>\n", thisProgram);
+    fprintf(stderr, "</HEAD>\n");
+    fprintf(stderr, "<BODY>\n");
+    fprintf(stderr, "<H1>%s</H1>\n", thisProgram);
+    fprintf(stderr, "<H2>Usage</H2>\n");
+    fprintf(stderr, "<PRE>\n");
+}
+
+void
+htmlAfterUsage(char* thisProgram)
+{
+    fprintf(stderr, "</PRE>\n");
+    fprintf(stderr, "</BODY>\n");
+    fprintf(stderr, "</HTML>\n");
+}
diff --git a/src/Tools/eosMath/eosMathAverage/src/util.c b/src/Tools/eosMath/eosMathAverage/src/util.c
new file mode 100755 (executable)
index 0000000..ee5e5f2
--- /dev/null
@@ -0,0 +1,4 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "../inc/config.h"
+
diff --git a/src/Tools/eosMath/eosMathMedian/Config/Define.inc b/src/Tools/eosMath/eosMathMedian/Config/Define.inc
new file mode 100755 (executable)
index 0000000..a13adc8
--- /dev/null
@@ -0,0 +1,4 @@
+OBJECTNAME = eosMathMedian
+EXTRA_LIB  =
+EXTRA_CCOPTS =
+EXTRA_INC =
diff --git a/src/Tools/eosMath/eosMathMedian/Config/OptionControlFile b/src/Tools/eosMath/eosMathMedian/Config/OptionControlFile
new file mode 100755 (executable)
index 0000000..465fc1c
--- /dev/null
@@ -0,0 +1,6 @@
+# OptionControlFile
+# FileFormat
+"-i","-i[nput]","InputDataFile","Essential","1","1","In","inFile","NULL"
+"-o","-o[utput]","OutputDataFile","Essential","1","1","Out","outFile","NULL"
+"-c","-c[onfig]","ConfigurationFile","Optional","1","1","configFile","inFile","NULL"
+"-m","-m[ode]","Mode","Optional","1","1","mode","Integer","0"
diff --git a/src/Tools/eosMath/eosMathMedian/Config/Target.inc b/src/Tools/eosMath/eosMathMedian/Config/Target.inc
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathMedian/Makefile b/src/Tools/eosMath/eosMathMedian/Makefile
new file mode 100755 (executable)
index 0000000..3d1cbd9
--- /dev/null
@@ -0,0 +1,115 @@
+include ../../../Config/Define.inc
+include ../../Config/Define.inc
+include ../Config/Define.inc
+include Config/Define.inc
+
+all:
+       cd src; make all; cd ..
+
+install:
+       cd src; make install; cd ..
+
+
+putSF:
+       if [ -f private ] ; \
+       then \
+               echo "$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME) is private"; \
+       else \
+               cvs -z4 -d:ext:$$USER@$$EOS_SOURCEFORGE commit || cvs -z4 -d:ext:$$USER@$$EOS_SOURCEFORGE import src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME); \
+       fi
+
+put:
+       cd src; make put; cd ..
+
+clean:
+       cd src; make clean; cd ..
+
+depend:
+       cd src; make depend; cd ..
+
+check:
+       @if [ ! -d $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) ] ; then \
+               echo making directory; \
+               mkdir -p $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE); \
+       fi
+       ln -sf ../../../../../hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) src/$(OSTYPE); 
+       @$(RM) src/Makefile
+       @echo "New src/Makefile" 
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/src/Makefile src/Makefile
+       @cd src; rm -f $(OSTYPE)/.Depend; touch $(OSTYPE)/.Depend; make depend
+
+update:
+       @if [ ! -d $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) ] ; then \
+               echo making directory; \
+               mkdir -p $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE); \
+       fi
+       ln -sf ../../../../../hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) src/$(OSTYPE); 
+       @$(RM) src/Makefile
+       @echo "New src/Makefile" 
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/src/Makefile src/Makefile
+       @cd src; rm -f $(OSTYPE)/.Depend; touch $(OSTYPE)/.Depend; echo "Y" | make update      
+
+cvsupdate::
+       cvs -d $(EOS_CVSROOT) update -d 
+
+cvscommit::
+       cvs -d $(EOS_CVSROOT) commit
+
+backup:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config       ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile
+
+backup-all:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config       ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile
+       
+distribute:
+       cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config     ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE)
+       
+distribute-all:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config     ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE)
+
+eosintroduce:
+       ${EOS_HOME}/sbin/eosintroduce ${WORLDNAME} ${CLASSNAME} ${OBJECTNAME} ./ 
+
+include Config/Target.inc
diff --git a/src/Tools/eosMath/eosMathMedian/doc/Makefile b/src/Tools/eosMath/eosMathMedian/doc/Makefile
new file mode 100755 (executable)
index 0000000..8215199
--- /dev/null
@@ -0,0 +1,2 @@
+install:
+       cd ../src; make install-doc; cd ../doc  
diff --git a/src/Tools/eosMath/eosMathMedian/inc/config.h b/src/Tools/eosMath/eosMathMedian/inc/config.h
new file mode 100755 (executable)
index 0000000..d6926f4
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef CONFIG_H
+#define CONFIG_H
+
+#include "../inc/eosMathMedian.h"
+
+#endif /* CONFIG_H */
diff --git a/src/Tools/eosMath/eosMathMedian/inc/eosMathMedian.h b/src/Tools/eosMath/eosMathMedian/inc/eosMathMedian.h
new file mode 100755 (executable)
index 0000000..29872b5
--- /dev/null
@@ -0,0 +1,46 @@
+#ifndef EOSMATHMEDIAN_H
+#define EOSMATHMEDIAN_H
+#include <stdio.h>
+#include <stdlib.h>
+
+#define OPTION_FLAG     '-'
+#define OPTION_FLAG_POS (0)
+#define OPTION_POS      (1)
+
+
+
+
+typedef struct eosMathMedianInfo {
+    long flagRedirect;
+
+    long flagIn;
+    char* In;
+    FILE* fptIn;
+    
+    long flagOut;
+    char* Out;
+    FILE* fptOut;
+    
+    long flagconfigFile;
+    char* configFile;
+    FILE* fptconfigFile;
+    
+    long flagmode;
+    long mode;
+    
+} eosMathMedianInfo;
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern void argCheck(eosMathMedianInfo* info, int argc, char* avgv[]);
+extern void khorosInit(int argc, char* avgv[]);
+extern void init0(eosMathMedianInfo* info);
+extern void init1(eosMathMedianInfo* info);
+extern void usage(char* usage);
+extern void additionalUsage(void);
+extern void htmlBeforeUsage(char* usage);
+extern void htmlAfterUsage(char* usage);
+#ifdef __cplusplus
+};
+#endif
+#endif /* EOSMATHMEDIAN_H */
diff --git a/src/Tools/eosMath/eosMathMedian/src/.Depend b/src/Tools/eosMath/eosMathMedian/src/.Depend
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathMedian/src/.Source b/src/Tools/eosMath/eosMathMedian/src/.Source
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathMedian/src/Makefile b/src/Tools/eosMath/eosMathMedian/src/Makefile
new file mode 100755 (executable)
index 0000000..a360703
--- /dev/null
@@ -0,0 +1,430 @@
+include ../Config/Define.inc
+include ../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../../../Config/Define.inc
+
+EOSHOME=../../../../../
+DSTDIR=$(EOSHOME)/bin
+DSTDOC=$(EOSHOME)/doc
+DSTTAR=$(EOSHOME)/tar
+
+INCFILES   = 
+
+LIBFILES   = \
+                       $(LIBPREFIX)EosObjects$(LIBSUFFIX) 
+
+LIBFILESDEBUG   = \
+                       $(LIBPREFIX)EosObjects.debug$(LIBSUFFIX) 
+
+SRCC  = \
+                       $(OBJECTNAME).c \
+                       init.c \
+                       argCheck.c \
+                       usage.c  \
+                       util.c \
+
+SRCCXX  = \
+                       $(OBJECTNAME).cc \
+                       init.cc \
+                       argCheck.cc \
+                       usage.cc  \
+                       util.cc \
+
+MODULES    = \
+                       $(OBJECTNAME).o \
+                       init.o \
+                       argCheck.o \
+                       usage.o  \
+                       util.o \
+
+REALMODULES    = \
+                       $(OSTYPE)/$(OBJECTNAME).o \
+                       $(OSTYPE)/init.o \
+                       $(OSTYPE)/argCheck.o \
+                       $(OSTYPE)/usage.o \
+                       $(OSTYPE)/util.o 
+
+MODULESDEBUG    = \
+                       $(OBJECTNAME).debugo \
+                       init.debugo \
+                       argCheck.debugo \
+                       usage.debugo  \
+                       util.debugo \
+
+REALMODULESDEBUG    = \
+                       $(OSTYPE)/$(OBJECTNAME).debugo \
+                       $(OSTYPE)/init.debugo \
+                       $(OSTYPE)/argCheck.debugo \
+                       $(OSTYPE)/usage.debugo \
+                       $(OSTYPE)/util.debugo 
+
+
+all: $(OSTYPE)/$(OBJECTNAME) 
+       if [ ! -L $(OSTYPE) ] ; then \
+               moveHostdependent; \
+       fi
+
+debug: $(OSTYPE)/$(OBJECTNAME).debug
+
+cudagdb: $(OSTYPE)/$(OBJECTNAME).cudagdb
+
+
+$(OSTYPE)/$(OBJECTNAME)::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME)  WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+$(OSTYPE)/$(OBJECTNAME).debug::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME).debug  WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+$(OSTYPE)/$(OBJECTNAME).cudagdb::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME).cudagdb WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+cvsupdate::
+       cvs -d $(EOS_CVSROOT) update -d 
+
+cvscommit::
+       cvs -d $(EOS_CVSROOT) commit 
+
+edit:
+       @if [ -r $(OBJECTNAME).c ]; \
+       then \
+               sccsEdit $(OBJECTNAME).c; \
+       else \
+               echo "Source files are already editable"; \
+       fi
+       @if [ -r wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsEdit $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are already editable."; \
+       fi
+       @if [ -r ruby/$(OBJECTNAME).rb ]; \
+       then \
+               cd ruby; sccsEdit $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are already editable."; \
+       fi
+       @if [ -r perl/$(OBJECTNAME).pl ]; \
+       then \
+               cd perl; sccsEdit $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (perl) are already editable."; \
+       fi
+       @if [ -r ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsEdit OptionControlFile; \
+       else \
+               echo "OptionControlFile are already editable."; \
+       fi
+       
+unedit:
+       @if [ -w $(OBJECTNAME).c ]; \
+       then \
+               sccsUnedit $(OBJECTNAME).c; \
+       else \
+               echo "Source files are not editable"; \
+       fi
+       @if [ -w wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsUnedit $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are not editable."; \
+       fi
+       @if [ -w ruby/$(OBJECTNAME).rb]; \
+       then \
+               cd ruby; sccsUnedit $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are not editable."; \
+       fi
+       @if [ -w perl/$(OBJECTNAME).pl ]; \
+       then \
+               cd perl; sccsUnedit $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (ruby) are not editable."; \
+       fi
+       @if [ -w ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsUnedit OptionControlFile; \
+       else \
+               echo "OptionControlFile are not editable."; \
+       fi
+       
+report:
+       @if [ -r $(OBJECTNAME).c ]; \
+       then \
+               sccsReport $(OBJECTNAME).c; \
+       else \
+               echo "Source files are already editable"; \
+       fi
+       @if [ -r wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsReport $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are already editable."; \
+       fi
+       @if [ -r ruby/$(OBJECTNAME).rb ]; \
+       then \
+               cd ruby; sccsReport $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are already editable."; \
+       fi
+       @if [ -r perl/$(OBJECTNAME).pl ] ; \
+       then \
+               cd perl; sccsReport $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (perl) are already editable."; \
+       fi
+       @if [ -r ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsReport OptionControlFile; \
+       else \
+               echo "OptionControlFile are already editable."; \
+       fi
+
+clean : 
+       rm -f *.debugo $(OSTYPE)/*.debugo *.cudagdbo $(OSTYPE)/*.cudagdbo *.o $(OSTYPE)/*.o *.linkinfo $(OSTYPE)/*.linkinfo \
+               $(OSTYPE)/$(OBJECTNAME) $(OSTYPE)/*.$(OSTYPE) \
+               $(OSTYPE)/$(OBJECTNAME).debug $(OSTYPE)/*.$(OSTYPE).debug \
+               $(OSTYPE)/$(OBJECTNAME).cudagdb $(OSTYPE)/*.$(OSTYPE).cudagdb \
+               $(OSTYPE)/$(OBJECTNAME).linkinfo $(OSTYPE)/*.$(OSTYPE).linkinfo \
+               *.bak *.$(OSTYPE) core
+
+install: install-bin install-doc install-wish install-ruby install-shell install-perl
+       @if [ dummy$(KHOROS_KENGOBJ) != dummy ]  ; \
+       then \
+               if [ -x $(KHOROS_KGENOBJ) ] ;  \
+               then \
+                       make install-khoros ; \
+               fi; \
+       fi 
+
+install-bin:$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME) 
+
+$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME):$(OSTYPE)/$(OBJECTNAME) $(DSTDIR)/$(OBJECTNAME) 
+       @echo ---- Installing to bin
+       @echo $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME)
+       @if [ ! -d $(DSTDIR)/$(OSTYPE) ]; \
+       then \
+               mkdir $(DSTDIR)/$(OSTYPE); \
+       fi
+       @if [ -x $(OSTYPE)/$(OBJECTNAME) ]; \
+       then \
+               echo "Compilation is complete"; \
+               $(RM) -f $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME); \
+               $(CD) $(OSTYPE); $(INSTALL) -m 555 $(OBJECTNAME) ../$(DSTDIR)/$(OSTYPE); \
+               $(CHMOD) 555 ../$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME); \
+       else \
+               echo "Compilation is incomplete. $(OBJECTNAME)"; \
+       fi
+       @echo ---- end of bin
+
+install-wish:
+       @if [ -d wish ]; \
+       then \
+               echo "---- Tcl/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/wish/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/wish/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f wish/* $(DSTDIR)/wish/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/wish/$(OBJECTNAME)/*  ;\
+               touch $(DSTDIR)/wish/$(OBJECTNAME)/tclIndex;\
+               $(CHMOD) 666 $(DSTDIR)/wish/$(OBJECTNAME)/tclIndex;\
+               echo "---- Tcl/Tk file Installed";\
+       fi
+
+install-ruby:
+       @if [ -d ruby ]; \
+       then \
+               echo "---- Ruby/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/ruby/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/ruby/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f ruby/* $(DSTDIR)/ruby/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/ruby/$(OBJECTNAME)/* ; \
+               echo "---- Ruby/Tk file Installed"; \
+       fi
+
+install-perl:
+       @if [ -d perl ]; \
+       then \
+               echo "---- Perl/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/perl/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/perl/$(OBJECTNAME) ; \
+               fi; \
+               $(CP) -f perl/* $(DSTDIR)/perl/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/perl/$(OBJECTNAME)/* ; \
+               echo "---- Perl/Tk file Installed"; \
+       fi
+
+install-shell:
+       @if [ ! -d $(DSTDIR)/shell/$(OBJECTNAME) ]; \
+       then \
+               mkdir $(DSTDIR)/shell/$(OBJECTNAME) ; \
+       fi
+       @if [ -d shell ]; \
+       then \
+               echo "---- Shell file Install"; \
+               if [ ! -d $(DSTDIR)/shell/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/shell/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f shell/* $(DSTDIR)/shell/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/shell/$(OBJECTNAME)/*; \
+               echo "---- Shell file Installed"; \
+       fi
+
+install-khoros:
+       @echo Installing to khoros
+       @if [ ! -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KGENOBJ) ]; \
+       then \
+               echo kgenobj;\
+               $(KHOROS_KGENOBJ) -tb Eos -oname $(OBJECTNAME) -type script -pane -cantata true -cat Eos -subcat $(CLASSNAME) -description $(OBJECTNAME) -bname $(OBJECTNAME) -form  -lang ksh ; \
+       fi
+       @if [ ! -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KSET) ]; \
+       then \
+               $(KHOROS_KSET) -tb Eos -oname $(OBJECTNAME) -icon $(OBJECTNAME) ; \
+       fi
+       @if [ -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KSET) ]; \
+       then \
+               $(CHMOD) -R 775 ../../../../../objects/script/$(OBJECTNAME) ; \
+               if [ $?  ] ; \
+               then \
+                       echo "-- setting khoros ---" ; \
+                       if [ -d ../../../../../objects/script/$(OBJECTNAME)/uis/ ] ; \
+                       then \
+                               $(CD) ../../../../../objects/script/$(OBJECTNAME)/uis/ ; \
+                               $(RM) -f $(OBJECTNAME).pane ; \
+                               $(LN) -s ../../../../src/Tools/$(CLASSNAME)/$(OBJECTNAME)/src/$(OBJECTNAME).pane $(OBJECTNAME).pane; \
+                               $(CD) ../../ ; \
+                               $(CHMOD) -R 555 $(OBJECTNAME); \
+                       else \
+                               echo "../../../../../objects/script/$(OBJECTNAME)/uis/ does not exist."; \
+                       fi ; \
+               else \
+                       echo "Failed !!: Cannot chage mode in installing  $(OBJECTNAME) to khoros system"; \
+               fi ; \
+               echo "-- end of khoros-installing"; \
+       fi
+
+install-doc: html 
+       @if [ ! -d $(DSTDOC)/SmallTools ]; \
+       then \
+               mkdir $(DSTDOC)/SmallTools ;\
+       fi
+       @if [ -f $(DSTDOC)/SmallTools/$(OBJECTNAME).html ]; \
+       then \
+               $(RM) -f $(DSTDOC)/SmallTools/$(OBJECTNAME).html ;\
+       fi
+       @$(CP) $(OBJECTNAME).html  $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @$(CHMOD) 444 $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @if [ -f ../doc/*.html ]; \
+       then \
+               $(CP) ../doc/*.html  $(DSTDOC)/SmallTools/ ;\
+       fi
+       @$(CHMOD) 444 $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @if [ -f $(DSTDOC)/SmallTools/Makefile ]; \
+       then \
+               cd $(DSTDOC)/SmallTools; $(MAKE); \
+       fi
+
+html: $(OBJECTNAME).html
+
+configFileRead:
+       @ctrl2configFileRead $(CLASSNAME) $(OBJECTNAME) ../Config/OptionControlFile
+
+$(OBJECTNAME).html: $(OSTYPE)/$(OBJECTNAME)
+       @echo creating html
+       @$(OSTYPE)/$(OBJECTNAME) -html 2> $(OBJECTNAME).html.tmp
+       @sed -e s/$(OSTYPE)\\/// $(OBJECTNAME).html.tmp > $(OBJECTNAME).html
+       @$(RM) $(OBJECTNAME).html.tmp
+
+$(DSTDIR)/$(OBJECTNAME): $(OSTYPE)/$(OBJECTNAME)
+       @ln -s -f ../sbin/MachineIndependent $@
+
+depend::
+       @echo dependency checking now
+       @if [ ! -L $(OSTYPE) ] ; then \
+               moveHostdependent; \
+       fi
+       rm -f $(OSTYPE)/.Depend 
+       #echo C
+       @if [ -f $(OBJECTNAME).c ] ; \
+       then \
+               echo "dependency: *.c"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) *.c   ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) *.c                  >> $(OSTYPE)/.Depend ; \
+       fi
+       #echo CC
+       @if [ -f $(OBJECTNAME).cc ] ; \
+       then \
+               echo "dependency: *.cc"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cc ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cc >> $(OSTYPE)/.Depend ; \
+       fi
+       @if [ -f $(OBJECTNAME).ccm ] ; \
+       then \
+               echo "dependency: *.ccm"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.ccm ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.ccm >> $(OSTYPE)/.Depend ; \
+       fi
+       @if [ -f $(OBJECTNAME).cu ] ; \
+       then \
+               echo "dependency: *.cu"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cu ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cu >> $(OSTYPE)/.Depend ; \
+       fi
+
+update:../Config/OptionControlFile
+       maketool $(CLASSNAME) $(OBJECTNAME) update
+
+updateNoAns:../Config/OptionControlFile
+       maketool $(CLASSNAME) $(OBJECTNAME) update N
+
+changeName::
+
+Test:$(OSTYPE)/$(OBJECTNAME) TestDir
+       @if [ -f test/Makefile ] ; \
+       then \
+               cd test; make ; \
+       else \
+               echo "No test Makefile"; \
+       fi
+
+TestDir::
+       @if [ ! -d test ] ; \
+       then \
+               echo "Creating test dir"; \
+               mkdir  test; \
+       fi
+       @if [ ! -f test/Makefile ] ; \
+       then \
+               echo "Creating Makefile"; \
+               cd test; \
+               protoTestMakefileCreate; \
+       fi
+       @if [ ! -d test/data ]; \
+       then \
+               mkdir $(EOSHOME)/data/$(OBJECTNAME); \
+               cd test; \
+               ln -sf ../$(EOSHOME)/data/$(OBJECTNAME) data; \
+       fi 
+
+tar::
+       cd $(DSTTAR); tar cvf Tools.$(CLASSNAME).$(OBJECTNAME).tar ../bin/$(OBJECTNAME) \
+                                                            ../bin/*/$(OBJECTNAME).* \
+                                                            ../src/Tools/$(CLASSNAME)/$(OBJECTNAME) \
+                               ; gzip Tools.$(CLASSNAME).$(OBJECTNAME).tar
+
+-include $(OSTYPE)/.Depend
+-include ../Config/Target.inc
diff --git a/src/Tools/eosMath/eosMathMedian/src/X86MAC64 b/src/Tools/eosMath/eosMathMedian/src/X86MAC64
new file mode 120000 (symlink)
index 0000000..8afbbb6
--- /dev/null
@@ -0,0 +1 @@
+../../../../../hostdepend/X86MAC64/src/Tools/eosMath/eosMathMedian/src/X86MAC64
\ No newline at end of file
diff --git a/src/Tools/eosMath/eosMathMedian/src/argCheck.c b/src/Tools/eosMath/eosMathMedian/src/argCheck.c
new file mode 100755 (executable)
index 0000000..21dfe5c
--- /dev/null
@@ -0,0 +1,96 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>
+#include "../inc/config.h"
+#include "genUtil.h"
+#include "eosString.h"
+#include "File.h"
+#include "Memory.h"
+
+
+void
+argCheck(eosMathMedianInfo* info, int argc, char* argv[])
+{
+    long i;
+    char s[1024];
+    FILE* fpt;
+    
+    if(NULL==(fpt=fopen(".EosLog", "a+"))) { 
+        
+    } else {
+        for(i=0; i<argc; i++) {
+            fprintf(fpt, "%s ", argv[i]);
+        }
+        fprintf(fpt, "\n");
+        fclose(fpt);
+    }
+    for(i=1; i<argc; i++) {
+        if(OPTION_FLAG==argv[i][OPTION_FLAG_POS]) {
+            SSWITCH(argv[i]+OPTION_POS)
+                SCASE("i") {
+                    if(i+1<argc) {
+                        info->In = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagIn++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("o") {
+                    if(i+1<argc) {
+                        info->Out = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagOut++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("c") {
+                    if(i+1<argc) {
+                        info->configFile = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagconfigFile++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("m") {
+                    if(i+1<argc) {
+                        info->mode = stringGetNthIntegerData(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagmode++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("h") {
+                    usage(argv[0]);
+                    exit(EXIT_SUCCESS);
+                    break;
+                }
+                SCASE("html") {
+                    htmlBeforeUsage(argv[0]);
+                    usage(argv[0]);
+                    htmlAfterUsage(argv[0]);
+                    exit(EXIT_SUCCESS);
+                    break;
+                }
+                SDEFAULT {
+                    fprintf(stderr, "Not Supported Options: :%s\n", argv[i]);
+                    usage(argv[0]);
+                    exit(EXIT_FAILURE);
+                    break;
+                }
+            SSWITCHEND;
+        } 
+    } 
+} 
diff --git a/src/Tools/eosMath/eosMathMedian/src/eosMathMedian.c b/src/Tools/eosMath/eosMathMedian/src/eosMathMedian.c
new file mode 100755 (executable)
index 0000000..d90e2bb
--- /dev/null
@@ -0,0 +1,90 @@
+/*
+# eosMathMedian : $Revision$  
+# $Date$ 
+# Created by $Author$
+# Usage : eosMathMedian
+# Attention
+#   $Loccker$
+#      $State$ 
+#
+*/
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>                  
+#define GLOBAL_DECLARATION
+#include "../inc/config.h"
+
+#define DEBUG
+#include "genUtil.h"
+#include "Memory.h"
+#include "Array.h"
+#include "eosMath.h"
+
+/*
+Example:
+typedef struct leosMathMedianInfo {
+       float a;
+       int   b;
+} leosMathMedianInfo;
+
+typedef enum leosMathMedianMode {
+       a=0,
+       b=1
+} leosMathMedianMode;
+*/
+
+int
+main(int argc, char* argv[]) 
+{
+       eosMathMedianInfo info;
+  Array in;
+  int n, i;
+  double* v;
+  double med;
+
+       init0(&info);
+  argCheck(&info, argc, argv);
+  init1(&info);
+
+       DEBUGPRINT("Program Start\n");
+
+ arrayReadFromFile(info.fptIn, &in, "in main");
+
+  if(1<in.dim) {
+    fprintf(stderr, "Not supported dim: %ld\n", in.dim);
+    exit(EXIT_FAILURE);
+  }
+  n = in.n[0];
+  v = memoryAllocate(sizeof(double)*n, "in main");
+  for(i=0; i<n; i++) {
+    v[i] = in.A[i];
+  }
+
+  switch(info.mode) {
+    case 0: {
+      med = eosMathMedian(v, n);
+      break;
+    }
+    case 1: {
+      med = eosMathHodgesLehmannEstimator(v, n);
+      break;
+    }
+    default: {
+      fprintf(stderr, "Not supported mode: %ld\n", info.mode);
+      exit(EXIT_FAILURE);
+    }
+  }
+
+  fprintf(info.fptOut, "%f\n", med);
+       exit(EXIT_SUCCESS);
+}
+
+void
+additionalUsage()
+{
+       fprintf(stderr, "----- Additional Usage -----\n");
+       fprintf(stderr, "-m 0 : median\n");
+       fprintf(stderr, "-m 1 : HodgesLehmannEstimator\n");
+
+}
diff --git a/src/Tools/eosMath/eosMathMedian/src/eosMathMedian.html b/src/Tools/eosMath/eosMathMedian/src/eosMathMedian.html
new file mode 100644 (file)
index 0000000..2c6483a
--- /dev/null
@@ -0,0 +1,18 @@
+<HTML>
+<HEAD>
+<TITLE>eosMathMedian</TITLE>
+</HEAD>
+<BODY>
+<H1>eosMathMedian</H1>
+<H2>Usage</H2>
+<PRE>
+Usage: eosMathMedian
+Options:
+    [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :InputDataFile
+    [-o[utput]           Out                 (NULL      ).as(outFile             ) ] :Essential :OutputDataFile
+    [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile
+    [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode
+----- Additional Usage -----
+</PRE>
+</BODY>
+</HTML>
diff --git a/src/Tools/eosMath/eosMathMedian/src/eosMathMedian.pane b/src/Tools/eosMath/eosMathMedian/src/eosMathMedian.pane
new file mode 100755 (executable)
index 0000000..9fa615a
--- /dev/null
@@ -0,0 +1,16 @@
+-F 4.3 1 0 52x1+0+0 +0+0 'Cantata' cantata
+  -M 1 1 52x1+0+0 +1+0 ' ' subform
+    -P 1 0 52x1+0+1 +0+0 ' ' eosMathMedian
+      -D 1 0 9x1+0+0 'Options' _gui_options
+        -H 1  6x1+0+0 'License' 'license' $BOOTSTRAP/repos/license/License license
+        -E
+        -R 1 0 1 5x1+35+0 'Run' 'execute operation' $EOS/bin/eosMathMedian
+        -H 1  5x1+41+0 'Help' 'help page' $EOS/src/Tools/eosMath/eosMathMedian/doc/eosMathMedian.doc help
+        -Q 1 0 5.25x1+47+0 'Close'
+        -I 1 0 1 1 0 1 -1x1+1+1.500000 ' ' 'In' 'InputDataFile' i
+        -O 1 0 1 1 0 1 -1x1+1+3.000000 ' ' 'Out' 'OutputDataFile' o
+        -I 1 0 1 0 0 1 -1x1+1+4.500000 ' ' 'configFile' 'ConfigurationFile' c
+        -i 1 0 1 0 0 -1x1+1+6.000000 0 0 0 0 0 'mode' 'Mode' m
+    -E
+  -E
+-E
diff --git a/src/Tools/eosMath/eosMathMedian/src/init.c b/src/Tools/eosMath/eosMathMedian/src/init.c
new file mode 100755 (executable)
index 0000000..b559d15
--- /dev/null
@@ -0,0 +1,91 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>
+#include "../inc/config.h"
+#include "genUtil.h"
+#include "eosString.h"
+#include "File.h"
+#include "Memory.h"
+
+
+void
+init0(eosMathMedianInfo* info)
+{
+    info->fptIn = NULL;    info->flagIn = 0;
+    info->fptOut = NULL;    info->flagOut = 0;
+    info->fptconfigFile = NULL;    info->flagconfigFile = 0;
+    info->mode = 0;    info->flagmode = 0;
+}
+
+void
+init1(eosMathMedianInfo* info)
+{
+    char s[1024];
+    int i;
+    if(!info->flagIn) {
+        stringGetFromFile(s, "In", stdin, stdout, 0);
+        info->In = stringGetNthWord(s, 1, " ,\t");
+        info->flagIn++;
+    }
+    if(info->flagIn) {
+        info->fptIn = fileOpen(info->In, "r");
+    }
+    
+    if(!info->flagOut) {
+        stringGetFromFile(s, "Out", stdin, stdout, 0);
+        info->Out = stringGetNthWord(s, 1, " ,\t");
+        info->flagOut++;
+    }
+    if(info->flagOut) {
+        info->fptOut = fileOpen(info->Out, "w");
+    }
+    
+    if(info->flagconfigFile) {
+        info->fptconfigFile = fileOpen(info->configFile, "r");
+    }
+    
+    if(info->flagmode) {
+    }
+    
+}
+#ifdef KHOROS
+#include <stdio.h>
+#include "bootstrap.h"
+#include "dataserv.h"
+#include "datamanip.h"
+extern void func_usage_additions(void);
+extern void func_free_args(kexit_status status, kaddr client_data);
+extern void func_get_args(kform* pane);
+
+void
+func_usage_additions(void)
+{
+}
+void
+func_free_args(kexit_status status, kaddr client_data)
+{
+}
+void
+func_get_args(kform* pane)
+{
+}
+void
+khorosInit(int argc, char* argv[])
+{
+    char* eospath;
+    char  panepath[1024];
+    FILE* fpt;
+    
+    eospath = getenv("EOS_HOME");
+    sprintf(panepath, "%s/src/Tools/eosMath/eosMathMedian/src/eosMathMedian.pane", eospath);
+    khoros_initialize(argc, argv, "EOS");
+    fpt = fopen(panepath, "r");    if(NULL!=fpt) {
+        fclose(fpt);
+        kclui_initialize(panepath, KGEN_NONE, "EOS", "eosMathMedian",
+                     func_usage_additions,
+                     func_get_args,
+                     func_free_args);
+    }
+}
+#endif /* KHOROS */ 
diff --git a/src/Tools/eosMath/eosMathMedian/src/test/Makefile b/src/Tools/eosMath/eosMathMedian/src/test/Makefile
new file mode 100644 (file)
index 0000000..81a7d4e
--- /dev/null
@@ -0,0 +1,20 @@
+include ../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../../../Config/Define.inc
+include ../../../../../Config/Define.inc
+
+all: help exec
+
+help:
+       @echo "----- Help Message Check -----"
+       @../$(OSTYPE)/$(OBJECTNAME)      -h
+
+exec:
+       @echo "----- Execution Check -----"
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test.in -o data/test.out
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test.in -o data/test-1.out -m 1
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test2.in -o data/test2.out
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test2.in -o data/test2-1.out -m 1
+       @echo "----- Calc check -----"          
+
+clean:
diff --git a/src/Tools/eosMath/eosMathMedian/src/test/data b/src/Tools/eosMath/eosMathMedian/src/test/data
new file mode 120000 (symlink)
index 0000000..cdb3009
--- /dev/null
@@ -0,0 +1 @@
+../../../../../..//data/eosMathMedian
\ No newline at end of file
diff --git a/src/Tools/eosMath/eosMathMedian/src/usage.c b/src/Tools/eosMath/eosMathMedian/src/usage.c
new file mode 100755 (executable)
index 0000000..c3e4fc6
--- /dev/null
@@ -0,0 +1,36 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "../inc/config.h"
+
+void
+usage(char* thisProgram)
+{
+    fprintf(stderr, "Usage: %s\n", thisProgram);
+    fprintf(stderr, "Options:\n");
+    fprintf(stderr, "    [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :InputDataFile\n");
+    fprintf(stderr, "    [-o[utput]           Out                 (NULL      ).as(outFile             ) ] :Essential :OutputDataFile\n");
+    fprintf(stderr, "    [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile\n");
+    fprintf(stderr, "    [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode\n");
+    additionalUsage();
+}
+
+void
+htmlBeforeUsage(char* thisProgram)
+{
+    fprintf(stderr, "<HTML>\n");
+    fprintf(stderr, "<HEAD>\n");
+    fprintf(stderr, "<TITLE>%s</TITLE>\n", thisProgram);
+    fprintf(stderr, "</HEAD>\n");
+    fprintf(stderr, "<BODY>\n");
+    fprintf(stderr, "<H1>%s</H1>\n", thisProgram);
+    fprintf(stderr, "<H2>Usage</H2>\n");
+    fprintf(stderr, "<PRE>\n");
+}
+
+void
+htmlAfterUsage(char* thisProgram)
+{
+    fprintf(stderr, "</PRE>\n");
+    fprintf(stderr, "</BODY>\n");
+    fprintf(stderr, "</HTML>\n");
+}
diff --git a/src/Tools/eosMath/eosMathMedian/src/util.c b/src/Tools/eosMath/eosMathMedian/src/util.c
new file mode 100755 (executable)
index 0000000..ee5e5f2
--- /dev/null
@@ -0,0 +1,4 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "../inc/config.h"
+
diff --git a/src/Tools/eosMath/eosMathSorting/Config/Define.inc b/src/Tools/eosMath/eosMathSorting/Config/Define.inc
new file mode 100755 (executable)
index 0000000..2d2e3d1
--- /dev/null
@@ -0,0 +1,4 @@
+OBJECTNAME = eosMathSorting
+EXTRA_LIB  =
+EXTRA_CCOPTS =
+EXTRA_INC =
diff --git a/src/Tools/eosMath/eosMathSorting/Config/OptionControlFile b/src/Tools/eosMath/eosMathSorting/Config/OptionControlFile
new file mode 100755 (executable)
index 0000000..465fc1c
--- /dev/null
@@ -0,0 +1,6 @@
+# OptionControlFile
+# FileFormat
+"-i","-i[nput]","InputDataFile","Essential","1","1","In","inFile","NULL"
+"-o","-o[utput]","OutputDataFile","Essential","1","1","Out","outFile","NULL"
+"-c","-c[onfig]","ConfigurationFile","Optional","1","1","configFile","inFile","NULL"
+"-m","-m[ode]","Mode","Optional","1","1","mode","Integer","0"
diff --git a/src/Tools/eosMath/eosMathSorting/Config/Target.inc b/src/Tools/eosMath/eosMathSorting/Config/Target.inc
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathSorting/Makefile b/src/Tools/eosMath/eosMathSorting/Makefile
new file mode 100755 (executable)
index 0000000..3d1cbd9
--- /dev/null
@@ -0,0 +1,115 @@
+include ../../../Config/Define.inc
+include ../../Config/Define.inc
+include ../Config/Define.inc
+include Config/Define.inc
+
+all:
+       cd src; make all; cd ..
+
+install:
+       cd src; make install; cd ..
+
+
+putSF:
+       if [ -f private ] ; \
+       then \
+               echo "$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME) is private"; \
+       else \
+               cvs -z4 -d:ext:$$USER@$$EOS_SOURCEFORGE commit || cvs -z4 -d:ext:$$USER@$$EOS_SOURCEFORGE import src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME); \
+       fi
+
+put:
+       cd src; make put; cd ..
+
+clean:
+       cd src; make clean; cd ..
+
+depend:
+       cd src; make depend; cd ..
+
+check:
+       @if [ ! -d $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) ] ; then \
+               echo making directory; \
+               mkdir -p $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE); \
+       fi
+       ln -sf ../../../../../hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) src/$(OSTYPE); 
+       @$(RM) src/Makefile
+       @echo "New src/Makefile" 
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/src/Makefile src/Makefile
+       @cd src; rm -f $(OSTYPE)/.Depend; touch $(OSTYPE)/.Depend; make depend
+
+update:
+       @if [ ! -d $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) ] ; then \
+               echo making directory; \
+               mkdir -p $(EOS_HOME)/hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE); \
+       fi
+       ln -sf ../../../../../hostdepend/$(OSTYPE)/src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE) src/$(OSTYPE); 
+       @$(RM) src/Makefile
+       @echo "New src/Makefile" 
+       @$(CP) ../../../Config/Template/$(WORLDNAME)Template.Dir/src/Makefile src/Makefile
+       @cd src; rm -f $(OSTYPE)/.Depend; touch $(OSTYPE)/.Depend; echo "Y" | make update      
+
+cvsupdate::
+       cvs -d $(EOS_CVSROOT) update -d 
+
+cvscommit::
+       cvs -d $(EOS_CVSROOT) commit
+
+backup:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config       ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar uvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile
+
+backup-all:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config       ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar rvf ${EOS_HOME}/backup/EosBase.tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile
+       
+distribute:
+       cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config     ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile ; \
+       tar uvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE)
+       
+distribute-all:
+       @cd ../../../..;     \
+       echo $(OBJECTNAME) ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Config     ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/Makefile ;\
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/.[A-z]* ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/inc ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/doc; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/wish; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/[A-z]*.[A-z]*; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/.[A-z]*; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/Makefile ; \
+       tar rvf ${EOS_HOME}/distribute/src.$(OSTYPE).tar src/$(WORLDNAME)/$(CLASSNAME)/$(OBJECTNAME)/src/$(OSTYPE)
+
+eosintroduce:
+       ${EOS_HOME}/sbin/eosintroduce ${WORLDNAME} ${CLASSNAME} ${OBJECTNAME} ./ 
+
+include Config/Target.inc
diff --git a/src/Tools/eosMath/eosMathSorting/doc/Makefile b/src/Tools/eosMath/eosMathSorting/doc/Makefile
new file mode 100755 (executable)
index 0000000..8215199
--- /dev/null
@@ -0,0 +1,2 @@
+install:
+       cd ../src; make install-doc; cd ../doc  
diff --git a/src/Tools/eosMath/eosMathSorting/inc/config.h b/src/Tools/eosMath/eosMathSorting/inc/config.h
new file mode 100755 (executable)
index 0000000..3c9eb24
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef CONFIG_H
+#define CONFIG_H
+
+#include "../inc/eosMathSorting.h"
+
+#endif /* CONFIG_H */
diff --git a/src/Tools/eosMath/eosMathSorting/inc/eosMathSorting.h b/src/Tools/eosMath/eosMathSorting/inc/eosMathSorting.h
new file mode 100755 (executable)
index 0000000..3130d42
--- /dev/null
@@ -0,0 +1,46 @@
+#ifndef EOSMATHSORTING_H
+#define EOSMATHSORTING_H
+#include <stdio.h>
+#include <stdlib.h>
+
+#define OPTION_FLAG     '-'
+#define OPTION_FLAG_POS (0)
+#define OPTION_POS      (1)
+
+
+
+
+typedef struct eosMathSortingInfo {
+    long flagRedirect;
+
+    long flagIn;
+    char* In;
+    FILE* fptIn;
+    
+    long flagOut;
+    char* Out;
+    FILE* fptOut;
+    
+    long flagconfigFile;
+    char* configFile;
+    FILE* fptconfigFile;
+    
+    long flagmode;
+    long mode;
+    
+} eosMathSortingInfo;
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern void argCheck(eosMathSortingInfo* info, int argc, char* avgv[]);
+extern void khorosInit(int argc, char* avgv[]);
+extern void init0(eosMathSortingInfo* info);
+extern void init1(eosMathSortingInfo* info);
+extern void usage(char* usage);
+extern void additionalUsage(void);
+extern void htmlBeforeUsage(char* usage);
+extern void htmlAfterUsage(char* usage);
+#ifdef __cplusplus
+};
+#endif
+#endif /* EOSMATHSORTING_H */
diff --git a/src/Tools/eosMath/eosMathSorting/src/.Depend b/src/Tools/eosMath/eosMathSorting/src/.Depend
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathSorting/src/.Source b/src/Tools/eosMath/eosMathSorting/src/.Source
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/src/Tools/eosMath/eosMathSorting/src/Makefile b/src/Tools/eosMath/eosMathSorting/src/Makefile
new file mode 100755 (executable)
index 0000000..a360703
--- /dev/null
@@ -0,0 +1,430 @@
+include ../Config/Define.inc
+include ../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../../../Config/Define.inc
+
+EOSHOME=../../../../../
+DSTDIR=$(EOSHOME)/bin
+DSTDOC=$(EOSHOME)/doc
+DSTTAR=$(EOSHOME)/tar
+
+INCFILES   = 
+
+LIBFILES   = \
+                       $(LIBPREFIX)EosObjects$(LIBSUFFIX) 
+
+LIBFILESDEBUG   = \
+                       $(LIBPREFIX)EosObjects.debug$(LIBSUFFIX) 
+
+SRCC  = \
+                       $(OBJECTNAME).c \
+                       init.c \
+                       argCheck.c \
+                       usage.c  \
+                       util.c \
+
+SRCCXX  = \
+                       $(OBJECTNAME).cc \
+                       init.cc \
+                       argCheck.cc \
+                       usage.cc  \
+                       util.cc \
+
+MODULES    = \
+                       $(OBJECTNAME).o \
+                       init.o \
+                       argCheck.o \
+                       usage.o  \
+                       util.o \
+
+REALMODULES    = \
+                       $(OSTYPE)/$(OBJECTNAME).o \
+                       $(OSTYPE)/init.o \
+                       $(OSTYPE)/argCheck.o \
+                       $(OSTYPE)/usage.o \
+                       $(OSTYPE)/util.o 
+
+MODULESDEBUG    = \
+                       $(OBJECTNAME).debugo \
+                       init.debugo \
+                       argCheck.debugo \
+                       usage.debugo  \
+                       util.debugo \
+
+REALMODULESDEBUG    = \
+                       $(OSTYPE)/$(OBJECTNAME).debugo \
+                       $(OSTYPE)/init.debugo \
+                       $(OSTYPE)/argCheck.debugo \
+                       $(OSTYPE)/usage.debugo \
+                       $(OSTYPE)/util.debugo 
+
+
+all: $(OSTYPE)/$(OBJECTNAME) 
+       if [ ! -L $(OSTYPE) ] ; then \
+               moveHostdependent; \
+       fi
+
+debug: $(OSTYPE)/$(OBJECTNAME).debug
+
+cudagdb: $(OSTYPE)/$(OBJECTNAME).cudagdb
+
+
+$(OSTYPE)/$(OBJECTNAME)::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME)  WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+$(OSTYPE)/$(OBJECTNAME).debug::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME).debug  WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+$(OSTYPE)/$(OBJECTNAME).cudagdb::
+       @$(RM) -f $(OSTYPE)/Makefile ; \
+       $(CP) $(EOS_HOME)/src/Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile $(OSTYPE)/Makefile ; \
+       cd $(OSTYPE); \
+       $(MAKE) $(OBJECTNAME).cudagdb WORLDNAME=$(WORLDNAME) CLASSNAME=$(CLASSNAME) OBJECTNAME=$(OBJECTNAME)
+
+cvsupdate::
+       cvs -d $(EOS_CVSROOT) update -d 
+
+cvscommit::
+       cvs -d $(EOS_CVSROOT) commit 
+
+edit:
+       @if [ -r $(OBJECTNAME).c ]; \
+       then \
+               sccsEdit $(OBJECTNAME).c; \
+       else \
+               echo "Source files are already editable"; \
+       fi
+       @if [ -r wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsEdit $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are already editable."; \
+       fi
+       @if [ -r ruby/$(OBJECTNAME).rb ]; \
+       then \
+               cd ruby; sccsEdit $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are already editable."; \
+       fi
+       @if [ -r perl/$(OBJECTNAME).pl ]; \
+       then \
+               cd perl; sccsEdit $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (perl) are already editable."; \
+       fi
+       @if [ -r ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsEdit OptionControlFile; \
+       else \
+               echo "OptionControlFile are already editable."; \
+       fi
+       
+unedit:
+       @if [ -w $(OBJECTNAME).c ]; \
+       then \
+               sccsUnedit $(OBJECTNAME).c; \
+       else \
+               echo "Source files are not editable"; \
+       fi
+       @if [ -w wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsUnedit $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are not editable."; \
+       fi
+       @if [ -w ruby/$(OBJECTNAME).rb]; \
+       then \
+               cd ruby; sccsUnedit $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are not editable."; \
+       fi
+       @if [ -w perl/$(OBJECTNAME).pl ]; \
+       then \
+               cd perl; sccsUnedit $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (ruby) are not editable."; \
+       fi
+       @if [ -w ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsUnedit OptionControlFile; \
+       else \
+               echo "OptionControlFile are not editable."; \
+       fi
+       
+report:
+       @if [ -r $(OBJECTNAME).c ]; \
+       then \
+               sccsReport $(OBJECTNAME).c; \
+       else \
+               echo "Source files are already editable"; \
+       fi
+       @if [ -r wish/$(OBJECTNAME).wish ]; \
+       then \
+               cd wish; sccsReport $(OBJECTNAME).wish; \
+       else \
+               echo "Source files (wish) are already editable."; \
+       fi
+       @if [ -r ruby/$(OBJECTNAME).rb ]; \
+       then \
+               cd ruby; sccsReport $(OBJECTNAME).rb; \
+       else \
+               echo "Source files (ruby) are already editable."; \
+       fi
+       @if [ -r perl/$(OBJECTNAME).pl ] ; \
+       then \
+               cd perl; sccsReport $(OBJECTNAME).pl ; \
+       else \
+               echo "Source files (perl) are already editable."; \
+       fi
+       @if [ -r ../Config/OptionControlFile ]; \
+       then \
+               cd ../Config; sccsReport OptionControlFile; \
+       else \
+               echo "OptionControlFile are already editable."; \
+       fi
+
+clean : 
+       rm -f *.debugo $(OSTYPE)/*.debugo *.cudagdbo $(OSTYPE)/*.cudagdbo *.o $(OSTYPE)/*.o *.linkinfo $(OSTYPE)/*.linkinfo \
+               $(OSTYPE)/$(OBJECTNAME) $(OSTYPE)/*.$(OSTYPE) \
+               $(OSTYPE)/$(OBJECTNAME).debug $(OSTYPE)/*.$(OSTYPE).debug \
+               $(OSTYPE)/$(OBJECTNAME).cudagdb $(OSTYPE)/*.$(OSTYPE).cudagdb \
+               $(OSTYPE)/$(OBJECTNAME).linkinfo $(OSTYPE)/*.$(OSTYPE).linkinfo \
+               *.bak *.$(OSTYPE) core
+
+install: install-bin install-doc install-wish install-ruby install-shell install-perl
+       @if [ dummy$(KHOROS_KENGOBJ) != dummy ]  ; \
+       then \
+               if [ -x $(KHOROS_KGENOBJ) ] ;  \
+               then \
+                       make install-khoros ; \
+               fi; \
+       fi 
+
+install-bin:$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME) 
+
+$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME):$(OSTYPE)/$(OBJECTNAME) $(DSTDIR)/$(OBJECTNAME) 
+       @echo ---- Installing to bin
+       @echo $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME)
+       @if [ ! -d $(DSTDIR)/$(OSTYPE) ]; \
+       then \
+               mkdir $(DSTDIR)/$(OSTYPE); \
+       fi
+       @if [ -x $(OSTYPE)/$(OBJECTNAME) ]; \
+       then \
+               echo "Compilation is complete"; \
+               $(RM) -f $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME); \
+               $(CD) $(OSTYPE); $(INSTALL) -m 555 $(OBJECTNAME) ../$(DSTDIR)/$(OSTYPE); \
+               $(CHMOD) 555 ../$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME); \
+       else \
+               echo "Compilation is incomplete. $(OBJECTNAME)"; \
+       fi
+       @echo ---- end of bin
+
+install-wish:
+       @if [ -d wish ]; \
+       then \
+               echo "---- Tcl/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/wish/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/wish/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f wish/* $(DSTDIR)/wish/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/wish/$(OBJECTNAME)/*  ;\
+               touch $(DSTDIR)/wish/$(OBJECTNAME)/tclIndex;\
+               $(CHMOD) 666 $(DSTDIR)/wish/$(OBJECTNAME)/tclIndex;\
+               echo "---- Tcl/Tk file Installed";\
+       fi
+
+install-ruby:
+       @if [ -d ruby ]; \
+       then \
+               echo "---- Ruby/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/ruby/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/ruby/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f ruby/* $(DSTDIR)/ruby/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/ruby/$(OBJECTNAME)/* ; \
+               echo "---- Ruby/Tk file Installed"; \
+       fi
+
+install-perl:
+       @if [ -d perl ]; \
+       then \
+               echo "---- Perl/Tk file Install"; \
+               if [ ! -d $(DSTDIR)/perl/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/perl/$(OBJECTNAME) ; \
+               fi; \
+               $(CP) -f perl/* $(DSTDIR)/perl/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/perl/$(OBJECTNAME)/* ; \
+               echo "---- Perl/Tk file Installed"; \
+       fi
+
+install-shell:
+       @if [ ! -d $(DSTDIR)/shell/$(OBJECTNAME) ]; \
+       then \
+               mkdir $(DSTDIR)/shell/$(OBJECTNAME) ; \
+       fi
+       @if [ -d shell ]; \
+       then \
+               echo "---- Shell file Install"; \
+               if [ ! -d $(DSTDIR)/shell/$(OBJECTNAME) ]; \
+               then \
+                       mkdir $(DSTDIR)/shell/$(OBJECTNAME) ; \
+               fi ; \
+               $(CP) -f shell/* $(DSTDIR)/shell/$(OBJECTNAME); \
+               $(CHMOD) 555 $(DSTDIR)/shell/$(OBJECTNAME)/*; \
+               echo "---- Shell file Installed"; \
+       fi
+
+install-khoros:
+       @echo Installing to khoros
+       @if [ ! -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KGENOBJ) ]; \
+       then \
+               echo kgenobj;\
+               $(KHOROS_KGENOBJ) -tb Eos -oname $(OBJECTNAME) -type script -pane -cantata true -cat Eos -subcat $(CLASSNAME) -description $(OBJECTNAME) -bname $(OBJECTNAME) -form  -lang ksh ; \
+       fi
+       @if [ ! -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KSET) ]; \
+       then \
+               $(KHOROS_KSET) -tb Eos -oname $(OBJECTNAME) -icon $(OBJECTNAME) ; \
+       fi
+       @if [ -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KSET) ]; \
+       then \
+               $(CHMOD) -R 775 ../../../../../objects/script/$(OBJECTNAME) ; \
+               if [ $?  ] ; \
+               then \
+                       echo "-- setting khoros ---" ; \
+                       if [ -d ../../../../../objects/script/$(OBJECTNAME)/uis/ ] ; \
+                       then \
+                               $(CD) ../../../../../objects/script/$(OBJECTNAME)/uis/ ; \
+                               $(RM) -f $(OBJECTNAME).pane ; \
+                               $(LN) -s ../../../../src/Tools/$(CLASSNAME)/$(OBJECTNAME)/src/$(OBJECTNAME).pane $(OBJECTNAME).pane; \
+                               $(CD) ../../ ; \
+                               $(CHMOD) -R 555 $(OBJECTNAME); \
+                       else \
+                               echo "../../../../../objects/script/$(OBJECTNAME)/uis/ does not exist."; \
+                       fi ; \
+               else \
+                       echo "Failed !!: Cannot chage mode in installing  $(OBJECTNAME) to khoros system"; \
+               fi ; \
+               echo "-- end of khoros-installing"; \
+       fi
+
+install-doc: html 
+       @if [ ! -d $(DSTDOC)/SmallTools ]; \
+       then \
+               mkdir $(DSTDOC)/SmallTools ;\
+       fi
+       @if [ -f $(DSTDOC)/SmallTools/$(OBJECTNAME).html ]; \
+       then \
+               $(RM) -f $(DSTDOC)/SmallTools/$(OBJECTNAME).html ;\
+       fi
+       @$(CP) $(OBJECTNAME).html  $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @$(CHMOD) 444 $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @if [ -f ../doc/*.html ]; \
+       then \
+               $(CP) ../doc/*.html  $(DSTDOC)/SmallTools/ ;\
+       fi
+       @$(CHMOD) 444 $(DSTDOC)/SmallTools/$(OBJECTNAME).html
+       @if [ -f $(DSTDOC)/SmallTools/Makefile ]; \
+       then \
+               cd $(DSTDOC)/SmallTools; $(MAKE); \
+       fi
+
+html: $(OBJECTNAME).html
+
+configFileRead:
+       @ctrl2configFileRead $(CLASSNAME) $(OBJECTNAME) ../Config/OptionControlFile
+
+$(OBJECTNAME).html: $(OSTYPE)/$(OBJECTNAME)
+       @echo creating html
+       @$(OSTYPE)/$(OBJECTNAME) -html 2> $(OBJECTNAME).html.tmp
+       @sed -e s/$(OSTYPE)\\/// $(OBJECTNAME).html.tmp > $(OBJECTNAME).html
+       @$(RM) $(OBJECTNAME).html.tmp
+
+$(DSTDIR)/$(OBJECTNAME): $(OSTYPE)/$(OBJECTNAME)
+       @ln -s -f ../sbin/MachineIndependent $@
+
+depend::
+       @echo dependency checking now
+       @if [ ! -L $(OSTYPE) ] ; then \
+               moveHostdependent; \
+       fi
+       rm -f $(OSTYPE)/.Depend 
+       #echo C
+       @if [ -f $(OBJECTNAME).c ] ; \
+       then \
+               echo "dependency: *.c"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) *.c   ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) *.c                  >> $(OSTYPE)/.Depend ; \
+       fi
+       #echo CC
+       @if [ -f $(OBJECTNAME).cc ] ; \
+       then \
+               echo "dependency: *.cc"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cc ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cc >> $(OSTYPE)/.Depend ; \
+       fi
+       @if [ -f $(OBJECTNAME).ccm ] ; \
+       then \
+               echo "dependency: *.ccm"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.ccm ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.ccm >> $(OSTYPE)/.Depend ; \
+       fi
+       @if [ -f $(OBJECTNAME).cu ] ; \
+       then \
+               echo "dependency: *.cu"; \
+               echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cu ; \
+                    $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cu >> $(OSTYPE)/.Depend ; \
+       fi
+
+update:../Config/OptionControlFile
+       maketool $(CLASSNAME) $(OBJECTNAME) update
+
+updateNoAns:../Config/OptionControlFile
+       maketool $(CLASSNAME) $(OBJECTNAME) update N
+
+changeName::
+
+Test:$(OSTYPE)/$(OBJECTNAME) TestDir
+       @if [ -f test/Makefile ] ; \
+       then \
+               cd test; make ; \
+       else \
+               echo "No test Makefile"; \
+       fi
+
+TestDir::
+       @if [ ! -d test ] ; \
+       then \
+               echo "Creating test dir"; \
+               mkdir  test; \
+       fi
+       @if [ ! -f test/Makefile ] ; \
+       then \
+               echo "Creating Makefile"; \
+               cd test; \
+               protoTestMakefileCreate; \
+       fi
+       @if [ ! -d test/data ]; \
+       then \
+               mkdir $(EOSHOME)/data/$(OBJECTNAME); \
+               cd test; \
+               ln -sf ../$(EOSHOME)/data/$(OBJECTNAME) data; \
+       fi 
+
+tar::
+       cd $(DSTTAR); tar cvf Tools.$(CLASSNAME).$(OBJECTNAME).tar ../bin/$(OBJECTNAME) \
+                                                            ../bin/*/$(OBJECTNAME).* \
+                                                            ../src/Tools/$(CLASSNAME)/$(OBJECTNAME) \
+                               ; gzip Tools.$(CLASSNAME).$(OBJECTNAME).tar
+
+-include $(OSTYPE)/.Depend
+-include ../Config/Target.inc
diff --git a/src/Tools/eosMath/eosMathSorting/src/X86MAC64 b/src/Tools/eosMath/eosMathSorting/src/X86MAC64
new file mode 120000 (symlink)
index 0000000..623360e
--- /dev/null
@@ -0,0 +1 @@
+../../../../../hostdepend/X86MAC64/src/Tools/eosMath/eosMathSorting/src/X86MAC64
\ No newline at end of file
diff --git a/src/Tools/eosMath/eosMathSorting/src/argCheck.c b/src/Tools/eosMath/eosMathSorting/src/argCheck.c
new file mode 100755 (executable)
index 0000000..257e0c7
--- /dev/null
@@ -0,0 +1,96 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>
+#include "../inc/config.h"
+#include "genUtil.h"
+#include "eosString.h"
+#include "File.h"
+#include "Memory.h"
+
+
+void
+argCheck(eosMathSortingInfo* info, int argc, char* argv[])
+{
+    long i;
+    char s[1024];
+    FILE* fpt;
+    
+    if(NULL==(fpt=fopen(".EosLog", "a+"))) { 
+        
+    } else {
+        for(i=0; i<argc; i++) {
+            fprintf(fpt, "%s ", argv[i]);
+        }
+        fprintf(fpt, "\n");
+        fclose(fpt);
+    }
+    for(i=1; i<argc; i++) {
+        if(OPTION_FLAG==argv[i][OPTION_FLAG_POS]) {
+            SSWITCH(argv[i]+OPTION_POS)
+                SCASE("i") {
+                    if(i+1<argc) {
+                        info->In = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagIn++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("o") {
+                    if(i+1<argc) {
+                        info->Out = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagOut++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("c") {
+                    if(i+1<argc) {
+                        info->configFile = stringGetNthWord(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagconfigFile++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("m") {
+                    if(i+1<argc) {
+                        info->mode = stringGetNthIntegerData(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagmode++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
+                SCASE("h") {
+                    usage(argv[0]);
+                    exit(EXIT_SUCCESS);
+                    break;
+                }
+                SCASE("html") {
+                    htmlBeforeUsage(argv[0]);
+                    usage(argv[0]);
+                    htmlAfterUsage(argv[0]);
+                    exit(EXIT_SUCCESS);
+                    break;
+                }
+                SDEFAULT {
+                    fprintf(stderr, "Not Supported Options: :%s\n", argv[i]);
+                    usage(argv[0]);
+                    exit(EXIT_FAILURE);
+                    break;
+                }
+            SSWITCHEND;
+        } 
+    } 
+} 
diff --git a/src/Tools/eosMath/eosMathSorting/src/eosMathSorting.c b/src/Tools/eosMath/eosMathSorting/src/eosMathSorting.c
new file mode 100755 (executable)
index 0000000..0131f65
--- /dev/null
@@ -0,0 +1,82 @@
+/*
+# eosMathSorting : $Revision$  
+# $Date$ 
+# Created by $Author$
+# Usage : eosMathSorting
+# Attention
+#   $Loccker$
+#      $State$ 
+#
+*/
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>                  
+#define GLOBAL_DECLARATION
+#include "../inc/config.h"
+
+#define DEBUG
+#include "genUtil.h"
+#include "Array.h"
+#include "Memory.h"
+#include "eosMath.h"
+
+/*
+Example:
+typedef struct leosMathSortingInfo {
+       float a;
+       int   b;
+} leosMathSortingInfo;
+
+typedef enum leosMathSortingMode {
+       a=0,
+       b=1
+} leosMathSortingMode;
+*/
+
+int
+main(int argc, char* argv[]) 
+{
+       eosMathSortingInfo info;
+  Array in;
+  Array out;
+  double* v;
+  int n, i;
+
+       init0(&info);
+  argCheck(&info, argc, argv);
+  init1(&info);
+
+       DEBUGPRINT("Program Start\n");
+  arrayReadFromFile(info.fptIn, &in, "in main");
+  
+  if(1<in.dim) {
+    fprintf(stderr, "Not supported dim: %ld\n", in.dim);
+    exit(EXIT_FAILURE);
+  }
+  n = in.n[0];
+  v = memoryAllocate(sizeof(double)*n, "in main");
+  for(i=0; i<n; i++) {
+    v[i] = in.A[i];
+  }
+
+  eosMathSorting(v, n);
+
+  out.dim = 1;
+  out.n[0] = n;
+  arrayInit(&out, "in message"); 
+
+  for(i=0; i<n; i++) {
+    out.A[i] = v[i];
+  }
+
+  arrayWriteToFile(info.fptOut, &out, "in main");
+
+       exit(EXIT_SUCCESS);
+}
+
+void
+additionalUsage()
+{
+       fprintf(stderr, "----- Additional Usage -----\n");
+}
diff --git a/src/Tools/eosMath/eosMathSorting/src/eosMathSorting.html b/src/Tools/eosMath/eosMathSorting/src/eosMathSorting.html
new file mode 100644 (file)
index 0000000..0ca6398
--- /dev/null
@@ -0,0 +1,18 @@
+<HTML>
+<HEAD>
+<TITLE>eosMathSorting</TITLE>
+</HEAD>
+<BODY>
+<H1>eosMathSorting</H1>
+<H2>Usage</H2>
+<PRE>
+Usage: eosMathSorting
+Options:
+    [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :InputDataFile
+    [-o[utput]           Out                 (NULL      ).as(outFile             ) ] :Essential :OutputDataFile
+    [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile
+    [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode
+----- Additional Usage -----
+</PRE>
+</BODY>
+</HTML>
diff --git a/src/Tools/eosMath/eosMathSorting/src/eosMathSorting.pane b/src/Tools/eosMath/eosMathSorting/src/eosMathSorting.pane
new file mode 100755 (executable)
index 0000000..817eab7
--- /dev/null
@@ -0,0 +1,16 @@
+-F 4.3 1 0 52x1+0+0 +0+0 'Cantata' cantata
+  -M 1 1 52x1+0+0 +1+0 ' ' subform
+    -P 1 0 52x1+0+1 +0+0 ' ' eosMathSorting
+      -D 1 0 9x1+0+0 'Options' _gui_options
+        -H 1  6x1+0+0 'License' 'license' $BOOTSTRAP/repos/license/License license
+        -E
+        -R 1 0 1 5x1+35+0 'Run' 'execute operation' $EOS/bin/eosMathSorting
+        -H 1  5x1+41+0 'Help' 'help page' $EOS/src/Tools/eosMath/eosMathSorting/doc/eosMathSorting.doc help
+        -Q 1 0 5.25x1+47+0 'Close'
+        -I 1 0 1 1 0 1 -1x1+1+1.500000 ' ' 'In' 'InputDataFile' i
+        -O 1 0 1 1 0 1 -1x1+1+3.000000 ' ' 'Out' 'OutputDataFile' o
+        -I 1 0 1 0 0 1 -1x1+1+4.500000 ' ' 'configFile' 'ConfigurationFile' c
+        -i 1 0 1 0 0 -1x1+1+6.000000 0 0 0 0 0 'mode' 'Mode' m
+    -E
+  -E
+-E
diff --git a/src/Tools/eosMath/eosMathSorting/src/init.c b/src/Tools/eosMath/eosMathSorting/src/init.c
new file mode 100755 (executable)
index 0000000..9b1ec6c
--- /dev/null
@@ -0,0 +1,91 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>
+#include "../inc/config.h"
+#include "genUtil.h"
+#include "eosString.h"
+#include "File.h"
+#include "Memory.h"
+
+
+void
+init0(eosMathSortingInfo* info)
+{
+    info->fptIn = NULL;    info->flagIn = 0;
+    info->fptOut = NULL;    info->flagOut = 0;
+    info->fptconfigFile = NULL;    info->flagconfigFile = 0;
+    info->mode = 0;    info->flagmode = 0;
+}
+
+void
+init1(eosMathSortingInfo* info)
+{
+    char s[1024];
+    int i;
+    if(!info->flagIn) {
+        stringGetFromFile(s, "In", stdin, stdout, 0);
+        info->In = stringGetNthWord(s, 1, " ,\t");
+        info->flagIn++;
+    }
+    if(info->flagIn) {
+        info->fptIn = fileOpen(info->In, "r");
+    }
+    
+    if(!info->flagOut) {
+        stringGetFromFile(s, "Out", stdin, stdout, 0);
+        info->Out = stringGetNthWord(s, 1, " ,\t");
+        info->flagOut++;
+    }
+    if(info->flagOut) {
+        info->fptOut = fileOpen(info->Out, "w");
+    }
+    
+    if(info->flagconfigFile) {
+        info->fptconfigFile = fileOpen(info->configFile, "r");
+    }
+    
+    if(info->flagmode) {
+    }
+    
+}
+#ifdef KHOROS
+#include <stdio.h>
+#include "bootstrap.h"
+#include "dataserv.h"
+#include "datamanip.h"
+extern void func_usage_additions(void);
+extern void func_free_args(kexit_status status, kaddr client_data);
+extern void func_get_args(kform* pane);
+
+void
+func_usage_additions(void)
+{
+}
+void
+func_free_args(kexit_status status, kaddr client_data)
+{
+}
+void
+func_get_args(kform* pane)
+{
+}
+void
+khorosInit(int argc, char* argv[])
+{
+    char* eospath;
+    char  panepath[1024];
+    FILE* fpt;
+    
+    eospath = getenv("EOS_HOME");
+    sprintf(panepath, "%s/src/Tools/eosMath/eosMathSorting/src/eosMathSorting.pane", eospath);
+    khoros_initialize(argc, argv, "EOS");
+    fpt = fopen(panepath, "r");    if(NULL!=fpt) {
+        fclose(fpt);
+        kclui_initialize(panepath, KGEN_NONE, "EOS", "eosMathSorting",
+                     func_usage_additions,
+                     func_get_args,
+                     func_free_args);
+    }
+}
+#endif /* KHOROS */ 
diff --git a/src/Tools/eosMath/eosMathSorting/src/test/Makefile b/src/Tools/eosMath/eosMathSorting/src/test/Makefile
new file mode 100644 (file)
index 0000000..cc5caa9
--- /dev/null
@@ -0,0 +1,18 @@
+include ../../Config/Define.inc
+include ../../../Config/Define.inc
+include ../../../../Config/Define.inc
+include ../../../../../Config/Define.inc
+
+all: help exec
+
+help:
+       @echo "----- Help Message Check -----"
+       @../$(OSTYPE)/$(OBJECTNAME)      -h
+
+exec:
+       @echo "----- Execution Check -----"
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test.in -o data/test.out
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test2.in -o data/test2.out
+       @echo "----- Calc check -----"          
+
+clean:
diff --git a/src/Tools/eosMath/eosMathSorting/src/test/data b/src/Tools/eosMath/eosMathSorting/src/test/data
new file mode 120000 (symlink)
index 0000000..2401942
--- /dev/null
@@ -0,0 +1 @@
+../../../../../..//data/eosMathSorting
\ No newline at end of file
diff --git a/src/Tools/eosMath/eosMathSorting/src/usage.c b/src/Tools/eosMath/eosMathSorting/src/usage.c
new file mode 100755 (executable)
index 0000000..c3e4fc6
--- /dev/null
@@ -0,0 +1,36 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "../inc/config.h"
+
+void
+usage(char* thisProgram)
+{
+    fprintf(stderr, "Usage: %s\n", thisProgram);
+    fprintf(stderr, "Options:\n");
+    fprintf(stderr, "    [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :InputDataFile\n");
+    fprintf(stderr, "    [-o[utput]           Out                 (NULL      ).as(outFile             ) ] :Essential :OutputDataFile\n");
+    fprintf(stderr, "    [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile\n");
+    fprintf(stderr, "    [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode\n");
+    additionalUsage();
+}
+
+void
+htmlBeforeUsage(char* thisProgram)
+{
+    fprintf(stderr, "<HTML>\n");
+    fprintf(stderr, "<HEAD>\n");
+    fprintf(stderr, "<TITLE>%s</TITLE>\n", thisProgram);
+    fprintf(stderr, "</HEAD>\n");
+    fprintf(stderr, "<BODY>\n");
+    fprintf(stderr, "<H1>%s</H1>\n", thisProgram);
+    fprintf(stderr, "<H2>Usage</H2>\n");
+    fprintf(stderr, "<PRE>\n");
+}
+
+void
+htmlAfterUsage(char* thisProgram)
+{
+    fprintf(stderr, "</PRE>\n");
+    fprintf(stderr, "</BODY>\n");
+    fprintf(stderr, "</HTML>\n");
+}
diff --git a/src/Tools/eosMath/eosMathSorting/src/util.c b/src/Tools/eosMath/eosMathSorting/src/util.c
new file mode 100755 (executable)
index 0000000..ee5e5f2
--- /dev/null
@@ -0,0 +1,4 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "../inc/config.h"
+
index d71e3ec..b4d5efa 100755 (executable)
@@ -1,12 +1,13 @@
 # OptionControlFile
 # FileFormat
-"-i","-i[nput]","InputDataFile","Essential","1","1","In","inFile","NULL"
-"-o","-o[utput]","OutputDataFile","Essential","1","1","Out","outFile","NULL"
-"-wx","-w[idth]x","OutputDataFile","Optional","1","1","widthX","Real","1"
-"-wy","-w[idth]y","OutputDataFile","Optional","1","1","widthY","Real","1"
-"-wz","-w[idth]z","OutputDataFile","Optional","1","1","widthZ","Real","1"
-"-ex","-e[dge]x","OutputDataFile","Optional","1","1","edgeX","Real","1"
-"-ey","-e[dge]y","OutputDataFile","Optional","1","1","edgeY","Real","1"
-"-ez","-e[dge]z","OutputDataFile","Optional","1","1","edgeZ","Real","1"
+"-i","-i[nput]","Input[Array]","Essential","1","1","In","inFile","NULL"
+"-o","-o[utput]","Output[Array]","Essential","1","1","Out","outFile","NULL"
+"-wx","-w[idth]x","WindowX[piX]","Optional","1","1","widthX","Real","1"
+"-wy","-w[idth]y","WindowY[pix]","Optional","1","1","widthY","Real","1"
+"-wz","-w[idth]z","WindowZ[pix]","Optional","1","1","widthZ","Real","1"
+"-ex","-e[dge]x","EdgeX[pix]","Optional","1","1","edgeX","Real","1"
+"-ey","-e[dge]y","EdgeY[pix]","Optional","1","1","edgeY","Real","1"
+"-ez","-e[dge]z","EdgeZ[pix]","Optional","1","1","edgeZ","Real","1"
+"-trim","-trim","trimmedAbnormalValue[0-0.5]","Optional","1","1","Trim","Real","0"
 "-c","-c[onfig]","ConfigurationFile","Optional","1","1","configFile","inFile","NULL"
 "-m","-m[ode]","Mode","Optional","1","1","mode","Integer","0"
index 9b34464..efa65c5 100755 (executable)
@@ -39,6 +39,9 @@ typedef struct mrcImageBackgroundSubtractionInfo {
     long flagedgeZ;
     float edgeZ;
     
+    long flagTrim;
+    float Trim;
+    
     long flagconfigFile;
     char* configFile;
     FILE* fptconfigFile;
index 83c0f1e..f9549bb 100755 (executable)
@@ -116,6 +116,17 @@ argCheck(mrcImageBackgroundSubtractionInfo* info, int argc, char* argv[])
                     }
                     SBREAK;
                 }
+                SCASE("trim") {
+                    if(i+1<argc) {
+                        info->Trim = stringGetNthRealData(argv[i+1], 1, " ,");
+                        i++;
+                        info->flagTrim++;
+                    } else {
+                        usage(argv[0]);
+                        exit(EXIT_FAILURE);
+                    }
+                    SBREAK;
+                }
                 SCASE("c") {
                     if(i+1<argc) {
                         info->configFile = stringGetNthWord(argv[i+1], 1, " ,");
index 340a77b..b40ccc6 100755 (executable)
@@ -20,6 +20,7 @@ init0(mrcImageBackgroundSubtractionInfo* info)
     info->edgeX = 1;    info->flagedgeX = 0;
     info->edgeY = 1;    info->flagedgeY = 0;
     info->edgeZ = 1;    info->flagedgeZ = 0;
+    info->Trim = 0;    info->flagTrim = 0;
     info->fptconfigFile = NULL;    info->flagconfigFile = 0;
     info->mode = 0;    info->flagmode = 0;
 }
@@ -65,6 +66,9 @@ init1(mrcImageBackgroundSubtractionInfo* info)
     if(info->flagedgeZ) {
     }
     
+    if(info->flagTrim) {
+    }
+    
     if(info->flagconfigFile) {
         info->fptconfigFile = fileOpen(info->configFile, "r");
     }
index d673d45..6a94fc6 100755 (executable)
@@ -17,6 +17,8 @@
 
 #define DEBUG
 #include "genUtil.h"
+#include "Memory.h"
+#include "eosMath.h"
 #include "mrcImage.h"
 
 typedef struct lmrcImageBackgroundSubtractionInfo {
@@ -26,6 +28,7 @@ typedef struct lmrcImageBackgroundSubtractionInfo {
   double edgeX;
   double edgeY;
   double edgeZ;
+  double Trim;
 } lmrcImageBackgroundSubtractionInfo;
 
 typedef enum lmrcImageBackgroundSubtractionMode {
@@ -35,7 +38,10 @@ typedef enum lmrcImageBackgroundSubtractionMode {
 
 
 extern int lmrcImageBackgroundSubtraction(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode);
-extern int lmrcImageBackgroundSubtractionYLineSubtract(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode);
+extern int lmrcImageBackgroundSubtractionYLineSubtractAverage(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode);
+extern int lmrcImageBackgroundSubtractionYLineSubtractTrimmedAverage(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode);
+extern int lmrcImageBackgroundSubtractionYLineSubtractMedian(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode);
+extern int lmrcImageBackgroundSubtractionYLineSubtractHodgesLehmann(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode);
 
 int
 main(int argc, char* argv[]) 
@@ -55,6 +61,8 @@ main(int argc, char* argv[])
   linfo.edgeX = info.edgeX;
   linfo.edgeY = info.edgeY;
   linfo.edgeZ = info.edgeZ;
+
+  linfo.Trim = info.Trim;
        DEBUGPRINT("Program Start\n");
   mrcFileRead(&in, info.In, "in main", 0);
   
@@ -67,19 +75,46 @@ void
 additionalUsage()
 {
        fprintf(stderr, "----- Additional Usage -----\n");
-       fprintf(stderr, "-m 0: YLineSubtract using -edgeY and -widthX \n");
+       fprintf(stderr, "-m 0: YLineSubtractAverage using -edgeY and -widthX \n");
+       fprintf(stderr, "-m 1: YLineSubtractMedian  using -edgeY and -widthX \n");
+       fprintf(stderr, "-m 2: YLineSubtractTrimmedAverage using -edgeY and -widthX, -trim\n");
+       fprintf(stderr, "-m 3: YLineSubtractHodgesLehmann using -edgeY and -widthX \n");
 
 }
 
 int
 lmrcImageBackgroundSubtraction(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode)
 {
-  lmrcImageBackgroundSubtractionYLineSubtract(out, in, linfo, mode);
+  switch(mode&0xff) {
+    case 0: {
+      lmrcImageBackgroundSubtractionYLineSubtractAverage(out, in, linfo, mode);
+      break;
+    } 
+    case 1: {
+      DEBUGPRINT("Median\n");
+      lmrcImageBackgroundSubtractionYLineSubtractMedian(out, in, linfo, mode);
+      break;
+    } 
+    case 2: {
+      DEBUGPRINT("TrimmedAverage\n");
+      lmrcImageBackgroundSubtractionYLineSubtractTrimmedAverage(out, in, linfo, mode);
+      break;
+    } 
+    case 3: {
+      DEBUGPRINT("HodgesLehmann\n");
+      lmrcImageBackgroundSubtractionYLineSubtractHodgesLehmann(out, in, linfo, mode);
+      break;
+    } 
+    default: {
+      fprintf(stderr, "Not supported mode in lmrcImageBackgroundSubtraction");
+      exit(EXIT_FAILURE);
+    }
+  }
   return 0;
 }
 
 int
-lmrcImageBackgroundSubtractionYLineSubtract(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode)
+lmrcImageBackgroundSubtractionYLineSubtractAverage(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode)
 {
   mrcImageParaTypeReal x, y, z;
   mrcImageParaTypeReal orgx, orgy, orgz;
@@ -137,7 +172,7 @@ lmrcImageBackgroundSubtractionYLineSubtract(mrcImage* out, mrcImage* in, lmrcIma
       avg2 = 0;
     }
 
-    //DEBUGPRINT2("avg: %f - %f\n", avg1, avg2);
+    DEBUGPRINT2("avg: %f - %f\n", avg1, avg2);
     for(y=0; y<in->HeaderN.y; y++) {
         offset = (avg2*y + avg1*(in->HeaderN.y - 1 - y))/(in->HeaderN.y - 1);
         mrcPixelDataGet(in,  x, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
@@ -150,3 +185,257 @@ lmrcImageBackgroundSubtractionYLineSubtract(mrcImage* out, mrcImage* in, lmrcIma
 }
 
 
+int
+lmrcImageBackgroundSubtractionYLineSubtractMedian(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode)
+{
+  mrcImageParaTypeReal x, y, z;
+  mrcImageParaTypeReal orgx, orgy, orgz;
+  int i;
+  double avg1, sum1;
+  double avg2, sum2;
+  double med1, med2;
+  double* y1;
+  double* y2;
+  double data;
+  double weight;
+  double offset;
+  mrcImageParaTypeReal minX,maxX;
+   
+  out->Header =  in->Header;
+  mrcInit(out, NULL);
+
+  y1 = (double*)memoryAllocate(linfo.edgeY*sizeof(double), "in Median");
+  y2 = (double*)memoryAllocate(linfo.edgeY*sizeof(double), "in Median");
+  for(z=0; z<in->HeaderN.z; z++) {
+  for(x=0; x<in->HeaderN.x; x++) {
+    minX = MAX(0, (int)(x-linfo.widthX+0.5));
+    maxX = MIN(in->HeaderN.x-1, (int)(x+linfo.widthX+0.5));
+    //DEBUGPRINT2("x wdith: %f - %f^n ", minX, maxX);
+    // Bottom
+    for(y=0; y<linfo.edgeY; y++) {
+      sum1 = 0; avg1 = 0;
+      for(orgx=minX; orgx<=maxX; orgx++) {
+        weight = (linfo.widthX - fabs(orgx - x))/linfo.widthX;
+        // DEBUGPRINT1("weight: %f\n", weight);
+        if(0<weight) {
+          mrcPixelDataGet(in, orgx, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+          sum1 += weight;
+          avg1 += data*weight;
+        }
+      }
+      if(0<sum1) {
+        avg1 /= sum1;
+      } else {
+        DEBUGPRINT("sum1 is zero??\n");
+        avg1 = 0;
+      }
+      y1[(int)y] = avg1;   
+    }
+    
+    // Top
+    for(y=in->HeaderN.y-linfo.edgeY-1; y<in->HeaderN.y; y++) {
+      sum2 = 0; avg2 = 0;
+      for(orgx=minX; orgx<=maxX; orgx++) {
+        weight = (linfo.widthX - fabs(orgx - x))/linfo.widthX;
+        if(0<weight) {
+          mrcPixelDataGet(in, orgx, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+          sum2 += weight;
+          avg2 += data*weight;
+        }
+      }
+      if(0<sum2) {
+        avg2 /= sum2;
+      } else {
+        DEBUGPRINT("sum2 is zero??\n");
+        avg2 = 0;
+      }
+      y2[(int)(y-(in->HeaderN.y-linfo.edgeY-1))] = avg2;
+    }
+
+    med1 = eosMathMedian(y1, linfo.edgeY); 
+    med2 = eosMathMedian(y2, linfo.edgeY); 
+    //DEBUGPRINT2("avg: %f - %f\n", avg1, avg2);
+    DEBUGPRINT2("avg: %f - %f\n", eosMathAverage(y1, linfo.edgeY), eosMathAverage(y2,linfo.edgeY));
+    DEBUGPRINT2("med: %f - %f\n", med1, med2);
+    for(y=0; y<in->HeaderN.y; y++) {
+        offset = (med2*y + med1*(in->HeaderN.y - 1 - y))/(in->HeaderN.y - 1);
+        mrcPixelDataGet(in,  x, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+        data -= offset;
+        mrcPixelDataSet(out, x, y, z, data, mrcPixelRePart);
+    }
+  }
+  }
+  return 0;
+}
+
+
+int
+lmrcImageBackgroundSubtractionYLineSubtractHodgesLehmann(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode)
+{
+  mrcImageParaTypeReal x, y, z;
+  mrcImageParaTypeReal orgx, orgy, orgz;
+  int i;
+  double avg1, sum1;
+  double avg2, sum2;
+  double med1, med2;
+  double* y1;
+  double* y2;
+  double data;
+  double weight;
+  double offset;
+  mrcImageParaTypeReal minX,maxX;
+   
+  out->Header =  in->Header;
+  mrcInit(out, NULL);
+
+  y1 = (double*)memoryAllocate(linfo.edgeY*sizeof(double), "in Median");
+  y2 = (double*)memoryAllocate(linfo.edgeY*sizeof(double), "in Median");
+  for(z=0; z<in->HeaderN.z; z++) {
+  for(x=0; x<in->HeaderN.x; x++) {
+    minX = MAX(0, (int)(x-linfo.widthX+0.5));
+    maxX = MIN(in->HeaderN.x-1, (int)(x+linfo.widthX+0.5));
+    //DEBUGPRINT2("x wdith: %f - %f^n ", minX, maxX);
+    // Bottom
+    for(y=0; y<linfo.edgeY; y++) {
+      sum1 = 0; avg1 = 0;
+      for(orgx=minX; orgx<=maxX; orgx++) {
+        weight = (linfo.widthX - fabs(orgx - x))/linfo.widthX;
+        // DEBUGPRINT1("weight: %f\n", weight);
+        if(0<weight) {
+          mrcPixelDataGet(in, orgx, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+          sum1 += weight;
+          avg1 += data*weight;
+        }
+      }
+      if(0<sum1) {
+        avg1 /= sum1;
+      } else {
+        DEBUGPRINT("sum1 is zero??\n");
+        avg1 = 0;
+      }
+      y1[(int)y] = avg1;   
+    }
+    
+    // Top
+    for(y=in->HeaderN.y-linfo.edgeY-1; y<in->HeaderN.y; y++) {
+      sum2 = 0; avg2 = 0;
+      for(orgx=minX; orgx<=maxX; orgx++) {
+        weight = (linfo.widthX - fabs(orgx - x))/linfo.widthX;
+        if(0<weight) {
+          mrcPixelDataGet(in, orgx, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+          sum2 += weight;
+          avg2 += data*weight;
+        }
+      }
+      if(0<sum2) {
+        avg2 /= sum2;
+      } else {
+        DEBUGPRINT("sum2 is zero??\n");
+        avg2 = 0;
+      }
+      y2[(int)(y-(in->HeaderN.y-linfo.edgeY-1))] = avg2;
+    }
+
+    med1 = eosMathHodgesLehmannEstimator(y1, linfo.edgeY); 
+    med2 = eosMathHodgesLehmannEstimator(y2, linfo.edgeY); 
+    //DEBUGPRINT2("avg: %f - %f\n", avg1, avg2);
+    DEBUGPRINT2("avg: %f - %f\n", eosMathAverage(y1, linfo.edgeY), eosMathAverage(y2,linfo.edgeY));
+    DEBUGPRINT2("med: %f - %f\n", med1, med2);
+    for(y=0; y<in->HeaderN.y; y++) {
+        offset = (med2*y + med1*(in->HeaderN.y - 1 - y))/(in->HeaderN.y - 1);
+        mrcPixelDataGet(in,  x, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+        data -= offset;
+        mrcPixelDataSet(out, x, y, z, data, mrcPixelRePart);
+    }
+  }
+  }
+  return 0;
+}
+
+
+
+int
+lmrcImageBackgroundSubtractionYLineSubtractTrimmedAverage(mrcImage* out, mrcImage* in, lmrcImageBackgroundSubtractionInfo linfo, int mode)
+{
+  mrcImageParaTypeReal x, y, z;
+  mrcImageParaTypeReal orgx, orgy, orgz;
+  int i;
+  double avg1, sum1;
+  double avg2, sum2;
+  double med1, med2;
+  double* y1;
+  double* y2;
+  double data;
+  double weight;
+  double offset;
+  mrcImageParaTypeReal minX,maxX;
+   
+  out->Header =  in->Header;
+  mrcInit(out, NULL);
+
+  y1 = (double*)memoryAllocate(linfo.edgeY*sizeof(double), "in Median");
+  y2 = (double*)memoryAllocate(linfo.edgeY*sizeof(double), "in Median");
+  for(z=0; z<in->HeaderN.z; z++) {
+  for(x=0; x<in->HeaderN.x; x++) {
+    sum2 = 0; avg2 = 0;
+    minX = MAX(0, (int)(x-linfo.widthX+0.5));
+    maxX = MIN(in->HeaderN.x-1, (int)(x+linfo.widthX+0.5));
+    //DEBUGPRINT2("x wdith: %f - %f^n ", minX, maxX);
+    // Bottom
+    for(y=0; y<linfo.edgeY; y++) {
+      sum1 = 0; avg1 = 0;
+      for(orgx=minX; orgx<=maxX; orgx++) {
+        weight = (linfo.widthX - fabs(orgx - x))/linfo.widthX;
+        // DEBUGPRINT1("weight: %f\n", weight);
+        if(0<weight) {
+          mrcPixelDataGet(in, orgx, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+          sum1 += weight;
+          avg1 += data*weight;
+        }
+      }
+      if(0<sum1) {
+        avg1 /= sum1;
+      } else {
+        DEBUGPRINT("sum1 is zero??\n");
+        avg1 = 0;
+      }
+      y1[(int)y] = avg1;   
+    }
+    
+    // Top
+    for(y=in->HeaderN.y-linfo.edgeY-1; y<in->HeaderN.y; y++) {
+      sum2 = 0; avg2 = 0;
+      for(orgx=minX; orgx<=maxX; orgx++) {
+        weight = (linfo.widthX - fabs(orgx - x))/linfo.widthX;
+        if(0<weight) {
+          mrcPixelDataGet(in, orgx, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+          sum2 += weight;
+          avg2 += data*weight;
+        }
+      }
+      if(0<sum2) {
+        avg2 /= sum2;
+      } else {
+        DEBUGPRINT("sum2 is zero??\n");
+        avg2 = 0;
+      }
+      y2[(int)(y-(in->HeaderN.y-linfo.edgeY-1))] = avg2;
+    }
+
+    med1 = eosMathTrimmedAverage(y1, linfo.edgeY, linfo.Trim); 
+    med2 = eosMathTrimmedAverage(y2, linfo.edgeY, linfo.Trim); 
+    //DEBUGPRINT2("avg: %f - %f\n", avg1, avg2);
+    DEBUGPRINT2("avg: %f - %f\n", eosMathAverage(y1, linfo.edgeY), eosMathAverage(y2,linfo.edgeY));
+    DEBUGPRINT2("med: %f - %f\n", med1, med2);
+    for(y=0; y<in->HeaderN.y; y++) {
+        offset = (med2*y + med1*(in->HeaderN.y - 1 - y))/(in->HeaderN.y - 1);
+        mrcPixelDataGet(in,  x, y, z, &data, mrcPixelRePart, mrcPixelHowNearest);
+        data -= offset;
+        mrcPixelDataSet(out, x, y, z, data, mrcPixelRePart);
+    }
+  }
+  }
+  return 0;
+}
+
+
old mode 100644 (file)
new mode 100755 (executable)
index c7334fd..c0ff941
@@ -19,7 +19,8 @@ Options:
     [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile
     [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode
 ----- Additional Usage -----
--m 0: YLineSubtract using -edgeY and -widthX 
+-m 0: YLineSubtractAverage using -edgeY and -widthX 
+-m 1: YLineSubtractMedian  using -edgeY and -widthX 
 </PRE>
 </BODY>
 </HTML>
index 5d8c8dd..ab6cf41 100755 (executable)
@@ -7,16 +7,17 @@
         -R 1 0 1 5x1+35+0 'Run' 'execute operation' $EOS/bin/mrcImageBackgroundSubtraction
         -H 1  5x1+41+0 'Help' 'help page' $EOS/src/Tools/mrcImage/mrcImageBackgroundSubtraction/doc/mrcImageBackgroundSubtraction.doc help
         -Q 1 0 5.25x1+47+0 'Close'
-        -I 1 0 1 1 0 1 -1x1+1+1.500000 ' ' 'In' 'InputDataFile' i
-        -O 1 0 1 1 0 1 -1x1+1+3.000000 ' ' 'Out' 'OutputDataFile' o
-        -f 1 0 1 0 0 -1x1+1+4.500000 0 0 1.000000 0 0 0 'widthX' 'OutputDataFile' wx
-        -f 1 0 1 0 0 -1x1+1+6.000000 0 0 1.000000 0 0 0 'widthY' 'OutputDataFile' wy
-        -f 1 0 1 0 0 -1x1+1+7.500000 0 0 1.000000 0 0 0 'widthZ' 'OutputDataFile' wz
-        -f 1 0 1 0 0 -1x1+1+9.000000 0 0 1.000000 0 0 0 'edgeX' 'OutputDataFile' ex
-        -f 1 0 1 0 0 -1x1+1+10.500000 0 0 1.000000 0 0 0 'edgeY' 'OutputDataFile' ey
-        -f 1 0 1 0 0 -1x1+1+12.000000 0 0 1.000000 0 0 0 'edgeZ' 'OutputDataFile' ez
-        -I 1 0 1 0 0 1 -1x1+1+13.500000 ' ' 'configFile' 'ConfigurationFile' c
-        -i 1 0 1 0 0 -1x1+1+15.000000 0 0 0 0 0 'mode' 'Mode' m
+        -I 1 0 1 1 0 1 -1x1+1+1.500000 ' ' 'In' 'Input[Array]' i
+        -O 1 0 1 1 0 1 -1x1+1+3.000000 ' ' 'Out' 'Output[Array]' o
+        -f 1 0 1 0 0 -1x1+1+4.500000 0 0 1.000000 0 0 0 'widthX' 'WindowX[piX]' wx
+        -f 1 0 1 0 0 -1x1+1+6.000000 0 0 1.000000 0 0 0 'widthY' 'WindowY[pix]' wy
+        -f 1 0 1 0 0 -1x1+1+7.500000 0 0 1.000000 0 0 0 'widthZ' 'WindowZ[pix]' wz
+        -f 1 0 1 0 0 -1x1+1+9.000000 0 0 1.000000 0 0 0 'edgeX' 'EdgeX[pix]' ex
+        -f 1 0 1 0 0 -1x1+1+10.500000 0 0 1.000000 0 0 0 'edgeY' 'EdgeY[pix]' ey
+        -f 1 0 1 0 0 -1x1+1+12.000000 0 0 1.000000 0 0 0 'edgeZ' 'EdgeZ[pix]' ez
+        -f 1 0 1 0 0 -1x1+1+13.500000 0 0 0.000000 0 0 0 'Trim' 'trimmedAbnormalValue[0-0.5]' trim
+        -I 1 0 1 0 0 1 -1x1+1+15.000000 ' ' 'configFile' 'ConfigurationFile' c
+        -i 1 0 1 0 0 -1x1+1+16.500000 0 0 0 0 0 'mode' 'Mode' m
     -E
   -E
 -E
old mode 100644 (file)
new mode 100755 (executable)
index 37105fc..a6f0a5c
@@ -15,6 +15,10 @@ exec:
        ../$(OSTYPE)/$(OBJECTNAME) -i data/test.mrc -o data/test.out1.mrc -m 0 -ey 100 -wx 1
        ../$(OSTYPE)/$(OBJECTNAME) -i data/test.mrc -o data/test.out2.mrc -m 0 -ey 50 -wx 3
        ../$(OSTYPE)/$(OBJECTNAME) -i data/test.mrc -o data/test.out3.mrc -m 0 -ey 100 -wx 3
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test.mrc -o data/test.out1-3.mrc -m 1 -ey 100 -wx 3
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test.mrc -o data/test.out2-3.mrc -m 2 -ey 100 -wx 3 -trim 0.2
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test.mrc -o data/test.out2.1-3.mrc -m 2 -ey 100 -wx 3 -trim 0.0
+       ../$(OSTYPE)/$(OBJECTNAME) -i data/test.mrc -o data/test.out3-3.mrc -m 3 -ey 100 -wx 3 
        @echo "----- Calc check -----"          
 
 clean:
index 2bd3b14..751bf8a 100755 (executable)
@@ -7,14 +7,15 @@ usage(char* thisProgram)
 {
     fprintf(stderr, "Usage: %s\n", thisProgram);
     fprintf(stderr, "Options:\n");
-    fprintf(stderr, "    [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :InputDataFile\n");
-    fprintf(stderr, "    [-o[utput]           Out                 (NULL      ).as(outFile             ) ] :Essential :OutputDataFile\n");
-    fprintf(stderr, "    [-w[idth]x           widthX              (1         ).as(Real                ) ] :Optional  :OutputDataFile\n");
-    fprintf(stderr, "    [-w[idth]y           widthY              (1         ).as(Real                ) ] :Optional  :OutputDataFile\n");
-    fprintf(stderr, "    [-w[idth]z           widthZ              (1         ).as(Real                ) ] :Optional  :OutputDataFile\n");
-    fprintf(stderr, "    [-e[dge]x            edgeX               (1         ).as(Real                ) ] :Optional  :OutputDataFile\n");
-    fprintf(stderr, "    [-e[dge]y            edgeY               (1         ).as(Real                ) ] :Optional  :OutputDataFile\n");
-    fprintf(stderr, "    [-e[dge]z            edgeZ               (1         ).as(Real                ) ] :Optional  :OutputDataFile\n");
+    fprintf(stderr, "    [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :Input[Array]\n");
+    fprintf(stderr, "    [-o[utput]           Out                 (NULL      ).as(outFile             ) ] :Essential :Output[Array]\n");
+    fprintf(stderr, "    [-w[idth]x           widthX              (1         ).as(Real                ) ] :Optional  :WindowX[piX]\n");
+    fprintf(stderr, "    [-w[idth]y           widthY              (1         ).as(Real                ) ] :Optional  :WindowY[pix]\n");
+    fprintf(stderr, "    [-w[idth]z           widthZ              (1         ).as(Real                ) ] :Optional  :WindowZ[pix]\n");
+    fprintf(stderr, "    [-e[dge]x            edgeX               (1         ).as(Real                ) ] :Optional  :EdgeX[pix]\n");
+    fprintf(stderr, "    [-e[dge]y            edgeY               (1         ).as(Real                ) ] :Optional  :EdgeY[pix]\n");
+    fprintf(stderr, "    [-e[dge]z            edgeZ               (1         ).as(Real                ) ] :Optional  :EdgeZ[pix]\n");
+    fprintf(stderr, "    [-trim               Trim                (0         ).as(Real                ) ] :Optional  :trimmedAbnormalValue[0-0.5]\n");
     fprintf(stderr, "    [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile\n");
     fprintf(stderr, "    [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode\n");
     additionalUsage();