[][src]Macro gfx_shader_watch::debug_watcher_pso_cell

macro_rules! debug_watcher_pso_cell {
    (pipe = $pipe_name:ident,
    vertex_shader = $vs:expr,
    fragment_shader = $fs:expr,
    factory = $factory:expr,
    $($opt:ident = $opt_val:expr),+) => { ... };
    (pipe = $pipe_name:ident,
    vertex_shader = $vs:expr,
    fragment_shader = $fs:expr,
    factory = $factory:expr) => { ... };
}

Returns WatcherPsoCell instance when compiled in debug mode, SimplePsoCell instance when compiled in release mode The type itself can be attained similarly with the debug_watcher_pso_cell_type macro

Examples

#[macro_use] extern crate gfx;
#[macro_use] extern crate gfx_shader_watch;

gfx_defines!{
    pipeline mypipeline {
        out: gfx::RenderTarget<gfx::format::Rgba8> = "Target0",
    }
}

pub fn main() {
   // {code initialising a gfx `factory`}

   let mut _pso_cell = debug_watcher_pso_cell!(
       pipe = mypipeline,
       vertex_shader = "shader/vert.glsl", // relative to this file
       fragment_shader = "shader/frag.glsl",
       factory = factory).expect("psocell");
}