general: Update EXPCL declarations to be MinGW-friendly (#792)

This commit is contained in:
Leandro Benedet Garcia 2019-11-27 15:25:25 -03:00 committed by Sam Edwards
parent d08219584d
commit ae33d62978
8 changed files with 23 additions and 25 deletions

3
.gitignore vendored
View File

@ -63,3 +63,6 @@ __pycache__/
.tox/ .tox/
.cache/ .cache/
.pytest_cache/ .pytest_cache/
/.settings/
/.cproject
/.project

View File

@ -151,8 +151,7 @@ operator >> (std::istream &in, TextEncoder::Encoding &encoding);
// This function is declared inline to minimize the risk of link conflicts // This function is declared inline to minimize the risk of link conflicts
// should another third-party module also define the same output operator. // should another third-party module also define the same output operator.
INLINE EXPCL_DTOOL_DTOOLUTIL std::ostream & INLINE std::ostream & operator << (std::ostream &out, const std::wstring &str);
operator << (std::ostream &out, const std::wstring &str);
#include "textEncoder.I" #include "textEncoder.I"

View File

@ -74,7 +74,7 @@ private:
UnalignedLVecBase4 _color; UnalignedLVecBase4 _color;
}; };
class DebugDraw : public btIDebugDraw { class EXPCL_PANDABULLET DebugDraw : public btIDebugDraw {
public: public:
DebugDraw() {}; DebugDraw() {};

View File

@ -65,7 +65,7 @@ private:
class File; class File;
class Directory; class Directory;
class FileBase : public TypedReferenceCount { class EXPCL_PANDA_EXPRESS FileBase : public TypedReferenceCount {
public: public:
INLINE FileBase(const std::string &basename); INLINE FileBase(const std::string &basename);
virtual ~FileBase(); virtual ~FileBase();
@ -94,7 +94,7 @@ private:
static TypeHandle _type_handle; static TypeHandle _type_handle;
}; };
class File : public FileBase { class EXPCL_PANDA_EXPRESS File : public FileBase {
public: public:
INLINE File(const std::string &basename); INLINE File(const std::string &basename);
@ -121,7 +121,7 @@ private:
typedef pset<PT(FileBase), indirect_less<FileBase *> > Files; typedef pset<PT(FileBase), indirect_less<FileBase *> > Files;
class Directory : public FileBase { class EXPCL_PANDA_EXPRESS Directory : public FileBase {
public: public:
INLINE Directory(const std::string &basename); INLINE Directory(const std::string &basename);

View File

@ -295,7 +295,7 @@ public:
} }
private: private:
static TypeHandle _type_handle; static EXPCL_PANDA_GOBJ TypeHandle _type_handle;
}; };
typedef pmap<const CacheKey *, PT(CacheEntry), IndirectLess<CacheKey> > Cache; typedef pmap<const CacheKey *, PT(CacheEntry), IndirectLess<CacheKey> > Cache;

View File

@ -399,7 +399,7 @@ private:
static TypeHandle _type_handle; static TypeHandle _type_handle;
}; };
EXPCL_PANDA_GOBJ INLINE std::ostream &operator << (std::ostream &out, const Lens &lens); INLINE std::ostream &operator << (std::ostream &out, const Lens &lens);
#include "lens.I" #include "lens.I"

View File

@ -313,7 +313,7 @@ read_data(unsigned char *data, size_t size, VertexDataSaveBlock *block) {
} }
success = GetOverlappedResult(_handle, &overlapped, &bytes_read, false); success = GetOverlappedResult(_handle, &overlapped, &bytes_read, false);
} }
nassertr(bytes_read == size, nullptr); nassertr(bytes_read == size, false);
double finish_time = ClockObject::get_global_clock()->get_real_time(); double finish_time = ClockObject::get_global_clock()->get_real_time();
if (gobj_cat.is_debug()) { if (gobj_cat.is_debug()) {
gobj_cat.debug() gobj_cat.debug()

View File

@ -27,29 +27,25 @@ extern EXPCL_PANDA_PNMIMAGE const float to_linear_float_table[256];
BEGIN_PUBLISH BEGIN_PUBLISH
EXPCL_PANDA_PNMIMAGE INLINE float decode_sRGB_float(unsigned char val); INLINE float decode_sRGB_float(unsigned char val);
EXPCL_PANDA_PNMIMAGE INLINE float decode_sRGB_float(float val); INLINE float decode_sRGB_float(float val);
EXPCL_PANDA_PNMIMAGE INLINE unsigned char decode_sRGB_uchar(unsigned char val); INLINE unsigned char decode_sRGB_uchar(unsigned char val);
EXPCL_PANDA_PNMIMAGE INLINE unsigned char decode_sRGB_uchar(float val); INLINE unsigned char decode_sRGB_uchar(float val);
EXPCL_PANDA_PNMIMAGE INLINE float encode_sRGB_float(unsigned char val); INLINE float encode_sRGB_float(unsigned char val);
EXPCL_PANDA_PNMIMAGE INLINE float encode_sRGB_float(float val); INLINE float encode_sRGB_float(float val);
EXPCL_PANDA_PNMIMAGE INLINE unsigned char encode_sRGB_uchar(unsigned char val); INLINE unsigned char encode_sRGB_uchar(unsigned char val);
EXPCL_PANDA_PNMIMAGE INLINE unsigned char encode_sRGB_uchar(float val); INLINE unsigned char encode_sRGB_uchar(float val);
END_PUBLISH END_PUBLISH
// These functions convert more than one component in one go, which can be // These functions convert more than one component in one go, which can be
// faster due to vectorization. // faster due to vectorization.
EXPCL_PANDA_PNMIMAGE INLINE void encode_sRGB_uchar(const LColorf &from, INLINE void encode_sRGB_uchar(const LColorf &from, xel &into);
xel &into); INLINE void encode_sRGB_uchar(const LColorf &from, xel &into, xelval &into_alpha);
EXPCL_PANDA_PNMIMAGE INLINE void encode_sRGB_uchar(const LColorf &from,
xel &into, xelval &into_alpha);
EXPCL_PANDA_PNMIMAGE INLINE void encode_sRGB_uchar(const LColord &from, INLINE void encode_sRGB_uchar(const LColord &from, xel &into);
xel &into); INLINE void encode_sRGB_uchar(const LColord &from, xel &into, xelval &into_alpha);
EXPCL_PANDA_PNMIMAGE INLINE void encode_sRGB_uchar(const LColord &from,
xel &into, xelval &into_alpha);
// Use these functions if you know that SSE2 support is available. Otherwise, // Use these functions if you know that SSE2 support is available. Otherwise,
// they will crash! // they will crash!