/*
File Name: SpriteManager.h
Created By: Andy Odle
Date: Nov 16, 2009

Description: 
    
    
*/

#ifndef SpriteManager_h
#define SpriteManager_h


#include "./source/PlatformSpecific/inc/ErrorReport.h"
#include "./source/PlatformSpecific/inc/GeneralPurposeFunctions.h"
#include "./source/PlatformSpecific/inc/Sprite.h"
#include "./source/inc/ResourceManager.h"


class SpriteManager : public ResourceManager
{
    public:
    
        static SpriteManager *spriteManager_i();
        
        void InitilizeSpriteManager();
        void InitializeSprite(Sprite *someSprite_p);
        void UpdateSprite();    
        void DestorySprite(Sprite *someSprite_p);
        void DestroySpriteManager();
    
    private:
    
        SpriteManager();
        SpriteManager(SpriteManager const&) : ResourceManager(){}
        ~SpriteManager();
        
        SpriteManager &operator=(SpriteManager const&){}        
   
    private:
    
        static SpriteManager *spriteManager_m;
        
        ErrorReport *errorReport_m;
};

#endif
