112855Sgabeblack@google.com#include "systemc.h"
212855Sgabeblack@google.com
312855Sgabeblack@google.cominline void flags_value()
412855Sgabeblack@google.com{
512855Sgabeblack@google.com	ios::fmtflags flags = cout.flags();
612855Sgabeblack@google.com	cout << hex << flags << dec << endl;
712855Sgabeblack@google.com	if ( sc_io_show_base(cout) ) cout << "showbase" << endl;
812855Sgabeblack@google.com}
912855Sgabeblack@google.com
1012855Sgabeblack@google.com#define TEST(BASE) \
1112855Sgabeblack@google.com{ \
1212855Sgabeblack@google.com	BASE x; \
1312855Sgabeblack@google.com	cout << endl << #BASE << endl; \
1412855Sgabeblack@google.com	for ( i = 0; i < 256; i++ ) \
1512855Sgabeblack@google.com	{ \
1612855Sgabeblack@google.com		x = i; \
1712855Sgabeblack@google.com		cout << "   "; \
1812855Sgabeblack@google.com		cout << std::noshowbase; \
1912855Sgabeblack@google.com		cout << dec << " d: " << x; \
2012855Sgabeblack@google.com		cout << oct << " o: " << x; \
2112855Sgabeblack@google.com		cout << hex << " x: " << x; \
2212855Sgabeblack@google.com		cout << std::showbase; \
2312855Sgabeblack@google.com		cout << dec << " d: " << x; \
2412855Sgabeblack@google.com		cout << oct << " o: " << x; \
2512855Sgabeblack@google.com		cout << hex << " x: " << x; \
2612855Sgabeblack@google.com		cout << endl; \
2712855Sgabeblack@google.com	} \
2812855Sgabeblack@google.com}
2912855Sgabeblack@google.comint sc_main(int argc, char* argv[])
3012855Sgabeblack@google.com{
3112855Sgabeblack@google.com	int           i;
3212855Sgabeblack@google.com	sc_biguint<8> x;
3312855Sgabeblack@google.com
3412855Sgabeblack@google.com	TEST(sc_bigint<8>)
3512855Sgabeblack@google.com	TEST(sc_biguint<8>)
3612855Sgabeblack@google.com	TEST(sc_int<8>)
3712855Sgabeblack@google.com	TEST(sc_uint<8>)
3812855Sgabeblack@google.com	TEST(sc_lv<8>)
3912855Sgabeblack@google.com	TEST(sc_bv<8>)
4013158Sgabeblack@google.com	cout << "Program completed" << endl;
4112855Sgabeblack@google.com
4212855Sgabeblack@google.com	return 0;
4312855Sgabeblack@google.com}
44