/* $Id$
$State$
$Log$
+ Revision 1.106 2006/01/19 13:24:36 brouard
+ Some cleaning and links added in html output
+
Revision 1.105 2006/01/05 20:23:19 lievre
*** empty log message ***
#include <string.h>
#include <unistd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <errno.h>
+extern int errno;
+
/* #include <sys/time.h> */
#include <time.h>
#include "timeval.h"
#define AGEGOMP 10. /* Minimal age for Gompertz adjustment */
#ifdef UNIX
#define DIRSEPARATOR '/'
+#define CHARSEPARATOR "/"
#define ODIRSEPARATOR '\\'
#else
#define DIRSEPARATOR '\\'
+#define CHARSEPARATOR "\\"
#define ODIRSEPARATOR '/'
#endif
/**************** split *************************/
static int split( char *path, char *dirc, char *name, char *ext, char *finame )
{
- /* From a file name with full path (either Unix or Windows) we extract the directory (dirc)
+ /* From a file name with (full) path (either Unix or Windows) we extract the directory (dirc)
the name of the file (name), its extension only (ext) and its first part of the name (finame)
*/
char *ss; /* pointer */
l1 = strlen(path ); /* length of path */
if ( l1 == 0 ) return( GLOCK_ERROR_NOPATH );
ss= strrchr( path, DIRSEPARATOR ); /* find last / */
- if ( ss == NULL ) { /* no directory, so use current */
+ if ( ss == NULL ) { /* no directory, so determine current directory */
+ strcpy( name, path ); /* we got the fullname name because no directory */
/*if(strrchr(path, ODIRSEPARATOR )==NULL)
printf("Warning you should use %s as a separator\n",DIRSEPARATOR);*/
/* get current working directory */
if ( getcwd( dirc, FILENAME_MAX ) == NULL ) {
return( GLOCK_ERROR_GETCWD );
}
- strcpy( name, path ); /* we've got it */
+ /* got dirc from getcwd*/
+ printf(" DIRC = %s \n",dirc);
} else { /* strip direcotry from path */
ss++; /* after this, the filename */
l2 = strlen( ss ); /* length of filename */
strcpy( name, ss ); /* save file name */
strncpy( dirc, path, l1 - l2 ); /* now the directory */
dirc[l1-l2] = 0; /* add zero */
+ printf(" DIRC2 = %s \n",dirc);
}
+ /* We add a separator at the end of dirc if not exists */
l1 = strlen( dirc ); /* length of directory */
- /*#ifdef windows
- if ( dirc[l1-1] != '\\' ) { dirc[l1] = '\\'; dirc[l1+1] = 0; }
-#else
- if ( dirc[l1-1] != '/' ) { dirc[l1] = '/'; dirc[l1+1] = 0; }
-#endif
- */
+ if( dirc[l1-1] != DIRSEPARATOR ){
+ dirc[l1] = DIRSEPARATOR;
+ dirc[l1+1] = 0;
+ printf(" DIRC3 = %s \n",dirc);
+ }
ss = strrchr( name, '.' ); /* find last / */
if (ss >0){
ss++;
strncpy( finame, name, l1-l2);
finame[l1-l2]= 0;
}
+
return( 0 ); /* we're done */
}
double jprev2, double mprev2,double anprev2){
int jj1, k1, i1, cpt;
- fprintf(fichtm,"<ul><li><a> href="#firstorder">Result files (first order: no variance)</a>\n \
- <li><a> href="#secondorder">Result files (second order (variance)</a>\n \
+ fprintf(fichtm,"<ul><li><a href='#firstorder'>Result files (first order: no variance)</a>\n \
+ <li><a href='#secondorder'>Result files (second order (variance)</a>\n \
</ul>");
- fprintf(fichtm,"<ul><li><h4><a name="firstorder">Result files (first order: no variance)</a></h4>\n \
+ fprintf(fichtm,"<ul><li><h4><a name='firstorder'>Result files (first order: no variance)</a></h4>\n \
- Observed prevalence in each state (during the period defined between %.lf/%.lf/%.lf and %.lf/%.lf/%.lf): <a href=\"%s\">%s</a> <br>\n ",
jprev1, mprev1,anprev1,jprev2, mprev2,anprev2,subdirf2(fileres,"p"),subdirf2(fileres,"p"));
fprintf(fichtm,"\
fprintf(fichtm,"\
-\n<br><li><h4> <a name="secondorder">Result files (second order: variances)</a></h4>\n\
+\n<br><li><h4> <a name='secondorder'>Result files (second order: variances)</a></h4>\n\
- Parameter file with estimated parameters and covariance matrix: <a href=\"%s\">%s</a> <br>\n", rfileres,rfileres);
fprintf(fichtm," - Variance of one-step probabilities: <a href=\"%s\">%s</a> <br>\n",
char ca[32], cb[32], cc[32];
/* FILE *fichtm; *//* Html File */
/* FILE *ficgp;*/ /*Gnuplot File */
+ struct stat info;
double agedeb, agefin,hf;
double ageminpar=1.e20,agemin=1.e20, agemaxpar=-1.e20, agemax=-1.e20;
printf("pathtot=%s, path=%s, optionfile=%s\n",pathtot,path,optionfile);*/
/* cutv(path,optionfile,pathtot,'\\');*/
+ /* Split argv[0], imach program to get pathimach */
+ printf("\nargv[0]=%s argv[1]=%s, \n",argv[0],argv[1]);
split(argv[0],pathimach,optionfile,optionfilext,optionfilefiname);
+ printf("\nargv[0]=%s pathimach=%s, \noptionfile=%s \noptionfilext=%s \noptionfilefiname=%s\n",argv[0],pathimach,optionfile,optionfilext,optionfilefiname);
/* strcpy(pathimach,argv[0]); */
+ /* Split argv[1]=pathtot, parameter file name to get path, optionfile, extension and name */
split(pathtot,path,optionfile,optionfilext,optionfilefiname);
- printf("pathimach=%s, pathtot=%s,\npath=%s,\noptionfile=%s \noptionfilext=%s \noptionfilefiname=%s\n",pathimach,pathtot,path,optionfile,optionfilext,optionfilefiname);
+ printf("\npathtot=%s,\npath=%s,\noptionfile=%s \noptionfilext=%s \noptionfilefiname=%s\n",pathtot,path,optionfile,optionfilext,optionfilefiname);
chdir(path);
strcpy(command,"mkdir ");
strcat(command,optionfilefiname);
/*------ End -----------*/
chdir(path);
+#ifndef UNIX
strcpy(plotcmd,"\"");
+#endif
strcat(plotcmd,pathimach);
+ /*strcat(plotcmd,CHARSEPARATOR);*/
strcat(plotcmd,GNUPLOTPROGRAM);
+#ifndef UNIX
strcat(plotcmd,"\"");
+#endif
+ if(stat(plotcmd,&info)){
+ printf("Error gnuplot program not found: %s\n",plotcmd);fflush(stdout);
+ }
strcat(plotcmd," ");
strcat(plotcmd,optionfilegnuplot);
printf("Starting graphs with: %s",plotcmd);fflush(stdout);
+
if((outcmd=system(plotcmd)) != 0){
printf(" Problem with gnuplot\n");
}