OMAPI  1.8
Open Movement Public API
main.c
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2009-2012, Newcastle University, UK.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  * 1. Redistributions of source code must retain the above copyright notice,
8  * this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright notice,
10  * this list of conditions and the following disclaimer in the documentation
11  * and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
17  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
23  * POSSIBILITY OF SUCH DAMAGE.
24  */
25 
38 #ifdef _WIN32
39 #pragma comment(lib, "omapi.lib")
40 #if defined(_DEBUG)
41 #include <windows.h>
42 #endif
43 #endif
44 
45 #include <stdlib.h>
46 #include <stdio.h>
47 #include <string.h>
48 
49 
50 /* Externally available main functions for each example */
51 extern int test_main(int argc, char *argv[]);
52 extern int deploy_main(int argc, char *argv[]);
53 extern int download_main(int argc, char *argv[]);
54 extern int downloadmem_main(int argc, char *argv[]);
55 extern int clear_main(int argc, char *argv[]);
56 extern int convert_main(int argc, char *argv[]);
57 extern int verify_main(int argc, char *argv[]);
58 extern int record_main(int argc, char *argv[]);
59 
60 
61 /* Main function just chains to the required example code */
62 int main(int argc, char *argv[])
63 {
64  int ret;
65 
66  fprintf(stderr, "OMAPI Example Code Command Line Interface\n");
67  fprintf(stderr, "\n");
68 
69  if (argc > 1 && !strcmp(argv[1], "test" )) { ret = test_main(argc - 1, argv + 1); }
70  else if (argc > 1 && !strcmp(argv[1], "deploy")) { ret = deploy_main(argc - 1, argv + 1); }
71  else if (argc > 1 && !strcmp(argv[1], "download")) { ret = download_main(argc - 1, argv + 1); }
72  else if (argc > 1 && !strcmp(argv[1], "downloadmem")) { ret = downloadmem_main(argc - 1, argv + 1); }
73  else if (argc > 1 && !strcmp(argv[1], "clear")) { ret = clear_main(argc - 1, argv + 1); }
74  else if (argc > 1 && !strcmp(argv[1], "convert")) { ret = convert_main(argc - 1, argv + 1); }
75  else if (argc > 1 && !strcmp(argv[1], "verify")) { ret = verify_main(argc - 1, argv + 1); }
76  else if (argc > 1 && !strcmp(argv[1], "record")) { ret = record_main(argc - 1, argv + 1); }
77  else
78  {
79  fprintf(stderr, "Usage: omapi <test|deploy|download|downloadmem|clear|convert|verify|record> [parameters...]\n");
80  fprintf(stderr, "\n");
81  ret = -1;
82  }
83 
84 #if defined(_WIN32) && defined(_DEBUG)
85  if (IsDebuggerPresent()) { fprintf(stderr, "Press [enter] to exit..."); getc(stdin); }
86 #endif
87 
88  return ret;
89 }
download_main
int download_main(int argc, char *argv[])
Definition: download.c:213
convert_main
int convert_main(int argc, char *argv[])
Definition: convert.c:120
deploy_main
int deploy_main(int argc, char *argv[])
Definition: deploy.c:298
verify_main
int verify_main(int argc, char *argv[])
Definition: verify.c:1091
clear_main
int clear_main(int argc, char *argv[])
Definition: clear.c:134
main
int main(int argc, char *argv[])
Definition: main.c:62
test_main
int test_main(int argc, char *argv[])
Definition: test.c:234
record_main
int record_main(int argc, char *argv[])
Definition: record.c:434
downloadmem_main
int downloadmem_main(int argc, char *argv[])
Definition: downloadmem.c:267