|
ETISS 0.11.2
ExtendableTranslatingInstructionSetSimulator(version0.11.2)
|
interface class for libraries. More...
#include <LibraryInterface.h>


Public Member Functions | |
| LibraryInterface (std::string name) | |
| virtual | ~LibraryInterface () |
| virtual std::string | versionInfo () |
| simple version info string. intended to present information in a human readable way. | |
| virtual unsigned | countPlugins () |
| virtual unsigned | countCPUArchs () |
| virtual unsigned | countJITs () |
| virtual std::string | nameJIT (unsigned index) |
| virtual std::string | namePlugin (unsigned index) |
| virtual std::string | nameCPUArch (unsigned index) |
| virtual etiss::JIT * | createJIT (unsigned index, std::map< std::string, std::string > options=std::map< std::string, std::string >()) |
| virtual etiss::CPUArch * | createCPUArch (unsigned index, std::map< std::string, std::string > options=std::map< std::string, std::string >()) |
| virtual etiss::Plugin * | createPlugin (unsigned index, std::map< std::string, std::string > options=std::map< std::string, std::string >()) |
| virtual void | deleteJIT (etiss::JIT *) |
| virtual void | deleteCPUArch (etiss::CPUArch *) |
| virtual void | deletePlugin (etiss::Plugin *) |
| virtual bool | isEmpty () |
| returns true if this library provides nothing | |
| virtual const std::string & | getName () |
Static Public Member Functions | |
| static std::shared_ptr< LibraryInterface > | openSharedLibrary (std::string path, std::string name) |
| static std::shared_ptr< LibraryInterface > | openIntegratedLibrary () |
| static unsigned | getCurrentLibraryVersion () |
| static void | addSearchPath (const std::string &path) |
Private Attributes | |
| std::string | name_ |
interface class for libraries.
override functions as needed.
it is neccessary to override all function of the same category. e.g. for plugins: countPlugins(),namePlugin(1),createPlugin(1),deletePlugin(1). isEmpty() uses countXXXXXX() functions to assess its return value and doesn't need to be implemented.
to implement a dynamic library do NOT use this class. Refer to etiss/helper/CPUArchLibrary.h , etiss/helper/JITLibrary.h , etiss/helper/PluginLibrary.h for library functions to implement and use etiss::LibraryInterface::openSharedLibrary to load the dynamic library
Definition at line 47 of file LibraryInterface.h.
| LibraryInterface::LibraryInterface | ( | std::string | name | ) |
| name | name of the library |
| path | location of the library and its files |
Definition at line 28 of file LibraryInterface.cpp.
|
virtual |
Definition at line 29 of file LibraryInterface.cpp.
|
static |
Definition at line 567 of file LibraryInterface.cpp.
References int.
Referenced by TCCJIT::translate().

|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 40 of file LibraryInterface.cpp.
Referenced by isEmpty().

|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 44 of file LibraryInterface.cpp.
Referenced by isEmpty().

|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 36 of file LibraryInterface.cpp.
Referenced by isEmpty().

|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 66 of file LibraryInterface.cpp.
|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 62 of file LibraryInterface.cpp.
|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 70 of file LibraryInterface.cpp.
|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 76 of file LibraryInterface.cpp.
|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 75 of file LibraryInterface.cpp.
|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 77 of file LibraryInterface.cpp.
|
static |
Definition at line 145 of file IntegratedLibrary.cpp.
|
virtual |
|
virtual |
returns true if this library provides nothing
Definition at line 79 of file LibraryInterface.cpp.
References countCPUArchs(), countJITs(), and countPlugins().

|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 57 of file LibraryInterface.cpp.
|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 49 of file LibraryInterface.cpp.
|
virtual |
Reimplemented in IntegratedLibrary.
Definition at line 53 of file LibraryInterface.cpp.
|
static |
Definition at line 86 of file IntegratedLibraryHelper.cpp.
Referenced by etiss_initialize().

|
static |
Definition at line 489 of file LibraryInterface.cpp.
References etiss::ERROR, ETISS_SRCLOC, ETISS_VARVAL, etiss::INFO, etiss::log(), etiss::VERBOSE, and etiss::WARNING.
Referenced by etiss::loadLibrary().


|
virtual |
simple version info string. intended to present information in a human readable way.
Reimplemented in IntegratedLibrary.
Definition at line 31 of file LibraryInterface.cpp.
|
private |
Definition at line 103 of file LibraryInterface.h.
Referenced by getName().