cuikequations.c
Go to the documentation of this file.
1 #include "parameters.h"
2 #include "defines.h"
3 #include "world.h"
4 #include "error.h"
5 #include "filename.h"
6 
7 #include <stdlib.h>
8 #include <string.h>
9 
63 int main(int argc, char **arg)
64 {
65  Tparameters parameters; /* Parameters */
66  Tworld world; /* Environemtn and mechanisms */
67 
68  Tfilename fworld;
69  Tfilename fparam;
70 
71  if (argc>1)
72  {
73  /*Init parameters*/
74  CreateFileName(NULL,arg[1],NULL,PARAM_EXT,&fparam);
75  #if (_DEBUG>0)
76  printf("Reading parameter file : %s\n",GetFileFullName(&fparam));
77  #endif
78  InitParametersFromFile(GetFileFullName(&fparam),&parameters);
79 
80  /*Init world*/
81  CreateFileName(NULL,arg[1],NULL,WORLD_EXT,&fworld);
82  #if (_DEBUG>0)
83  printf("Reading world file : %s\n",GetFileFullName(&fworld));
84  #endif
85  InitWorldFromFile(&parameters,&fworld,&world);
86 
87  PrintWorldCS(&parameters,&fworld,&world);
88 
89  /* Delete the data structures */
90  DeleteWorld(&world);
91  DeleteParameters(&parameters);
92 
93  /* Delete the file names */
94  DeleteFileName(&fparam);
95  DeleteFileName(&fworld);
96  }
97  else
98  {
99  fprintf(stderr," Wrong number of parameters.\n");
100  fprintf(stderr," Use:\n");
101  fprintf(stderr," cuikequations <Sing> <problem name>\n");
102  fprintf(stderr," where \n");
103  fprintf(stderr," <problem name> is the world file from which to generate the equations\n");
104  }
105 
106  return(EXIT_SUCCESS);
107 }
108 
Data structure to hold the information about the name of a file.
Definition: filename.h:248
void InitWorldFromFile(Tparameters *p, Tfilename *f, Tworld *w)
Constructor.
Definition of the Tfilename type and the associated functions.
#define PARAM_EXT
File extension for parameter files.
Definition: filename.h:131
All the necessary information to generate equations for mechanisms.
Definition: world.h:124
Definition of the Tworld type and the associated functions.
void DeleteWorld(Tworld *w)
Destructor.
Definition: world.c:2792
Error and warning functions.
void DeleteFileName(Tfilename *fn)
Destructor.
Definition: filename.c:205
int main(int argc, char **arg)
Main body of the cuikequations application.
Definition: cuikequations.c:63
Definitions of constants and macros used in several parts of the cuik library.
void PrintWorldCS(Tparameters *p, Tfilename *fname, Tworld *w)
Prints the cuiksystems derived from a world.
Definition: world.c:2721
A table of parameters.
void CreateFileName(char *path, char *name, char *suffix, char *ext, Tfilename *fn)
Constructor.
Definition: filename.c:22
void InitParametersFromFile(char *file, Tparameters *p)
Constructor from a file.
Definition: parameters.c:51
char * GetFileFullName(Tfilename *fn)
Gets the file full name (paht+name+extension).
Definition: filename.c:151
#define WORLD_EXT
File extension for problem files.
Definition: filename.h:161
void DeleteParameters(Tparameters *p)
Destructor.
Definition: parameters.c:295
Definition of the Tparameters type and the associated functions.