00001 #include <esg/Statistics.h>
00002
00003 using namespace esg;
00004
00005 Statistics* Statistics::_instance = NULL;
00006
00007 const unsigned Statistics::NUM_OIDS = 11;
00008 const Statistic::OID Statistics::OID_BV_TESTS = 0;
00009 const Statistic::OID Statistics::OID_BV_TESTS_SUC = 1;
00010 const Statistic::OID Statistics::OID_PRIM_TESTS = 2;
00011 const Statistic::OID Statistics::OID_PRIM_TESTS_SUC = 3;
00012 const Statistic::OID Statistics::OID_SHADOW_TESTS = 4;
00013 const Statistic::OID Statistics::OID_SHADOW_TESTS_SUC = 5;
00014 const Statistic::OID Statistics::OID_REFLECTIONS = 6;
00015 const Statistic::OID Statistics::OID_REFRACTIONS = 7;
00016 const Statistic::OID Statistics::OID_RENDERING_TIME = 8;
00017 const Statistic::OID Statistics::OID_CPU_RENDERING_TIME = 9;
00018 const Statistic::OID Statistics::OID_PRIMARY_RAYS = 10;
00019
00020 Statistics::Statistics()
00021 {
00022 _stats[OID_BV_TESTS] = new Statistic(OID_BV_TESTS,
00023 "bounding volume - ray tests",
00024 new Counter);
00025 _stats[OID_BV_TESTS_SUC] = new Statistic(OID_BV_TESTS_SUC,
00026 "BV - ray tests succeeded",
00027 new Counter);
00028 _stats[OID_PRIM_TESTS] = new Statistic(OID_PRIM_TESTS,
00029 "primitive - ray tests",
00030 new Counter);
00031 _stats[OID_PRIM_TESTS_SUC] = new Statistic(OID_PRIM_TESTS_SUC,
00032 "primitive - ray tests succeeded",
00033 new Counter);
00034 _stats[OID_SHADOW_TESTS] = new Statistic(OID_SHADOW_TESTS,
00035 "shadow tests",
00036 new Counter);
00037 _stats[OID_SHADOW_TESTS_SUC] = new Statistic(OID_SHADOW_TESTS_SUC,
00038 "shadow tests succeeded",
00039 new Counter);
00040 _stats[OID_REFLECTIONS] = new Statistic(OID_REFLECTIONS,
00041 "reflections",
00042 new Counter);
00043 _stats[OID_REFRACTIONS] = new Statistic(OID_REFRACTIONS,
00044 "refractions",
00045 new Counter);
00046 _stats[OID_RENDERING_TIME] = new Statistic(OID_RENDERING_TIME,
00047 "rendering time (in sec.)",
00048 new Stopwatch);
00049 _stats[OID_CPU_RENDERING_TIME] = new Statistic(OID_CPU_RENDERING_TIME,
00050 "CPU rendering time (in sec.)",
00051 new StopwatchCPU);
00052 _stats[OID_PRIMARY_RAYS] = new Statistic(OID_PRIMARY_RAYS,
00053 "number of primary rays",
00054 new Counter);
00055 }