INTRODUCTION Overview Download and Install Quick Start Documentation Publications NONFRAMEWORK CODE Driver Interfaces Drivers Libraries Utilities FRAMEWORK CODE Interfaces Components Libraries Utilities Full Software Listings DEVELOPER Tutorials Examples Dev Guide Dashboard PEOPLE Contributors Users Project Download Mailing lists
|
hydrolibs/hydrodll/test/interface.h00001 #ifndef HYDRO_DLLTEST_LIB_INTERFACE_H 00002 #define HYDRO_DLLTEST_LIB_INTERFACE_H 00003 00004 #include <string> 00005 00006 namespace dlltest { 00007 00008 // Abstract interface which will be implemented in the library 00009 class Interface 00010 { 00011 public: 00012 virtual ~Interface() {}; 00013 00014 virtual int number() const=0; 00015 }; 00016 00017 // Helper class to instantiate implementation(s) 00018 class Factory 00019 { 00020 public: 00021 virtual ~Factory() {}; 00022 virtual Interface *create( int number ) const=0; 00023 }; 00024 00025 } // namespace 00026 00027 // Function for dynamically instantiating drivers. 00028 // A driver must have a function like so: 00029 // extern "C" { 00030 // dlltest::Factory *createFactory(); 00031 // } 00032 typedef dlltest::Factory *FactoryMakerFunc(); 00033 00034 #endif |
Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)