18 #include "pandabase.h" 21 #include "lightMutex.h" 33 INLINE
static bool has_shader(
const Filename &filename);
34 INLINE
static bool verify_shader(
const Filename &filename);
35 BLOCKING INLINE
static CPT(
Shader) load_shader(
const Filename &filename);
36 INLINE
static void add_shader(
const Filename &filename,
Shader *shader);
37 INLINE
static void release_shader(
const Filename &filename);
38 INLINE
static void release_all_shaders();
40 INLINE
static int garbage_collect();
42 INLINE
static void list_contents(ostream &out);
43 static void write(ostream &out);
48 bool ns_has_shader(
const Filename &orig_filename);
51 void ns_release_shader(
const Filename &orig_filename);
52 void ns_release_all_shaders();
53 int ns_garbage_collect();
54 void ns_list_contents(ostream &out)
const;
56 void resolve_filename(
Filename &new_filename,
const Filename &orig_filename);
58 static ShaderPool *get_ptr();
59 static ShaderPool *_global_ptr;
66 #include "shaderPool.I"
This is the preferred interface for loading shaders for the TextNode system.
The name of a file, such as a texture file or an Egg file.
This is a standard, non-reentrant mutex, similar to the Mutex class.