Exemplo n.º 1
0
int main(int argc, char *argv[])
{
	atexit( gengetopt_free );

	if( cmdline_parser(argc, argv, &args_info) != 0 ) {
		return 2; // exit
	}

	check_display_args();
	gengetopt_check_opts();

	TwsXml::setSkipDefaults( !skipdefp );
	if( !durationStrp ) {
		durationStrp = max_durationStr( barSizeSettingp );
	}
	split_whatToShow();
	set_includeExpired();

	if( histjobp ) {
		if( !gen_hist_job() ) {
			return 1;
		}
	} else if( to_csvp ) {
		if( !gen_csv() ) {
			return 1;
		}
	} else {
		fprintf( stderr, "error, nothing to do, use -H or -C.\n" );
		return 2;
	}

	return 0;
}
Exemplo n.º 2
0
int main(int argc, char *argv[])
{
	int ret = 0;
	const char *ms_dirp = ".";

#ifdef _WIN32
	/* never write CRLF line feeds */
	_setmode(_fileno(stderr),_O_BINARY);
	_setmode(_fileno(stdout),_O_BINARY);
#endif

	atexit( gengetopt_free );

	if( cmdline_parser(argc, argv, &args_info) != 0 ) {
		ret = 2;
		goto end;
	}

	check_display_args();

	if( args_info.inputs_num == 1 ) {
		ms_dirp = args_info.inputs[0];
	} else if( args_info.inputs_num > 1 ) {
		fprintf( stderr, "error: bad usage\n" );
		ret = 2;
		goto end;
	}

	ret = ms2csv( ms_dirp );

end:
	/* TODO teach Metastock::setError() to distinguish usage and other errors */
	if( ret == 2 ) {
		fprintf( stderr, "Try `%s --help' for more information.\n", argv[0] );
	}
	return ret; // exit
}
Exemplo n.º 3
0
int main(int argc, char *argv[])
{
#ifdef _WIN32
	/* never write CRLF line feeds */
	_setmode(_fileno(stderr),_O_BINARY);
	_setmode(_fileno(stdout),_O_BINARY);
#endif
	
	atexit( gengetopt_free );
	
	if( cmdline_parser(argc, argv, &args_info) != 0 ) {
		return 2; // exit
	}
	
	check_display_args();
	
	const char *ms_dirp = ".";
	if( args_info.inputs_num == 1 ) {
		ms_dirp = args_info.inputs[0];
	} else if( args_info.inputs_num > 1 ) {
		fprintf( stderr, "error: bad usage\n" );
		return 2; // exit
	}
	
	Metastock ms;
	
	if( args_info.output_given ) {
		if( ! ms.set_outfile( args_info.output_arg ) ) {
			fprintf( stderr, "error: %s\n", ms.lastError() );
			return 2; // exit
		}
	}
	
	if( ! ms.setDir( ms_dirp ) ) {
		fprintf( stderr, "error: %s\n", ms.lastError() );
		return 2; // exit
	}
	
	if( !ms.setOutputFormat(
		  args_info.field_separator_given ?*args_info.field_separator_arg :'\t',
		  args_info.format_given ? args_info.format_arg : 0,
		  args_info.skip_header_given ) ) {
		fprintf( stderr, "error: %s\n", ms.lastError() );
		return 2; // exit
	}
	
	if( args_info.fdat_given ) {
		if( ! ms.incudeFile( args_info.fdat_arg ) ) {
			fprintf( stderr, "error: %s\n", ms.lastError() );
			return 2; // exit
		}
	}
	
	if( args_info.date_from_given ) {
		if( !ms.setPrintDateFrom( args_info.date_from_arg ) ) {
			fprintf( stderr, "error: %s\n", ms.lastError() );
			return 2; // exit
		}
	}
	
	if( args_info.exclude_older_than_given ) {
		if( !ms.excludeFiles( args_info.exclude_older_than_arg ) ) {
			fprintf( stderr, "error: %s\n", ms.lastError() );
			return 2; // exit
		}
	}
	
	bool dumpdata = true;
	if( args_info.dump_master_given ) {
		dumpdata = false;
		ms.dumpMaster();
	}
	if( args_info.dump_emaster_given ) {
		dumpdata = false;
		ms.dumpEMaster();
	}
	if( args_info.dump_xmaster_given ) {
		dumpdata = false;
		if( ms.hasXMaster() ) {
			ms.dumpXMaster();
		}
	}
	
	if( args_info.symbols_given ) {
		dumpdata = false;
		if( ! ms.dumpSymbolInfo() ) {
			fprintf( stderr, "error: %s\n", ms.lastError() );
			return 2; // exit
		}
	}
	
	if( dumpdata ) {
		if( ! ms.dumpData() ) {
			fprintf( stderr, "error: %s\n", ms.lastError() );
			return 2; // exit
		}
	}
	
	return 0;
}