int BufferManager::lookUpIndex(string fileName, int part){ if (IndexTable.find(hashKey(fileName, part)) != IndexTable.end()) { return IndexTable[hashKey(fileName, part)]; }else{ return fileToBuffer(fileName, part); } }
/** * XXX: IMPORTANt - result will show in Kb */ void getSwapUsage(monita_swap* buf) { char buffer [BUFSIZ]; char* p; memset(buf, 0, sizeof (monita_swap)); fileToBuffer(buffer, sizeof buffer, MEMINFO); // XXX: IMPORTANT - Kernel 2.6 with multiple lines buf->total = getScaled(buffer, "SwapTotal:"); buf->free = getScaled(buffer, "SwapFree:"); buf->cached = getScaled(buffer, "Cached:"); buf->used = buf->total - buf->free; unsigned long osVersionCode = getLinuxVersionCode(); if(osVersionCode >= LINUX_VERSION_CODE(2, 6, 0)) { fileToBuffer(buffer, sizeof buffer, PROC_VMSTAT); p = strstr(buffer, "\npswpin"); if(p) { p = skipToken(p); buf->pagein = strtoull(p, &p, 0); p = skipToken(p); buf->pageout = strtoull(p, &p, 0); } } else // Linux 2.4 { fileToBuffer(buffer, sizeof buffer, PROC_STAT); p = strstr(buffer, "\nswap"); if(p) { p = skipToken(p); buf->pagein = strtoull(p, &p, 0); buf->pageout = strtoull(p, &p, 0); } } }
void _loadModel( const char * xPath ) { std::string path( xPath ); Assimp::Importer importer; #if 0 const aiScene* scene = importer.ReadFile(path , aiProcess_Triangulate | aiProcess_FlipUVs | aiProcess_CalcTangentSpace | aiProcess_GenNormals | aiProcess_SplitLargeMeshes | aiProcess_OptimizeMeshes ); #else size_t out; char * buffer = fileToBuffer( xPath, &out ); const aiScene* scene = importer.ReadFileFromMemory( buffer , out , aiProcess_Triangulate | aiProcess_FlipUVs | aiProcess_CalcTangentSpace | aiProcess_GenNormals | aiProcess_SplitLargeMeshes | aiProcess_OptimizeMeshes , "" ); free ( buffer ); #endif // Check for errors if(!scene || scene->mFlags == AI_SCENE_FLAGS_INCOMPLETE || !scene->mRootNode) // if is Not Zero { std::cerr << "ERROR::ASSIMP:: " << importer.GetErrorString() << std::endl; return; } // Retrieve the directory path of the filepath mDirectory = path.substr(0, path.find_last_of('/')); // Process ASSIMP's root node recursively _processNode(scene->mRootNode, scene); }
void realNumberOfCPU(int* nRealCPU, int* nCPU) { char buffer [STAT_BUFSIZ]; char* p = buffer; fileToBuffer(buffer, sizeof buffer, FILENAME); // cpu p = skipLine(p); for(nRealCPU = 0; ; nRealCPU++) { if(!checkCPULine(p, nRealCPU)) { nRealCPU--; break; } p = skipLine(p); } nCPU = MIN(MONITA_NCPU - 1, nRealCPU); }