Attempt to fix broken DLL exports from osgDB
Only export the osgDB method implementations, instead of the entire class, and hence avoid exporting symbols from the base class, which then conflict with other compilation units when linking. This avoids the need for /FORCE:MULTIPLE linker option with MSVC.
This commit is contained in:
parent
8f68da89d7
commit
ea9f479674
@ -31,27 +31,27 @@ namespace osgDB
|
|||||||
|
|
||||||
void OSGDB_EXPORT open(std::fstream& fs, const char* filename,std::ios_base::openmode mode);
|
void OSGDB_EXPORT open(std::fstream& fs, const char* filename,std::ios_base::openmode mode);
|
||||||
|
|
||||||
class OSGDB_EXPORT ifstream : public std::ifstream
|
class ifstream : public std::ifstream
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ifstream();
|
OSGDB_EXPORT ifstream();
|
||||||
explicit ifstream(const char* filename,
|
OSGDB_EXPORT explicit ifstream(const char* filename,
|
||||||
std::ios_base::openmode mode = std::ios_base::in);
|
std::ios_base::openmode mode = std::ios_base::in);
|
||||||
~ifstream();
|
OSGDB_EXPORT ~ifstream();
|
||||||
|
|
||||||
void open(const char* filename,
|
void OSGDB_EXPORT open(const char* filename,
|
||||||
std::ios_base::openmode mode = std::ios_base::in);
|
std::ios_base::openmode mode = std::ios_base::in);
|
||||||
};
|
};
|
||||||
|
|
||||||
class OSGDB_EXPORT ofstream : public std::ofstream
|
class ofstream : public std::ofstream
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ofstream();
|
OSGDB_EXPORT ofstream();
|
||||||
explicit ofstream(const char* filename,
|
OSGDB_EXPORT explicit ofstream(const char* filename,
|
||||||
std::ios_base::openmode mode = std::ios_base::out);
|
std::ios_base::openmode mode = std::ios_base::out);
|
||||||
~ofstream();
|
OSGDB_EXPORT ~ofstream();
|
||||||
|
|
||||||
void open(const char* filename,
|
void OSGDB_EXPORT open(const char* filename,
|
||||||
std::ios_base::openmode mode = std::ios_base::out);
|
std::ios_base::openmode mode = std::ios_base::out);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user