37d8e404b8c0cbfc040e8ad5daba16d986d6258a
[scilab.git] / scilab / modules / parameters / demos / params_demo.sce
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2013 - Scilab Enterprises - Paul Bignier
4 // Copyright (C) 2012 - DIGITEO
5 //
6 //  This file is distributed under the same license as the Scilab package.
7 // =============================================================================
8
9 function demo_param()
10
11     lines(0);
12
13     messagebox(_("This demo shows examples of plist utilizations: creation, insertion, removal, ..."), "modal", "info");
14
15     printf(_("\nCreate a plist ''%s'' containing two fields ''min'' = [0 0 0] and ''max'' = [1 1 1].\n"), "test_list");
16
17     test_list = init_param();
18
19     test_list = add_param(test_list, "min");
20     test_list = add_param(test_list, "max");
21     disp(list_param(test_list));
22
23     printf(_("\nCheck fields: \n"));
24     printf("  is_param(test_list, ''min'') = %f\n", 1.0*is_param(test_list, "min"));
25     printf("  is_param(test_list, ''max'') = %f\n", 1.0*is_param(test_list, "max"));
26     printf("  is_param(test_list, ''mex'') = %f\n\n", 1.0*is_param(test_list, "mex"));
27
28     printf(_("Set ''min'' = [0 0 0] and ''max'' = [1 1 1]:\n"));
29     printf("  set_param(test_list, ''min'', [0 0 0]);\n");
30     printf("  set_param(test_list, ''max'', [1 1 1]);\n\n");
31     test_list = set_param(test_list, "min", [0 0 0]);
32     test_list = set_param(test_list, "max", [1 1 1]);
33
34     printf(_("Check values: \n"));
35     printf("  get_param(test_list, ''min'') = "); disp(get_param(test_list, "min"));
36     printf("  get_param(test_list, ''max'') = "); disp(get_param(test_list, "max"));
37     printf("  get_param(test_list, ''mex'') = "); disp(get_param(test_list, "mex"));
38
39     printf(_("\nRemove the parameter ''min'' from %s.\n"), "test_list");
40     printf(_("\nBefore remove_param: \n"));
41     disp(list_param(test_list));
42
43     printf("\n  test_list = remove_param(test_list, ''min'');\n")
44     test_list = remove_param(test_list, "min");
45
46     printf(_("\nAfter remove_param: \n"));
47     disp(list_param(test_list));
48
49     printf(_("\nCheck removal: \n"));
50     printf("  get_param(test_list, ''min'') = ");
51     disp(get_param(test_list, "min"));
52
53     printf(_("\nCheck type: \n"));
54     printf("  typeof(test_list) = %s\n\n", typeof(test_list));
55
56     messagebox(_(["Now, show that parameters operators only apply to the plist type";
57     "by adding a parameter to an empty matrix."]), "modal", "info");
58
59     A = [];
60
61     printf(_("\nAdd a parameter to a non plist ''A''.\n"));
62     printf(_("\nBefore add_param: \n"));
63     disp(A, " A = ");
64
65     printf("\n  try [A, err] = add_param(A, ''min''); catch err = %%t; end;\n");
66     try
67         [A, err] = add_param(A, "min");
68     catch
69         err = %t;
70     end
71
72     printf(_("\nAfter add_param: \n"));
73     disp(A, " A = ");
74     printf(_("\nError = %f. If error <> 0, then the error has been caught.\n"), 1*err);
75
76 endfunction
77
78 demo_param();
79 clear demo_params;