CMake/Source/cmDynamicLoader.h

61 lines
1.7 KiB
C
Raw Normal View History

2002-08-21 19:58:01 +04:00
/*=========================================================================
Program: CMake - Cross-Platform Makefile Generator
2002-08-21 19:58:01 +04:00
Module: $RCSfile$
Language: C++
Date: $Date$
Version: $Revision$
Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
2002-08-21 19:58:01 +04:00
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
2002-08-21 19:58:01 +04:00
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
// .NAME cmDynamicLoader - class interface to system dynamic libraries
// .SECTION Description
// cmDynamicLoader provides a portable interface to loading dynamic
// libraries into a process.
2002-08-21 19:58:01 +04:00
#ifndef __cmDynamicLoader_h
#define __cmDynamicLoader_h
#include "cmStandardIncludes.h"
#include <cmsys/DynamicLoader.hxx>
2002-08-21 19:58:01 +04:00
class cmDynamicLoader
{
public:
// Description:
// Load a dynamic library into the current process.
// The returned cmsys::DynamicLoader::LibraryHandle can be used to access
// the symbols in the library.
static cmsys::DynamicLoader::LibraryHandle OpenLibrary(const char*);
2002-08-21 19:58:01 +04:00
// Description:
// Return the library prefix for the given architecture
static const char* LibPrefix();
// Description:
// Return the library extension for the given architecture
static const char* LibExtension();
2002-09-24 18:24:56 +04:00
// Description:
// Flush the cache of dynamic loader.
static void FlushCache();
2002-08-21 19:58:01 +04:00
protected:
cmDynamicLoader() {};
~cmDynamicLoader() {};
private:
cmDynamicLoader(const cmDynamicLoader&); // Not implemented.
void operator=(const cmDynamicLoader&); // Not implemented.
};
#endif