]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - plugins/image/image.cpp
image: add crn support to the image plugin.
[xonotic/netradiant.git] / plugins / image / image.cpp
index 4f3e07a8790d45716441d958796601ad7b95564e..574e4fab44819a78fc1b14ee4cc245e87310dac8 100644 (file)
@@ -19,8 +19,6 @@
    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-#include "image.h"
-
 #include "ifilesystem.h"
 #include "iimage.h"
 
 #include "pcx.h"
 #include "dds.h"
 #include "ktx.h"
+#include "crn.h"
 
 
 #include "modulesystem/singletonmodule.h"
 
-class ImageDependencies : public GlobalFileSystemModuleRef
-{
+class ImageDependencies : public GlobalFileSystemModuleRef {
 };
 
-class ImageTGAAPI
-{
-_QERPlugImageTable m_imagetga;
+class ImageTGAAPI {
+    _QERPlugImageTable m_imagetga;
 public:
-typedef _QERPlugImageTable Type;
-STRING_CONSTANT( Name, "tga" );
+    typedef _QERPlugImageTable Type;
 
-ImageTGAAPI(){
-       m_imagetga.loadImage = LoadTGA;
-}
-_QERPlugImageTable* getTable(){
-       return &m_imagetga;
-}
+    STRING_CONSTANT(Name, "tga");
+
+    ImageTGAAPI()
+    {
+        m_imagetga.loadImage = LoadTGA;
+    }
+
+    _QERPlugImageTable *getTable()
+    {
+        return &m_imagetga;
+    }
 };
 
 typedef SingletonModule<ImageTGAAPI> ImageTGAModule;
@@ -58,19 +59,22 @@ typedef SingletonModule<ImageTGAAPI> ImageTGAModule;
 ImageTGAModule g_ImageTGAModule;
 
 
-class ImageJPGAPI
-{
-_QERPlugImageTable m_imagejpg;
+class ImageJPGAPI {
+    _QERPlugImageTable m_imagejpg;
 public:
-typedef _QERPlugImageTable Type;
-STRING_CONSTANT( Name, "jpg" );
+    typedef _QERPlugImageTable Type;
 
-ImageJPGAPI(){
-       m_imagejpg.loadImage = LoadJPG;
-}
-_QERPlugImageTable* getTable(){
-       return &m_imagejpg;
-}
+    STRING_CONSTANT(Name, "jpg");
+
+    ImageJPGAPI()
+    {
+        m_imagejpg.loadImage = LoadJPG;
+    }
+
+    _QERPlugImageTable *getTable()
+    {
+        return &m_imagejpg;
+    }
 };
 
 typedef SingletonModule<ImageJPGAPI, ImageDependencies> ImageJPGModule;
@@ -78,19 +82,22 @@ typedef SingletonModule<ImageJPGAPI, ImageDependencies> ImageJPGModule;
 ImageJPGModule g_ImageJPGModule;
 
 
-class ImageBMPAPI
-{
-_QERPlugImageTable m_imagebmp;
+class ImageBMPAPI {
+    _QERPlugImageTable m_imagebmp;
 public:
-typedef _QERPlugImageTable Type;
-STRING_CONSTANT( Name, "bmp" );
+    typedef _QERPlugImageTable Type;
 
-ImageBMPAPI(){
-       m_imagebmp.loadImage = LoadBMP;
-}
-_QERPlugImageTable* getTable(){
-       return &m_imagebmp;
-}
+    STRING_CONSTANT(Name, "bmp");
+
+    ImageBMPAPI()
+    {
+        m_imagebmp.loadImage = LoadBMP;
+    }
+
+    _QERPlugImageTable *getTable()
+    {
+        return &m_imagebmp;
+    }
 };
 
 typedef SingletonModule<ImageBMPAPI, ImageDependencies> ImageBMPModule;
@@ -98,19 +105,22 @@ typedef SingletonModule<ImageBMPAPI, ImageDependencies> ImageBMPModule;
 ImageBMPModule g_ImageBMPModule;
 
 
-class ImagePCXAPI
-{
-_QERPlugImageTable m_imagepcx;
+class ImagePCXAPI {
+    _QERPlugImageTable m_imagepcx;
 public:
-typedef _QERPlugImageTable Type;
-STRING_CONSTANT( Name, "pcx" );
+    typedef _QERPlugImageTable Type;
 
-ImagePCXAPI(){
-       m_imagepcx.loadImage = LoadPCX32;
-}
-_QERPlugImageTable* getTable(){
-       return &m_imagepcx;
-}
+    STRING_CONSTANT(Name, "pcx");
+
+    ImagePCXAPI()
+    {
+        m_imagepcx.loadImage = LoadPCX32;
+    }
+
+    _QERPlugImageTable *getTable()
+    {
+        return &m_imagepcx;
+    }
 };
 
 typedef SingletonModule<ImagePCXAPI, ImageDependencies> ImagePCXModule;
@@ -118,19 +128,22 @@ typedef SingletonModule<ImagePCXAPI, ImageDependencies> ImagePCXModule;
 ImagePCXModule g_ImagePCXModule;
 
 
-class ImageDDSAPI
-{
-_QERPlugImageTable m_imagedds;
+class ImageDDSAPI {
+    _QERPlugImageTable m_imagedds;
 public:
-typedef _QERPlugImageTable Type;
-STRING_CONSTANT( Name, "dds" );
+    typedef _QERPlugImageTable Type;
 
-ImageDDSAPI(){
-       m_imagedds.loadImage = LoadDDS;
-}
-_QERPlugImageTable* getTable(){
-       return &m_imagedds;
-}
+    STRING_CONSTANT(Name, "dds");
+
+    ImageDDSAPI()
+    {
+        m_imagedds.loadImage = LoadDDS;
+    }
+
+    _QERPlugImageTable *getTable()
+    {
+        return &m_imagedds;
+    }
 };
 
 typedef SingletonModule<ImageDDSAPI, ImageDependencies> ImageDDSModule;
@@ -138,19 +151,22 @@ typedef SingletonModule<ImageDDSAPI, ImageDependencies> ImageDDSModule;
 ImageDDSModule g_ImageDDSModule;
 
 
-class ImageKTXAPI
-{
-_QERPlugImageTable m_imagektx;
+class ImageKTXAPI {
+    _QERPlugImageTable m_imagektx;
 public:
-typedef _QERPlugImageTable Type;
-STRING_CONSTANT( Name, "ktx" );
+    typedef _QERPlugImageTable Type;
 
-ImageKTXAPI(){
-       m_imagektx.loadImage = LoadKTX;
-}
-_QERPlugImageTable* getTable(){
-       return &m_imagektx;
-}
+    STRING_CONSTANT(Name, "ktx");
+
+    ImageKTXAPI()
+    {
+        m_imagektx.loadImage = LoadKTX;
+    }
+
+    _QERPlugImageTable *getTable()
+    {
+        return &m_imagektx;
+    }
 };
 
 typedef SingletonModule<ImageKTXAPI, ImageDependencies> ImageKTXModule;
@@ -158,13 +174,38 @@ typedef SingletonModule<ImageKTXAPI, ImageDependencies> ImageKTXModule;
 ImageKTXModule g_ImageKTXModule;
 
 
-extern "C" void RADIANT_DLLEXPORT Radiant_RegisterModules( ModuleServer& server ){
-       initialiseModule( server );
+class ImageCRNAPI {
+    _QERPlugImageTable m_imagecrn;
+public:
+    typedef _QERPlugImageTable Type;
+
+    STRING_CONSTANT(Name, "crn");
+
+    ImageCRNAPI()
+    {
+        m_imagecrn.loadImage = LoadCRN;
+    }
+
+    _QERPlugImageTable *getTable()
+    {
+        return &m_imagecrn;
+    }
+};
+
+typedef SingletonModule<ImageCRNAPI, ImageDependencies> ImageCRNModule;
+
+ImageCRNModule g_ImageCRNModule;
 
-       g_ImageTGAModule.selfRegister();
-       g_ImageJPGModule.selfRegister();
-       g_ImageBMPModule.selfRegister();
-       g_ImagePCXModule.selfRegister();
-       g_ImageDDSModule.selfRegister();
-       g_ImageKTXModule.selfRegister();
+
+extern "C" void RADIANT_DLLEXPORT Radiant_RegisterModules(ModuleServer &server)
+{
+    initialiseModule(server);
+
+    g_ImageTGAModule.selfRegister();
+    g_ImageJPGModule.selfRegister();
+    g_ImageBMPModule.selfRegister();
+    g_ImagePCXModule.selfRegister();
+    g_ImageDDSModule.selfRegister();
+    g_ImageKTXModule.selfRegister();
+    g_ImageCRNModule.selfRegister();
 }