1# do not dump Octave core
2if exist("crash_dumps_octave_core", "builtin")
3  crash_dumps_octave_core(0);
4endif
5
6swigexample
7
8# Try to set the values of some global variables
9
10swigexample.cvar.ivar   =  42;
11swigexample.cvar.svar   = -31000;
12swigexample.cvar.lvar   =  65537;
13swigexample.cvar.uivar  =  123456;
14swigexample.cvar.usvar  =  61000;
15swigexample.cvar.ulvar  =  654321;
16swigexample.cvar.scvar  =  -13;
17swigexample.cvar.ucvar  =  251;
18swigexample.cvar.cvar   =  "S";
19swigexample.cvar.fvar   =  3.14159;
20swigexample.cvar.dvar   =  2.1828;
21swigexample.cvar.strvar =  "Hello World";
22swigexample.cvar.iptrvar= swigexample.new_int(37);
23swigexample.cvar.ptptr  = swigexample.new_Point(37,42);
24swigexample.cvar.name   = "Bill";
25
26# Now print out the values of the variables
27
28printf("Variables (values printed from Octave)\n");
29
30printf("ivar      = %i\n", swigexample.cvar.ivar);
31printf("svar      = %i\n", swigexample.cvar.svar);
32printf("lvar      = %i\n", swigexample.cvar.lvar);
33printf("uivar     = %i\n", swigexample.cvar.uivar);
34printf("usvar     = %i\n", swigexample.cvar.usvar);
35printf("ulvar     = %i\n", swigexample.cvar.ulvar);
36printf("scvar     = %i\n", swigexample.cvar.scvar);
37printf("ucvar     = %i\n", swigexample.cvar.ucvar);
38printf("fvar      = %i\n", swigexample.cvar.fvar);
39printf("dvar      = %i\n", swigexample.cvar.dvar);
40printf("cvar      = %s\n", swigexample.cvar.cvar);
41printf("strvar    = %s\n", swigexample.cvar.strvar);
42#printf("cstrvar   = %s\n", swigexample.cvar.cstrvar);
43swigexample.cvar.iptrvar
44printf("name      = %i\n", swigexample.cvar.name);
45printf("ptptr     = %s\n", swigexample.Point_print(swigexample.cvar.ptptr));
46#printf("pt        = %s\n", swigexample.cvar.Point_print(swigexample.cvar.pt));
47
48printf("\nVariables (values printed from C)\n");
49
50swigexample.print_vars();
51
52printf("\nNow I'm going to try and modify some read only variables\n");
53
54printf("     Trying to set 'path'\n");
55try
56    swigexample.cvar.path = "Whoa!";
57    printf("Hey, what's going on?!?! This shouldn't work\n");
58catch
59    printf("Good.\n");
60end_try_catch
61
62printf("     Trying to set 'status'\n");
63try
64    swigexample.cvar.status = 0;
65    printf("Hey, what's going on?!?! This shouldn't work\n");
66catch
67    printf("Good.\n");
68end_try_catch
69
70
71printf("\nI'm going to try and update a structure variable.\n");
72
73swigexample.cvar.pt = swigexample.cvar.ptptr;
74
75printf("The new value is %s\n", swigexample.Point_print(swigexample.cvar.pt));
76