1#ifndef DEVICE_TOOLS_AIDL_H 2#define DEVICE_TOOLS_AIDL_H 3 4#include <string.h> 5#include <string> 6#include <vector> 7 8using namespace std; 9 10enum { 11 COMPILE_AIDL, 12 PREPROCESS_AIDL 13}; 14 15// This struct is the parsed version of the command line options 16struct Options 17{ 18 int task; 19 bool failOnParcelable; 20 vector<string> importPaths; 21 vector<string> preprocessedFiles; 22 string inputFileName; 23 string outputFileName; 24 string outputBaseFolder; 25 string depFileName; 26 bool autoDepFile; 27 28 vector<string> filesToPreprocess; 29}; 30 31// takes the inputs from the command line and fills in the Options struct 32// Returns 0 on success, and nonzero on failure. 33// It also prints the usage statement on failure. 34int parse_options(int argc, const char* const* argv, Options *options); 35 36#endif // DEVICE_TOOLS_AIDL_H 37