int main( int argc, char **argv) { olRoot root; olNode node; uint32 xNode; utStart(); utInitLogFile("ordered_benchmark.log"); olDatabaseStart(); root = olRootAlloc(); if(argc != 1) { utExit("Usage: benchmark"); } for(xNode = 0; xNode < NUM_NODES; xNode++) { nodeCreate(root, xNode); } for(xNode = NUM_NODES; xNode < NUM_NODES << 1; xNode++) { nodeCreate(root, xNode); node = olRootGetFirstNode(root); olRootRemoveNode(root, node); olNodeFree(node); } olVerifyOrderedList(root); olReportStats(root); olSafeForeachRootNode(root, node) { olRootRemoveNode(root, node); olNodeFree(node); } olEndSafeRootNode;
// Main entry point. Process parameters and call the generators. int main( int argc, char *argv[]) { char *exeName; if(argc != 3) { fprintf(stderr, "Usage: %s prefix commandFile\n", argv[0]); return 1; } utStart(); exeName = utReplaceSuffix(utBaseName(argv[0]), ""); utInitLogFile(utSprintf("%s.log", exeName)); coDatabaseStart(); coTheRoot = coRootAlloc(); coParseCommandFile(argv[2]); coPreprocessDataTypes(); coGenerateCommandParser(argv[2], argv[1]); coDatabaseStop(); utStop(false); return 0; }