zoukankan      html  css  js  c++  java
  • esl primary code



    namespace esl {

        
    class shader {
        
    public:
            
    virtual int query() = 0;
            
    virtual void deletethis() = 0;
        }
    ;

        
    class surface : public shader {
        
    public:
            
    virtual int query()
            
    {
                
    return default_surface_query;
            }

        }
    ;

        template 
    < typename T > class ptr {
        
    public:

        }
    ;

        
    void ei_declare_shader( ei_shader_type shader_type, 
                                
    const ei_string shader_name,
                                 )
        
    {
            va_list                        args;
            
    int                            para;
            static_parameter_container    spcon;
            dynamic_parameter_container    dpcon;
            parameter_container            
    *cpcon = NULL;
            ei_string                    str;
            
    float                        fval;

            va_start( args, shader_name );

            
    while(1)
            
    {
                para 
    = va_arg( args, int );

                
    if( para == ei_end )
                    
    break;

                
    switch( para )
                
    {
                
    case ei_static:
                    cpcon 
    = &spcon; 
                    
    break;
                
    case ei_dynamic:
                    cpcon 
    = &dpcon;
                    
    break;
                
    case ei_float:
                    str 
    = va_arg( args, ei_string );
                    fval 
    = va_arg( args, float );
                    cpcon
    ->add_float( str, fval );
                    
    break;
                
    case ei_int:
                    
    break;
                
    case ei_bool:
                    
    break;
                
    case ei_color:
                    
    break;
                
    case ei_point:
                    
    break;
                
    case ei_vector:
                    
    break;
                
    case ei_normal:
                    
    break;
                
    case ei_matrix:
                    
    break;
                }

            }


            va_end( args );
        }


        
    void ei_shader( const ei_string named_shader,
                        
    const ei_string shader_name,
                         )
        
    {
            va_list            args;
            ei_string        str;
            
    int                type;
            
    int                pos;
            ptr
    <float>        fval;
            shader_instance    
    *inst;

            va_start( args, shader_name );

            
    while(1)
            
    {
                str 
    = va_arg( args, ei_string );

                
    if( str == ei_end )
                    
    break;

                inst
    ->lookup( str, type, pos );

                
    switch( type )
                
    {
                
    case ei_float:
                    fval 
    = va_arg( args, ptr<float> );
                    inst
    ->set_float( pos, fval );
                    
    break;
                
    case ei_int:
                    
    break;
                
    case ei_bool:
                    
    break;
                
    case ei_color:
                    
    break;
                
    case ei_point:
                    
    break;
                
    case ei_vector:
                    
    break;
                
    case ei_normal:
                    
    break;
                
    case ei_matrix:
                    
    break;
                }

            }


            va_end( args );
        }


    }
    ;
  • 相关阅读:
    SVN
    Oracle用户、权限、角色管理(转)
    X5学习笔记—给单元格添加颜色
    JdbcTemplae使用入门&&Spring三种连接池配置&&Spring配置文件引用外部properties文件
    依赖注入Bean属性
    IoC容器装配Bean(xml配置方式)(Bean的生命周期)
    Spring配置文件的读取
    Spring IoC反转控制的快速入门
    spring security 权限框架原理
    win7 开机,或重启自动启动 该文件下的
  • 原文地址:https://www.cnblogs.com/len3d/p/1046056.html
Copyright © 2011-2022 走看看