예제 #1
0
파일: ColorRGBA.cs 프로젝트: hj1980/Mosa
 //--------------------------------------------------------------------
 public void apply_gamma_dir(GammaLookupTable gamma)
 {
     R_Byte = gamma.Dir((byte)R_Byte);
     G_Byte = gamma.Dir((byte)G_Byte);
     B_Byte = gamma.Dir((byte)B_Byte);
 }
예제 #2
0
파일: RgbA.cs 프로젝트: hj1980/Mosa
        /*
        //--------------------------------------------------------------------
        //template<class Function> 
        public void for_each_pixel(Function f)
        {
            uint y;
            for(y = 0; y < Height(); ++y)
            {
                row_data r = m_rbuf->row(y);
                if(r.ptr)
                {
                    uint len = r.x2 - r.x1 + 1;
                    value_type* p = 
                        (value_type*)m_rbuf->RowPointer(r.x1, y, len) + (r.x1 << 2);
                    do
                    {
                        f(p);
                        p += 4;
                    }
                    while(--len);
                }
            }
        }

        //--------------------------------------------------------------------
        public void PreMultiply()
        {
            for_each_pixel(multiplier_rgba<color_type, order_type>::PreMultiply);
        }

        //--------------------------------------------------------------------
        public void DeMultiply()
        {
            for_each_pixel(multiplier_rgba<color_type, order_type>::DeMultiply);
        }

        //--------------------------------------------------------------------
        //template<class GammaLut> 
        public void apply_gamma_dir(GammaLut g)
        {
            for_each_pixel(apply_gamma_dir_rgba<color_type, order_type, GammaLut>(g));
        }

        //--------------------------------------------------------------------
        //template<class GammaLut> 
         */
        public void apply_gamma_inv(GammaLookupTable g)
        {
            throw new System.NotImplementedException();
            //for_each_pixel(apply_gamma_inv_rgba<color_type, order_type, GammaLut>(g));
        }
예제 #3
0
파일: RgbA.cs 프로젝트: hj1980/Mosa
 public BlenderGammaBGRA(GammaLookupTable g)
 {
     m_gamma = g;
 }
예제 #4
0
파일: RgbA.cs 프로젝트: hj1980/Mosa
 //--------------------------------------------------------------------
 public FormatRGBA(RasterBuffer rb, IBlender blender, GammaLookupTable gammaTable)
     : this(rb, blender)
 {
     throw new System.NotImplementedException("Not using the Gamma table yet.");
 }
예제 #5
0
파일: RgbA.cs 프로젝트: hj1980/Mosa
 public BlenderGammaBGRA()
 {
     m_gamma = new GammaLookupTable();
 }
예제 #6
0
 //--------------------------------------------------------------------
 public void apply_gamma_dir(GammaLookupTable gamma)
 {
     R_Byte = gamma.Dir((byte)R_Byte);
     G_Byte = gamma.Dir((byte)G_Byte);
     B_Byte = gamma.Dir((byte)B_Byte);
 }