Browse Source

TgaImporter: deinlined functions.

pull/34/head
Vladimír Vondruš 13 years ago
parent
commit
e8c3838065
  1. 14
      src/Plugins/TgaImporter/TgaImporter.cpp
  2. 12
      src/Plugins/TgaImporter/TgaImporter.h

14
src/Plugins/TgaImporter/TgaImporter.cpp

@ -39,6 +39,16 @@ namespace Magnum { namespace Trade { namespace TgaImporter {
static_assert(sizeof(TgaImporter::Header) == 18, "TgaImporter: header size is not 18 bytes"); static_assert(sizeof(TgaImporter::Header) == 18, "TgaImporter: header size is not 18 bytes");
#endif #endif
TgaImporter::TgaImporter(): _image(nullptr) {}
TgaImporter::TgaImporter(Corrade::PluginManager::AbstractPluginManager* manager, std::string plugin): AbstractImporter(manager, std::move(plugin)), _image(nullptr) {}
TgaImporter::~TgaImporter() { close(); }
TgaImporter::Features TgaImporter::features() const {
return Feature::OpenFile|Feature::OpenStream;
}
bool TgaImporter::TgaImporter::open(const std::string& filename) { bool TgaImporter::TgaImporter::open(const std::string& filename) {
std::ifstream in(filename.c_str()); std::ifstream in(filename.c_str());
if(!in.good()) { if(!in.good()) {
@ -132,6 +142,10 @@ void TgaImporter::close() {
_image = nullptr; _image = nullptr;
} }
UnsignedInt TgaImporter::TgaImporter::image2DCount() const {
return _image ? 1 : 0;
}
ImageData2D* TgaImporter::image2D(UnsignedInt) { ImageData2D* TgaImporter::image2D(UnsignedInt) {
return _image; return _image;
} }

12
src/Plugins/TgaImporter/TgaImporter.h

@ -50,20 +50,18 @@ namespace Magnum { namespace Trade { namespace TgaImporter {
class MAGNUM_TGAIMPORTER_EXPORT TgaImporter: public AbstractImporter { class MAGNUM_TGAIMPORTER_EXPORT TgaImporter: public AbstractImporter {
public: public:
/** @brief Default constructor */ /** @brief Default constructor */
inline explicit TgaImporter(): _image(nullptr) {} explicit TgaImporter();
/** @brief Plugin manager constructor */ /** @brief Plugin manager constructor */
inline explicit TgaImporter(Corrade::PluginManager::AbstractPluginManager* manager, std::string plugin): AbstractImporter(manager, std::move(plugin)), _image(nullptr) {} explicit TgaImporter(Corrade::PluginManager::AbstractPluginManager* manager, std::string plugin);
inline virtual ~TgaImporter() { close(); } virtual ~TgaImporter();
inline Features features() const override { return Feature::OpenFile|Feature::OpenStream; }
Features features() const override;
bool open(std::istream& in) override; bool open(std::istream& in) override;
bool open(const std::string& filename) override; bool open(const std::string& filename) override;
void close() override; void close() override;
UnsignedInt image2DCount() const override;
UnsignedInt image2DCount() const override { return _image ? 1 : 0; }
ImageData2D* image2D(UnsignedInt id) override; ImageData2D* image2D(UnsignedInt id) override;
#pragma pack(1) #pragma pack(1)

Loading…
Cancel
Save