freRegistrationCtrlrs.h

Go to the documentation of this file.
00001 /*=========================================================================
00002  
00003   Program:   F.R.E.E. - flexible registration evaluation engine
00004   Version:   v.1.0.0
00005   Date:      $Date: 2006/09/01 12:00:00 $
00006   Module:    $RCSfile: freRegistrationCtrlrs.h,v $
00007   Language:  C++
00008  
00009  
00010         
00011         Copyright (c) 2003 University Heidelberg, University of applied science Heilbronn.
00012   All rights reserved.
00013  
00014   Portions of this code are covered under the ITK copyright.
00015   See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
00016  
00017   Portions of this code are covered under the VTK copyright.
00018   See VTKCopyright.txt or http://www.kitware.com/VTKCopyright.htm for details.
00019  
00020      This software is distributed WITHOUT ANY WARRANTY; without even 
00021      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
00022      PURPOSE.  See the above copyright notices for more information.
00023  
00024 =========================================================================*/
00025 #ifndef __freRegistrationCtrlrs_h
00026 #define __freRegistrationCtrlrs_h
00027 
00028 #include "freElementals.h"
00029 #include "freControllerBase.h"
00030 #include "freControllerCentral.h"
00031 
00032 namespace FREE
00033 {
00034 
00035 #ifndef __FREE_DISABLE_DLL_INTERFACE
00036 
00037 namespace
00038 {
00039 extern "C"
00040 #ifdef _WIN32
00041     __declspec( dllexport )
00042 #endif
00043     void FREEGetControllerList(int& iControllerCount, const char**& pControllerIDs);
00044 
00045 extern "C"
00046 #ifdef _WIN32
00047     __declspec( dllexport )
00048 #endif
00049     GenericComponentController* FREECreateController(const char* pControllerID);
00050 
00051 extern "C"
00052 #ifdef _WIN32
00053     __declspec( dllexport )
00054 #endif
00055     bool FREEDeleteController (GenericComponentController* pController);
00056 
00057 extern "C"
00058 #ifdef _WIN32
00059     __declspec( dllexport )
00060 #endif
00061   void FREELinkCentralAsDedicated (::FREE::ControllerCentral::ControllerListType* pDedicatedControllerList,
00062                                    ::FREE::ControllerCentral::LibraryHandleListType* pDedicatedLibraryHandles,
00063                                    ::FREE::ProgressEventBase* pfnOnControl, ::FREE::ProgressEventBase* pfnOnBuild,
00064                                    ::FREE::ControllerCentral::CtrlCallbackListType* pCtrlCallbackList,
00065                                    ::FREE::ControllerCentral::CtrlProgressListType* pCtrlProgressList,
00066                                    ::itk::MutexLock* pGlobalCallbackMutex,
00067                                    ::itk::MutexLock* pGlobalProgressMutex);
00068 }
00069 
00070 #endif //__FREE_USEComponentDLLs
00071 
00072 class RegistrationCtrlrs
00073 {
00074 public:
00075     static void RegisterAllControllers(ControllerCentral* pCentral);
00076 
00077     static void GetControllerList(int& iControllerCount, const char**& pControllerIDs);
00078     static GenericComponentController* CreateController(const char* pControllerID);
00079 
00080 };
00081 
00082 
00083 } //end of namespace free
00084 
00085 #endif

Generated at Sat Oct 13 17:12:15 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000