зеркало из https://github.com/mozilla/gecko-dev.git
add first cut at combined imglib2 dll
not part of build
This commit is contained in:
Родитель
1a88abe55c
Коммит
41be94e57c
|
@ -0,0 +1,83 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 2001 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
|
||||
DEPTH = ../../..
|
||||
topsrcdir = @top_srcdir@
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
MODULE = imglib2
|
||||
LIBRARY_NAME = imglib2
|
||||
EXPORT_LIBRARY = 1
|
||||
IS_COMPONENT = 1
|
||||
MODULE_NAME = nsImageLib2Module
|
||||
|
||||
REQUIRES = xpcom \
|
||||
string \
|
||||
necko \
|
||||
nkcache \
|
||||
gfx \
|
||||
gfx2 \
|
||||
$(JPEG_REQUIRES) \
|
||||
$(PNG_REQUIRES) \
|
||||
$(ZLIB_REQUIRES) \
|
||||
$(NULL)
|
||||
|
||||
CPPSRCS = \
|
||||
nsImageModule.cpp \
|
||||
$(NULL)
|
||||
|
||||
LOCAL_INCLUDES = \
|
||||
-I$(srcdir)/../src \
|
||||
-I$(srcdir)/../decoders/gif \
|
||||
-I$(srcdir)/../decoders/jpeg \
|
||||
-I$(srcdir)/../decoders/png \
|
||||
-I$(srcdir)/../decoders/bmp \
|
||||
-I$(srcdir)/../decoders/xbm \
|
||||
-I$(srcdir)/../decoders/ppm \
|
||||
$(NULL)
|
||||
|
||||
SHARED_LIBRARY_LIBS = \
|
||||
../src/$(LIB_PREFIX)imglib2_s.$(LIB_SUFFIX) \
|
||||
../decoders/gif/$(LIB_PREFIX)imggif_s.$(LIB_SUFFIX) \
|
||||
../decoders/jpeg/$(LIB_PREFIX)imgjpeg_s.$(LIB_SUFFIX) \
|
||||
../decoders/png/$(LIB_PREFIX)imgpng_s.$(LIB_SUFFIX) \
|
||||
../decoders/bmp/$(LIB_PREFIX)imgbmp_s.$(LIB_SUFFIX) \
|
||||
../decoders/xbm/$(LIB_PREFIX)imgxbm_s.$(LIB_SUFFIX) \
|
||||
../decoders/ppm/$(LIB_PREFIX)imgppm_s.$(LIB_SUFFIX) \
|
||||
$(NULL)
|
||||
|
||||
EXTRA_DSO_LIBS = \
|
||||
gkgfx \
|
||||
$(NULL)
|
||||
|
||||
|
||||
EXTRA_DSO_LDOPTS = \
|
||||
$(JPEG_LIBS) \
|
||||
$(PNG_LIBS) $(ZLIB_LIBS) \
|
||||
$(EXTRA_DSO_LIBS) \
|
||||
$(MOZ_COMPONENT_LIBS) \
|
||||
$(NULL)
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
|
@ -0,0 +1,182 @@
|
|||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 2001 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Stuart Parmenter <pavlov@netscape.com>
|
||||
*/
|
||||
|
||||
#include "nsIGenericFactory.h"
|
||||
#include "nsIModule.h"
|
||||
|
||||
#include "imgCache.h"
|
||||
#include "imgContainer.h"
|
||||
#include "imgLoader.h"
|
||||
#include "imgRequest.h"
|
||||
#include "imgRequestProxy.h"
|
||||
|
||||
// gif
|
||||
#include "nsGIFDecoder2.h"
|
||||
|
||||
// jpeg
|
||||
#include "nsJPEGDecoder.h"
|
||||
|
||||
// bmp/ico
|
||||
#include "nsBMPDecoder.h"
|
||||
#include "nsICODecoder.h"
|
||||
|
||||
// png
|
||||
#include "nsPNGDecoder.h"
|
||||
|
||||
// xbm
|
||||
#include "nsXBMDecoder.h"
|
||||
|
||||
// ppm
|
||||
#include "nsPPMDecoder.h"
|
||||
|
||||
// objects that just require generic constructors
|
||||
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(imgCache)
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(imgContainer)
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(imgLoader)
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(imgRequestProxy)
|
||||
|
||||
// gif
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsGIFDecoder2)
|
||||
|
||||
// jpeg
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsJPEGDecoder)
|
||||
|
||||
// bmp
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsICODecoder)
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsBMPDecoder)
|
||||
|
||||
// png
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsPNGDecoder)
|
||||
|
||||
// xbm
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsXBMDecoder)
|
||||
|
||||
// ppm
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsPPMDecoder)
|
||||
|
||||
static const nsModuleComponentInfo components[] =
|
||||
{
|
||||
{ "image cache",
|
||||
NS_IMGCACHE_CID,
|
||||
"@mozilla.org/image/cache;1",
|
||||
imgCacheConstructor, },
|
||||
{ "image container",
|
||||
NS_IMGCONTAINER_CID,
|
||||
"@mozilla.org/image/container;1",
|
||||
imgContainerConstructor, },
|
||||
{ "image loader",
|
||||
NS_IMGLOADER_CID,
|
||||
"@mozilla.org/image/loader;1",
|
||||
imgLoaderConstructor, },
|
||||
{ "image request proxy",
|
||||
NS_IMGREQUESTPROXY_CID,
|
||||
"@mozilla.org/image/request;1",
|
||||
imgRequestProxyConstructor, },
|
||||
|
||||
// gif
|
||||
{ "GIF Decoder",
|
||||
NS_GIFDECODER2_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/gif",
|
||||
nsGIFDecoder2Constructor, },
|
||||
|
||||
// jpeg
|
||||
{ "JPEG decoder",
|
||||
NS_JPEGDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/jpeg",
|
||||
nsJPEGDecoderConstructor, },
|
||||
{ "JPEG decoder",
|
||||
NS_JPEGDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/pjpeg",
|
||||
nsJPEGDecoderConstructor, },
|
||||
{ "JPEG decoder",
|
||||
NS_JPEGDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/jpg",
|
||||
nsJPEGDecoderConstructor, },
|
||||
|
||||
// bmp
|
||||
{ "ICO Decoder",
|
||||
NS_ICODECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/x-icon",
|
||||
nsICODecoderConstructor, },
|
||||
{ "BMP Decoder",
|
||||
NS_BMPDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/bmp",
|
||||
nsBMPDecoderConstructor, },
|
||||
|
||||
// png
|
||||
{ "PNG Decoder",
|
||||
NS_PNGDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/png",
|
||||
nsPNGDecoderConstructor, },
|
||||
{ "PNG Decoder",
|
||||
NS_PNGDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/x-png",
|
||||
nsPNGDecoderConstructor, },
|
||||
|
||||
// xbm
|
||||
{ "XBM Decoder",
|
||||
NS_XBMDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/x-xbitmap",
|
||||
nsXBMDecoderConstructor, },
|
||||
{ "XBM Decoder",
|
||||
NS_XBMDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/x-xbm",
|
||||
nsXBMDecoderConstructor, },
|
||||
{ "XBM Decoder",
|
||||
NS_XBMDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/xbm",
|
||||
nsXBMDecoderConstructor, },
|
||||
|
||||
// ppm
|
||||
{ "pbm decoder",
|
||||
NS_PPMDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/x-portable-bitmap",
|
||||
nsPPMDecoderConstructor, },
|
||||
{ "pgm decoder",
|
||||
NS_PPMDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/x-portable-graymap",
|
||||
nsPPMDecoderConstructor, },
|
||||
{ "ppm decoder",
|
||||
NS_PPMDECODER_CID,
|
||||
"@mozilla.org/image/decoder;2?type=image/x-portable-pixmap",
|
||||
nsPPMDecoderConstructor, },
|
||||
};
|
||||
|
||||
PR_STATIC_CALLBACK(nsresult)
|
||||
imglib_Initialize(nsIModule* aSelf)
|
||||
{
|
||||
imgCache::Init();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
PR_STATIC_CALLBACK(void)
|
||||
imglib_Shutdown(nsIModule* aSelf)
|
||||
{
|
||||
imgCache::Shutdown();
|
||||
nsGifShutdown();
|
||||
}
|
||||
|
||||
NS_IMPL_NSGETMODULE_WITH_CTOR_DTOR(nsImageLib2Module, components,
|
||||
imglib_Initialize, imglib_Shutdown)
|
||||
|
Загрузка…
Ссылка в новой задаче