⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 intel_texmem.c

📁 mesa-6.5-minigui源码
💻 C
字号:
#include "texmem.h"#include "simple_list.h"#include "imports.h"#include "macros.h"#include "intel_tex.h"static GLuintdriLog2( GLuint n ){   GLuint log2;   for ( log2 = 1 ; n > 1 ; log2++ ) {      n >>= 1;   }   return log2;}static void calculate_heap_size( driTexHeap * heap, unsigned size, 				 unsigned nr_regions, unsigned alignmentShift ){   unsigned     l;   l = driLog2( (size - 1) / nr_regions );   if ( l < alignmentShift )   {      l = alignmentShift;   }   heap->logGranularity = l;   heap->size = size & ~((1L << l) - 1);}GLboolean intel_driReinitTextureHeap( driTexHeap *heap,			    unsigned size ){   driTextureObject *t, *tmp;   /* Kick out everything:    */   foreach_s ( t, tmp, & heap->texture_objects ) {      if ( t->tObj != NULL ) {	 driSwapOutTextureObject( t );      }      else {	 driDestroyTextureObject( t );      }   }      /* Destroy the memory manager:    */   mmDestroy( heap->memory_heap );         /* Recreate the memory manager:    */   calculate_heap_size(heap, size, heap->nrRegions, heap->alignmentShift);   heap->memory_heap = mmInit( 0, heap->size );   if ( heap->memory_heap == NULL ) {      fprintf(stderr, "driReinitTextureHeap: couldn't recreate memory heap\n");      FREE( heap );      return GL_FALSE;   }   make_empty_list( & heap->texture_objects );   return GL_TRUE;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -