| 263 | } |
| 264 | |
| 265 | void ImageTargetFileWic::setupPixelFormat( const GUID &guid ) |
| 266 | { |
| 267 | if( guid == GUID_WICPixelFormat24bppBGR ) { |
| 268 | setChannelOrder( ImageIo::BGR ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::UINT8 ); |
| 269 | } |
| 270 | else if( guid == GUID_WICPixelFormat24bppRGB ) { |
| 271 | setChannelOrder( ImageIo::RGB ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::UINT8 ); |
| 272 | } |
| 273 | else if( guid == GUID_WICPixelFormat32bppBGR ) { |
| 274 | setChannelOrder( ImageIo::BGRX ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::UINT8 ); |
| 275 | } |
| 276 | else if( guid == GUID_WICPixelFormat32bppBGRA ) { |
| 277 | setChannelOrder( ImageIo::BGRA ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::UINT8 ); |
| 278 | } |
| 279 | else if( guid == GUID_WICPixelFormat32bppPBGRA ) { |
| 280 | setChannelOrder( ImageIo::BGRA ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::UINT8 );// mIsPremultipliedAlpha = true; |
| 281 | } |
| 282 | else if( guid == GUID_WICPixelFormat48bppRGB ) { |
| 283 | setChannelOrder( ImageIo::RGB ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::UINT16 ); |
| 284 | } |
| 285 | else if( guid == GUID_WICPixelFormat64bppRGBA ) { |
| 286 | setChannelOrder( ImageIo::RGBA ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::UINT16 ); |
| 287 | } |
| 288 | else if( guid == GUID_WICPixelFormat64bppPRGBA ) { |
| 289 | setChannelOrder( ImageIo::RGBA ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::UINT16 ); // mIsPremultipliedAlpha = true; |
| 290 | } |
| 291 | else if( guid == GUID_WICPixelFormat128bppRGBFloat ) { |
| 292 | setChannelOrder( ImageIo::RGB ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::FLOAT32 ); |
| 293 | } |
| 294 | else if( guid == GUID_WICPixelFormat128bppRGBAFloat ) { |
| 295 | setChannelOrder( ImageIo::RGBA ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::FLOAT32 ); |
| 296 | } |
| 297 | else if( guid == GUID_WICPixelFormat128bppPRGBAFloat ) { |
| 298 | setChannelOrder( ImageIo::RGBA ); setColorModel( ImageIo::CM_RGB ); setDataType( ImageIo::FLOAT32 ); // mIsPremultipliedAlpha = true; |
| 299 | } |
| 300 | else if( guid == GUID_WICPixelFormat8bppGray ) { |
| 301 | setChannelOrder( ImageIo::Y ); setColorModel( ImageIo::CM_GRAY ); setDataType( ImageIo::UINT8 ); |
| 302 | } |
| 303 | else if( guid == GUID_WICPixelFormat16bppGray ) { |
| 304 | setChannelOrder( ImageIo::Y ); setColorModel( ImageIo::CM_GRAY ); setDataType( ImageIo::UINT16 ); |
| 305 | } |
| 306 | else if( guid == GUID_WICPixelFormat16bppGrayFixedPoint ) { |
| 307 | setChannelOrder( ImageIo::Y ); setColorModel( ImageIo::CM_GRAY ); setDataType( ImageIo::UINT16 ); |
| 308 | } |
| 309 | else if( guid == GUID_WICPixelFormat16bppGrayHalf ) { |
| 310 | setChannelOrder( ImageIo::Y ); setColorModel( ImageIo::CM_GRAY ); setDataType( ImageIo::FLOAT16 ); |
| 311 | } |
| 312 | else if( guid == GUID_WICPixelFormat32bppGrayFloat ) { |
| 313 | setChannelOrder( ImageIo::Y ); setColorModel( ImageIo::CM_GRAY ); setDataType( ImageIo::FLOAT32 ); |
| 314 | } |
| 315 | else if( guid == GUID_WICPixelFormat32bppGrayFixedPoint ) { |
| 316 | setChannelOrder( ImageIo::Y ); setColorModel( ImageIo::CM_GRAY ); setDataType( ImageIo::FLOAT32 ); |
| 317 | } |
| 318 | else |
| 319 | throw ImageIoException( "Unsupported format." ); |
| 320 | |
| 321 | int32_t bitsPerComponent; |
| 322 | bool writingAlpha = hasAlpha(); |
nothing calls this directly
no test coverage detected