D:/Projects/CEGUI/Silly/include/SILLYImage.icpp

00001 /***********************************************************************
00002     filename:   SILLYImage.icpp 
00003     created:    10 Jun 2006
00004     author:     Olivier Delannoy
00005 
00006     purpose:    Inline definition of the image class   
00007 *************************************************************************/
00008 /***************************************************************************
00009  *   Copyright (C) 2004 - 2006 Paul D Turner & The CEGUI Development Team
00010  *
00011  *   Permission is hereby granted, free of charge, to any person obtaining
00012  *   a copy of this software and associated documentation files (the
00013  *   "Software"), to deal in the Software without restriction, including
00014  *   without limitation the rights to use, copy, modify, merge, publish,
00015  *   distribute, sublicense, and/or sell copies of the Software, and to
00016  *   permit persons to whom the Software is furnished to do so, subject to
00017  *   the following conditions:
00018  *
00019  *   The above copyright notice and this permission notice shall be
00020  *   included in all copies or substantial portions of the Software.
00021  *
00022  *   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
00023  *   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
00024  *   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
00025  *   IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
00026  *   OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
00027  *   ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
00028  *   OTHER DEALINGS IN THE SOFTWARE.
00029  ***************************************************************************/
00030 
00031 // Start of section namespace SILLY
00032 namespace SILLY
00033 {
00034 
00035 inline bool Image::isValid() const
00036 {
00037     return d_imageContext && d_pixels;
00038 }
00039 
00040 inline size_t Image::getWidth() const
00041 {
00042     return d_imageContext->getWidth();
00043 }
00044 
00045 inline size_t Image::getHeight() const
00046 {
00047     return d_imageContext->getHeight();
00048 }
00049 
00050 inline PixelFormat Image::getSourcePixelFormat() const
00051 {
00052     return d_pfSource;
00053 }
00054 
00055 inline PixelFormat Image::getPixelFormat() const
00056 {
00057     return d_imageContext->getPixelFormat();
00058 }
00059 
00060 inline const byte* Image::getPixelsDataPtr() const
00061 {
00062     return d_pixels;
00063 }
00064 
00065 inline size_t Image::getPixelsDataSize() const
00066 {
00067     return getWidth() * getHeight() * d_bpp;
00068 }
00069 
00070 inline Image::~Image()
00071 {
00072     delete [] d_pixels;
00073     if (d_imageLoader)
00074         d_imageLoader->destroyContext(d_imageContext);
00075 }
00076 inline const char* Image::getLoaderIdentifierString() const
00077 {
00078     if (d_imageLoader)
00079         return d_imageLoader->getIdentifierString();
00080     return 0;
00081 }
00082 
00083 } // End of section namespace SILLY
00084 

Generated on Sun Apr 6 14:47:06 2008 for Simple Image Loading LibrarY by  doxygen 1.5.2