Add command line parameters for benchmark.

This commit is contained in:
John Hood
2013-12-15 04:05:45 -05:00
parent 67c22e5065
commit 73fd6442c5
+11 -4
View File
@@ -62,21 +62,28 @@ const int ITERATIONS = 100000;
using namespace Terminal; using namespace Terminal;
int main( void ) int main( int argc, char **argv )
{ {
int fbmod = 0; int fbmod = 0;
Framebuffer local_framebuffers[ 2 ] = { Framebuffer(80,24), Framebuffer(80,24) }; int height = 80, width = 24;
int iterations = ITERATIONS;
if (argc > 1) iterations = atoi(argv[1]);
if (argc > 3) {
height = atoi(argv[2]);
width = atoi(argv[3]);
}
Framebuffer local_framebuffers[ 2 ] = { Framebuffer(height,width), Framebuffer(height,width) };
Framebuffer *local_framebuffer = &(local_framebuffers[ fbmod ]); Framebuffer *local_framebuffer = &(local_framebuffers[ fbmod ]);
Framebuffer *new_state = &(local_framebuffers[ !fbmod ]); Framebuffer *new_state = &(local_framebuffers[ !fbmod ]);
Overlay::OverlayManager overlays; Overlay::OverlayManager overlays;
Display display( true ); Display display( true );
Complete local_terminal( 80, 24 ); Complete local_terminal( height, width );
/* Adopt native locale */ /* Adopt native locale */
set_native_locale(); set_native_locale();
fatal_assert( is_utf8_locale() ); fatal_assert( is_utf8_locale() );
for ( int i = 0; i < ITERATIONS; i++ ) { for ( int i = 0; i < iterations; i++ ) {
/* type a character */ /* type a character */
overlays.get_prediction_engine().new_user_byte( i + 'x', *local_framebuffer ); overlays.get_prediction_engine().new_user_byte( i + 'x', *local_framebuffer );