Ignore:
Timestamp:
Mar 16, 2012 12:03:52 AM (12 years ago)
Author:
ldelgass
Message:

No need to inline bind/unbind

Location:
trunk/packages/vizservers/nanovis
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/packages/vizservers/nanovis/NvColorTableShader.cpp

    r2836 r2859  
    2323    _renderParam = cgGetNamedParameter(_cgFP, "render_param");
    2424}
     25
     26void NvColorTableShader::bind(Texture2D *plane, TransferFunction *tf)
     27{
     28    cgGLSetTextureParameter(_dataParam, plane->id());
     29    cgGLSetTextureParameter(_tfParam, tf->id());
     30    cgGLEnableTextureParameter(_dataParam);
     31    cgGLEnableTextureParameter(_tfParam);
     32    cgGLSetParameter4f(_renderParam, 0., 0., 0., 0.);
     33
     34    cgGLBindProgram(_cgFP);
     35    cgGLEnableProfile(CG_PROFILE_FP30);
     36}
     37
     38void NvColorTableShader::unbind()
     39{
     40    cgGLDisableProfile(CG_PROFILE_FP30);
     41    cgGLDisableTextureParameter(_dataParam);
     42    cgGLDisableTextureParameter(_tfParam);
     43}
  • trunk/packages/vizservers/nanovis/NvColorTableShader.h

    r2857 r2859  
    2828};
    2929
    30 inline void NvColorTableShader::bind(Texture2D *plane, TransferFunction *tf)
    31 {
    32     cgGLSetTextureParameter(_dataParam, plane->id());
    33     cgGLSetTextureParameter(_tfParam, tf->id());
    34     cgGLEnableTextureParameter(_dataParam);
    35     cgGLEnableTextureParameter(_tfParam);
    36     cgGLSetParameter4f(_renderParam, 0., 0., 0., 0.);
    37 
    38     cgGLBindProgram(_cgFP);
    39     cgGLEnableProfile(CG_PROFILE_FP30);
    40 }
    41 
    42 inline void NvColorTableShader::unbind()
    43 {
    44     cgGLDisableProfile(CG_PROFILE_FP30);
    45     cgGLDisableTextureParameter(_dataParam);
    46     cgGLDisableTextureParameter(_tfParam);
    47 }
    48 
    4930#endif
  • trunk/packages/vizservers/nanovis/NvRegularVolumeShader.cpp

    r2837 r2859  
    11/* -*- mode: c++; c-basic-offset: 4; indent-tabs-mode: nil -*- */
     2
     3#include "global.h"
    24#include "NvRegularVolumeShader.h"
    3 #include "global.h"
    45
    56NvRegularVolumeShader::NvRegularVolumeShader()
     
    2526}
    2627
     28void NvRegularVolumeShader::bind(unsigned int tfID, Volume *volume, int sliceMode)
     29{
     30    //regular cubic volume
     31    cgGLSetStateMatrixParameter(_mvi_one_volume_param, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_INVERSE);
     32    cgGLSetStateMatrixParameter(_mv_one_volume_param, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_IDENTITY);
    2733
     34    cgGLSetTextureParameter(_vol_one_volume_param, volume->id);
     35    cgGLSetTextureParameter(_tf_one_volume_param, tfID);
     36    cgGLEnableTextureParameter(_vol_one_volume_param);
     37    cgGLEnableTextureParameter(_tf_one_volume_param);
     38
     39    if (!sliceMode) {
     40        cgGLSetParameter4f(_render_param_one_volume_param,
     41            volume->n_slices(),
     42            volume->opacity_scale(),
     43            volume->diffuse(),
     44            volume->specular());
     45    } else {
     46        cgGLSetParameter4f(_render_param_one_volume_param,
     47            0.,
     48            volume->opacity_scale(),
     49            volume->diffuse(),
     50            volume->specular());
     51    }
     52
     53    cgGLSetParameter4f(_option_one_volume_param,
     54        0.0f,
     55        volume->isosurface(),
     56        0.0f,
     57        0.0f);
     58
     59    cgGLBindProgram(_cgFP);
     60    cgGLEnableProfile(CG_PROFILE_FP30);
     61}
     62
     63void NvRegularVolumeShader::unbind()
     64{
     65    cgGLDisableTextureParameter(_vol_one_volume_param);
     66    cgGLDisableTextureParameter(_tf_one_volume_param);
     67
     68    cgGLDisableProfile(CG_PROFILE_FP30);
     69}
  • trunk/packages/vizservers/nanovis/NvRegularVolumeShader.h

    r2857 r2859  
    2626};
    2727
    28 inline void
    29 NvRegularVolumeShader::bind(unsigned int tfID, Volume *volume, int sliceMode)
    30 {
    31     //regular cubic volume
    32     cgGLSetStateMatrixParameter(_mvi_one_volume_param, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_INVERSE);
    33     cgGLSetStateMatrixParameter(_mv_one_volume_param, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_IDENTITY);
    34 
    35     cgGLSetTextureParameter(_vol_one_volume_param, volume->id);
    36     cgGLSetTextureParameter(_tf_one_volume_param, tfID);
    37     cgGLEnableTextureParameter(_vol_one_volume_param);
    38     cgGLEnableTextureParameter(_tf_one_volume_param);
    39 
    40     if (!sliceMode) {
    41         cgGLSetParameter4f(_render_param_one_volume_param,
    42             volume->n_slices(),
    43             volume->opacity_scale(),
    44             volume->diffuse(),
    45             volume->specular());
    46     } else {
    47         cgGLSetParameter4f(_render_param_one_volume_param,
    48             0.,
    49             volume->opacity_scale(),
    50             volume->diffuse(),
    51             volume->specular());
    52     }
    53 
    54     cgGLSetParameter4f(_option_one_volume_param,
    55         0.0f,
    56         volume->isosurface(),
    57         0.0f,
    58         0.0f);
    59 
    60     cgGLBindProgram(_cgFP);
    61     cgGLEnableProfile(CG_PROFILE_FP30);
    62 }
    63 
    64 inline void NvRegularVolumeShader::unbind()
    65 {
    66     cgGLDisableTextureParameter(_vol_one_volume_param);
    67     cgGLDisableTextureParameter(_tf_one_volume_param);
    68 
    69     cgGLDisableProfile(CG_PROFILE_FP30);
    70 }
    71 
    7228#endif
  • trunk/packages/vizservers/nanovis/NvStdVertexShader.cpp

    r2844 r2859  
    2121    _mvi_vert_std_param = cgGetNamedParameter(_cgVP, "modelViewInv");
    2222}
     23
     24void NvStdVertexShader::bind()
     25{
     26    cgGLSetStateMatrixParameter(_mvp_vert_std_param, CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY);
     27    cgGLSetStateMatrixParameter(_mvi_vert_std_param, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_INVERSE);
     28    cgGLBindProgram(_cgVP);
     29    cgGLEnableProfile(CG_PROFILE_VP30);
     30}
     31
     32void NvStdVertexShader::unbind()
     33{
     34    cgGLDisableProfile(CG_PROFILE_VP30);
     35}
  • trunk/packages/vizservers/nanovis/NvStdVertexShader.h

    r2844 r2859  
    2525};
    2626
    27 inline void NvStdVertexShader::bind()
    28 {
    29     cgGLSetStateMatrixParameter(_mvp_vert_std_param, CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY);
    30     cgGLSetStateMatrixParameter(_mvi_vert_std_param, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_INVERSE);
    31     cgGLBindProgram(_cgVP);
    32     cgGLEnableProfile(CG_PROFILE_VP30);
    33 }
    34 
    35 inline void NvStdVertexShader::unbind()
    36 {
    37     cgGLDisableProfile(CG_PROFILE_VP30);
    38 }
    39 
    4027#endif
    4128
  • trunk/packages/vizservers/nanovis/NvZincBlendeVolumeShader.cpp

    r2822 r2859  
    22
    33#include <string.h>
     4
    45#include "global.h"
    56#include "NvZincBlendeVolumeShader.h"
    6 
    77
    88NvZincBlendeVolumeShader::NvZincBlendeVolumeShader()
     
    1818{
    1919    _cgFP = LoadCgSourceProgram(g_context, "zincblende_volume.cg",
    20         CG_PROFILE_FP30, "main");
     20                                CG_PROFILE_FP30, "main");
    2121    _tfParam = cgGetNamedParameter(_cgFP, "tf");
    2222    _volumeAParam = cgGetNamedParameter(_cgFP, "volumeA");
     
    2828}
    2929
     30void NvZincBlendeVolumeShader::bind(unsigned int tfID, Volume *volume, int sliceMode)
     31{
     32    ZincBlendeVolume *vol = (ZincBlendeVolume *)volume;
     33    cgGLSetStateMatrixParameter(_mviParam, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_INVERSE);
     34    cgGLSetTextureParameter(_tfParam, tfID);
     35    cgGLSetParameter4f(_cellSizeParam,
     36                       vol->cell_size.x,
     37                       vol->cell_size.y,
     38                       vol->cell_size.z, 0.);
     39
     40    if (!sliceMode) {
     41        cgGLSetParameter4f(_renderParam,
     42                           vol->n_slices(),
     43                           vol->opacity_scale(),
     44                           vol->diffuse(),
     45                           vol->specular());
     46    } else {
     47        cgGLSetParameter4f(_renderParam,
     48                           0.,
     49                           vol->opacity_scale(),
     50                           vol->diffuse(),
     51                           vol->specular());
     52    }
     53
     54    cgGLSetParameter4f(_option_one_volume_param,
     55                       0.0f,
     56                       volume->isosurface(),
     57                       0.0f,
     58                       0.0f);
     59
     60    cgGLSetTextureParameter(_volumeAParam, vol->zincblende_tex[0]->id());
     61    cgGLSetTextureParameter(_volumeBParam, vol->zincblende_tex[1]->id());
     62    cgGLEnableTextureParameter(_volumeAParam);
     63    cgGLEnableTextureParameter(_volumeBParam);
     64
     65    cgGLBindProgram(_cgFP);
     66    cgGLEnableProfile(CG_PROFILE_FP30);
     67}
     68
     69void NvZincBlendeVolumeShader::unbind()
     70{
     71    cgGLDisableTextureParameter(_volumeAParam);
     72    cgGLDisableTextureParameter(_volumeBParam);
     73    cgGLDisableTextureParameter(_tfParam);
     74
     75    cgGLDisableProfile(CG_PROFILE_FP30);
     76}
  • trunk/packages/vizservers/nanovis/NvZincBlendeVolumeShader.h

    r2857 r2859  
    88class NvZincBlendeVolumeShader : public NvVolumeShader
    99{
    10 public :
     10public:
    1111    NvZincBlendeVolumeShader();
    1212
     
    1717    void unbind();
    1818
    19 private :
     19private:
    2020    void init();
    2121
     
    2929};
    3030
    31 inline void NvZincBlendeVolumeShader::bind(unsigned int tfID, Volume *volume, int sliceMode)
    32 {
    33     ZincBlendeVolume *vol = (ZincBlendeVolume *)volume;
    34     cgGLSetStateMatrixParameter(_mviParam, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_INVERSE);
    35     cgGLSetTextureParameter(_tfParam, tfID);
    36     cgGLSetParameter4f(_cellSizeParam,
    37                        vol->cell_size.x,
    38                        vol->cell_size.y,
    39                        vol->cell_size.z, 0.);
    40 
    41     if (!sliceMode) {
    42         cgGLSetParameter4f(_renderParam,
    43                            vol->n_slices(),
    44                            vol->opacity_scale(),
    45                            vol->diffuse(),
    46                            vol->specular());
    47     } else {
    48         cgGLSetParameter4f(_renderParam,
    49                            0.,
    50                            vol->opacity_scale(),
    51                            vol->diffuse(),
    52                            vol->specular());
    53     }
    54 
    55     cgGLSetParameter4f(_option_one_volume_param,
    56                        0.0f,
    57                        volume->isosurface(),
    58                        0.0f,
    59                        0.0f);
    60 
    61     cgGLSetTextureParameter(_volumeAParam, vol->zincblende_tex[0]->id());
    62     cgGLSetTextureParameter(_volumeBParam, vol->zincblende_tex[1]->id());
    63     cgGLEnableTextureParameter(_volumeAParam);
    64     cgGLEnableTextureParameter(_volumeBParam);
    65 
    66     cgGLBindProgram(_cgFP);
    67     cgGLEnableProfile(CG_PROFILE_FP30);
    68 }
    69 
    70 inline void NvZincBlendeVolumeShader::unbind()
    71 {
    72     cgGLDisableTextureParameter(_volumeAParam);
    73     cgGLDisableTextureParameter(_volumeBParam);
    74     cgGLDisableTextureParameter(_tfParam);
    75 
    76     cgGLDisableProfile(CG_PROFILE_FP30);
    77 }
    78 
    7931#endif
Note: See TracChangeset for help on using the changeset viewer.