Win32OperatingSystem.st
changeset 10741 68517f1a68a7
parent 10735 f8f531edd383
child 10746 6a8bf3c28a7d
equal deleted inserted replaced
10740:4a87c1bbaf66 10741:68517f1a68a7
 10664     st_perObject st_perCounter st_perInstance
 10664     st_perObject st_perCounter st_perInstance
 10665     |
 10665     |
 10666 
 10666 
 10667 %{
 10667 %{
 10668     //declarate counters
 10668     //declarate counters
 10669     int objectIterator, counterIterator, instanceIterator;
 10669     int objectIterator, counterIterator, instanceIterator, numObjectTypes;
 10670 
 10670 
 10671     //declarate pointers
 10671     //declarate pointers
 10672     PERF_DATA_BLOCK *perfData;
 10672     PERF_DATA_BLOCK *perfData;
 10673     PERF_OBJECT_TYPE *perfObjectPtr;
 10673     PERF_OBJECT_TYPE *perfObjectPtr;
 10674     PERF_COUNTER_DEFINITION *perfCounterPtr;
 10674     PERF_COUNTER_DEFINITION *perfCounterPtr;
 10690     st_perfTime = __MKINT64(&(perfData->PerfTime));
 10690     st_perfTime = __MKINT64(&(perfData->PerfTime));
 10691     st_perfFreq = __MKINT64(&(perfData->PerfFreq));
 10691     st_perfFreq = __MKINT64(&(perfData->PerfFreq));
 10692     st_perfTime100nSec = __MKINT64(&(perfData->PerfTime100nSec));
 10692     st_perfTime100nSec = __MKINT64(&(perfData->PerfTime100nSec));
 10693 
 10693 
 10694     //setup object array and initialize its pointer
 10694     //setup object array and initialize its pointer
 10695     st_objectArray = __ARRAY_NEW_INT(perfData->NumObjectTypes);
 10695     numObjectTypes = perfData->NumObjectTypes;
       
 10696     st_objectArray = __ARRAY_NEW_INT(numObjectTypes);
 10696     perfObjectPtr = (PERF_OBJECT_TYPE *)((char *)perfData + perfData->HeaderLength);
 10697     perfObjectPtr = (PERF_OBJECT_TYPE *)((char *)perfData + perfData->HeaderLength);
 10697 
 10698 
 10698     //iterate all following objetcs
 10699     //iterate all following objetcs
 10699     for (objectIterator=0; objectIterator<perfData->NumObjectTypes; objectIterator++) {
 10700     for (objectIterator=0; objectIterator<numObjectTypes; objectIterator++) {
 10700         //add the st_perObject dictionary to st_objectArray
 10701         //add the st_perObject dictionary to st_objectArray
 10701         st_perObject = __SSEND0(@global(Dictionary), @symbol(new), 0);
 10702         st_perObject = __SSEND0(@global(Dictionary), @symbol(new), 0);
 10702         __AT_PUT_(st_objectArray, __mkSmallInteger(objectIterator+1), st_perObject);
 10703         __AT_PUT_(st_objectArray, __mkSmallInteger(objectIterator+1), st_perObject);
 10703 
 10704 
 10704         //get the object data
 10705         //get the object data
 14364 ! !
 14365 ! !
 14365 
 14366 
 14366 !Win32OperatingSystem class methodsFor:'documentation'!
 14367 !Win32OperatingSystem class methodsFor:'documentation'!
 14367 
 14368 
 14368 version
 14369 version
 14369     ^ '$Header: /cvs/stx/stx/libbasic/Win32OperatingSystem.st,v 1.312 2007-10-02 15:27:41 sr Exp $'
 14370     ^ '$Header: /cvs/stx/stx/libbasic/Win32OperatingSystem.st,v 1.313 2007-10-09 09:38:23 sr Exp $'
 14370 ! !
 14371 ! !
 14371 
 14372 
 14372 Win32OperatingSystem initialize!
 14373 Win32OperatingSystem initialize!
 14373 Win32OperatingSystem::PerformanceData initialize!
 14374 Win32OperatingSystem::PerformanceData initialize!
 14374 Win32OperatingSystem::RegistryEntry initialize!
 14375 Win32OperatingSystem::RegistryEntry initialize!