forked from Kitware/VTK
/
vtkParseMain.h
89 lines (70 loc) · 2.84 KB
/
vtkParseMain.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/*=========================================================================
Program: Visualization Toolkit
Module: vtkParseMain.h
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
/**
vtkParseMain.h provides argument parsing for the wrapper executables.
Usage: vtkWrap [options] infile ...
-D <macro[=def]> add a macro definition
-U <macro> cancel a macro definition
-I <dir> add an include directory
-o <file> specify the output file
@<file> read arguments from a file
--help print a help message and exit
--version print the VTK version number and exit
--hints <file> hints file
--types <file> type hierarchy file
Notes:
1) The "-o" option is needed when there are multiple input files.
Otherwise, the output file can be given after the input file.
2) The "@file" option allows arguments to be stored in a file,
instead of given on the command line. The use of such a file
is sometimes necessary to avoid overflowing the 8191-character
command-line limit on Windows. If the file is not found, then
"@file" will be passed as as a command-line parameter.
*/
#ifndef vtkParseMain_h
#define vtkParseMain_h
#include "vtkParseData.h"
#include <stdio.h>
/**
* Options for the wrappers
*/
typedef struct _OptionInfo
{
int NumberOfFiles; /* the total number of file arguments */
char **Files; /* all of the file arguments */
char *InputFileName; /* the first file argument */
char *OutputFileName; /* the second file, or the "-o" file */
int NumberOfHintFileNames; /* the total number of hints arguments */
char **HintFileNames; /* all of the hints arguments */
char *HierarchyFileName; /* the file preceded by "--types" XXX DEPRECATED */
int NumberOfHierarchyFileNames; /* the total number of types argument */
char **HierarchyFileNames; /* the file preceded by "--types" */
} OptionInfo;
#ifdef __cplusplus
extern "C" {
#endif
/**
* Return the options provided on the command line
*/
OptionInfo *vtkParse_GetCommandLineOptions();
/**
* The main function, parses the file and returns the result.
*/
FileInfo *vtkParse_Main(int argc, char *argv[]);
/**
* A main function that can take multiple input files.
* It does not parse the files. It will exit on error.
*/
void vtkParse_MainMulti(int argc, char *argv[]);
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif