Utility/AbstractImage: Inherit RefCounted

This commit is contained in:
Lynix 2016-10-20 23:53:22 +02:00
parent 3c29bfe516
commit a7d2d8cddd
5 changed files with 29 additions and 6 deletions

View File

@ -10,7 +10,6 @@
#include <Nazara/Prerequesites.hpp>
#include <Nazara/Core/ObjectLibrary.hpp>
#include <Nazara/Core/ObjectRef.hpp>
#include <Nazara/Core/RefCounted.hpp>
#include <Nazara/Core/Resource.hpp>
#include <Nazara/Core/ResourceManager.hpp>
#include <Nazara/Core/Signal.hpp>
@ -31,7 +30,7 @@ namespace Nz
struct TextureImpl;
class NAZARA_RENDERER_API Texture : public AbstractImage, public RefCounted, public Resource
class NAZARA_RENDERER_API Texture : public AbstractImage, public Resource
{
friend TextureLibrary;
friend TextureManager;

View File

@ -8,6 +8,7 @@
#define NAZARA_ABSTRACTIMAGE_HPP
#include <Nazara/Prerequesites.hpp>
#include <Nazara/Core/ObjectRef.hpp>
#include <Nazara/Math/Box.hpp>
#include <Nazara/Math/Rect.hpp>
#include <Nazara/Math/Vector3.hpp>
@ -16,10 +17,16 @@
namespace Nz
{
class NAZARA_UTILITY_API AbstractImage
class AbstractImage;
using AbstractImageConstRef = ObjectRef<const AbstractImage>;
using AbstractImageRef = ObjectRef<AbstractImage>;
class NAZARA_UTILITY_API AbstractImage : public RefCounted
{
public:
AbstractImage() = default;
inline AbstractImage(const AbstractImage& image);
virtual ~AbstractImage();
UInt8 GetBytesPerPixel() const;
@ -43,4 +50,6 @@ namespace Nz
};
}
#include <Nazara/Utility/AbstractImage.inl>
#endif // NAZARA_IMAGE_HPP

View File

@ -0,0 +1,16 @@
// Copyright (C) 2015 Jérôme Leclercq
// This file is part of the "Nazara Engine - Utility module"
// For conditions of distribution and use, see copyright notice in Config.hpp
#include <Nazara/Utility/AbstractImage.hpp>
#include <Nazara/Utility/Debug.hpp>
namespace Nz
{
inline AbstractImage::AbstractImage(const AbstractImage& image) :
RefCounted()
{
}
}
#include <Nazara/Utility/DebugOff.hpp>

View File

@ -10,7 +10,6 @@
#include <Nazara/Prerequesites.hpp>
#include <Nazara/Core/Color.hpp>
#include <Nazara/Core/ObjectLibrary.hpp>
#include <Nazara/Core/ObjectRef.hpp>
#include <Nazara/Core/RefCounted.hpp>
#include <Nazara/Core/Resource.hpp>
#include <Nazara/Core/ResourceLoader.hpp>
@ -47,7 +46,7 @@ namespace Nz
using ImageRef = ObjectRef<Image>;
using ImageSaver = ResourceSaver<Image, ImageParams>;
class NAZARA_UTILITY_API Image : public AbstractImage, public RefCounted, public Resource
class NAZARA_UTILITY_API Image : public AbstractImage, public Resource
{
friend ImageLibrary;
friend ImageLoader;

View File

@ -52,7 +52,7 @@ namespace Nz
}
Image::Image(const Image& image) :
RefCounted(),
AbstractImage(image),
Resource(),
m_sharedImage(image.m_sharedImage)
{