[BACK]Return to ox_plot.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / plot

Diff for /OpenXM_contrib2/asir2000/plot/ox_plot.c between version 1.8 and 1.11

version 1.8, 2000/10/06 06:05:24 version 1.11, 2001/08/20 09:03:28
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM: OpenXM_contrib2/asir2000/plot/ox_plot.c,v 1.7 2000/09/12 06:05:31 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/plot/ox_plot.c,v 1.10 2000/11/09 01:51:12 noro Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
Line 69  extern int do_message;
Line 69  extern int do_message;
 extern int ox_flushing;  extern int ox_flushing;
 extern jmp_buf ox_env;  extern jmp_buf ox_env;
 extern MATHCAP my_mathcap;  extern MATHCAP my_mathcap;
   extern char LastError[];
   
 void create_error(ERR *,unsigned int ,char *);  void create_error(ERR *,unsigned int ,char *);
   
Line 92  static void asir_do_cmd(unsigned int,unsigned int);
Line 93  static void asir_do_cmd(unsigned int,unsigned int);
 static void process_ox();  static void process_ox();
 static void asir_executeFunction();  static void asir_executeFunction();
   
 void ox_plot_main(int argc,char **argv) {  #if defined(VISUAL)
   void ox_plot_main()
   #else
   void ox_plot_main(int argc,char **argv)
   #endif
   {
         int ds;          int ds;
         fd_set r;          fd_set r;
         int n;          int n;
   
   #if !defined(VISUAL)
         ox_asir_init(argc,argv);          ox_asir_init(argc,argv);
         init_plot_display(argc,argv);          init_plot_display(argc,argv);
         ds = ConnectionNumber(display);          ds = ConnectionNumber(display);
   #endif
         if ( do_message )          if ( do_message )
                 fprintf(stderr,"I'm an ox_plot, Version %d.\n",ASIR_VERSION);                  fprintf(stderr,"I'm an ox_plot, Version %d.\n",ASIR_VERSION);
   
Line 110  void ox_plot_main(int argc,char **argv) {
Line 118  void ox_plot_main(int argc,char **argv) {
                 ox_send_sync(0);                  ox_send_sync(0);
         }          }
         while ( 1 ) {          while ( 1 ) {
   #if defined(VISUAL)
                   process_ox();
   #else
                 if ( ox_data_is_available(0) )                  if ( ox_data_is_available(0) )
                         process_ox();                          process_ox();
                 else {                  else {
Line 122  void ox_plot_main(int argc,char **argv) {
Line 133  void ox_plot_main(int argc,char **argv) {
                                 process_xevent();                                  process_xevent();
                 }                  }
         }          }
   #endif
 }  }
   
 static void process_ox()  static void process_ox()
Line 132  static void process_ox()
Line 144  static void process_ox()
         ERR err;          ERR err;
         unsigned int serial;          unsigned int serial;
         int ret;          int ret;
         extern char LastError[];  
   
         serial = ox_recv(0,&id,&obj);          serial = ox_recv(0,&id,&obj);
         if ( do_message )          if ( do_message )
Line 144  static void process_ox()
Line 155  static void process_ox()
                                 break;                                  break;
                         if ( do_message )                          if ( do_message )
                                 fprintf(stderr," %s\n",name_of_cmd(cmd));                                  fprintf(stderr," %s\n",name_of_cmd(cmd));
                         if ( ret = setjmp(env) ) {                          if ( ret = setjmp(main_env) ) {
                                 if ( ret == 1 ) {                                  if ( ret == 1 ) {
                                         create_error(&err,serial,LastError);                                          create_error(&err,serial,LastError);
                                         asir_push_one((Obj)err);                                          asir_push_one((Obj)err);
Line 207  static void asir_do_cmd(unsigned int cmd,unsigned int 
Line 218  static void asir_do_cmd(unsigned int cmd,unsigned int 
                         asir_executeString();                          asir_executeString();
                         break;                          break;
                 case SM_executeFunction:                  case SM_executeFunction:
                         asir_executeFunction();                          asir_executeFunction(serial);
                         break;                          break;
                 case SM_shutdown:                  case SM_shutdown:
                         asir_terminate(2);                          asir_terminate(2);
Line 227  static void asir_do_cmd(unsigned int cmd,unsigned int 
Line 238  static void asir_do_cmd(unsigned int cmd,unsigned int 
         }          }
 }  }
   
 static void asir_executeFunction()  static void asir_executeFunction(serial)
   int serial;
 {  {
         char *func;          char *func;
         int argc;          int argc;
Line 235  static void asir_executeFunction()
Line 247  static void asir_executeFunction()
         FUNC f;          FUNC f;
         Q ret;          Q ret;
         VL vl;          VL vl;
           ERR err;
         NODE n,n1;          NODE n,n1;
   
         func = ((STRING)asir_pop_one())->body;          func = ((STRING)asir_pop_one())->body;
Line 247  static void asir_executeFunction()
Line 260  static void asir_executeFunction()
         if ( n )          if ( n )
                 NEXT(n1) = 0;                  NEXT(n1) = 0;
         id = -1;          id = -1;
         if ( !strcmp(func,"plot") )          if ( !strcmp(func,"plot") ) {
                 id = plot(n);                  id = plot(n);
         else if ( !strcmp(func,"arrayplot") )                  STOQ(id,ret); asir_push_one((Obj)ret);
           } else if ( !strcmp(func,"arrayplot") ) {
                 id = arrayplot(n);                  id = arrayplot(n);
         else if ( !strcmp(func,"plotover") )                  STOQ(id,ret); asir_push_one((Obj)ret);
                 id = plotover(n);          } else if ( !strcmp(func,"open_canvas") ) {
         else if ( !strcmp(func,"drawcircle") )                  id = open_canvas(n);
                 id = drawcircle(n);                  STOQ(id,ret); asir_push_one((Obj)ret);
         STOQ(id,ret);          } else if ( !strcmp(func,"plotover") ) {
 #if 0                  plotover(n);
         asir_push_one((Obj)ret);          } else if ( !strcmp(func,"drawcircle") ) {
 #endif                  drawcircle(n);
           } else if ( !strcmp(func,"draw_obj") ) {
                   if ( draw_obj(n) < 0 ) {
                           create_error(&err,serial,LastError);
                           asir_push_one((Obj)err);
                   }
           } else if ( !strcmp(func,"clear_canvas") ) {
                   clear_canvas(n);
           }
 }  }

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.11

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>