OpendTect  6.6
matlablibmgr.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: Nanne Hemstra
8  Date: January 2013
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 
15 #include "matlablinkmod.h"
16 #include "bufstring.h"
17 #include "bufstringset.h"
18 #include "uistring.h"
19 
20 class BufferStringSet;
21 class SharedLibAccess;
22 
23 
26 public:
27  MatlabLibAccess(const char* libfnm);
29 
30  bool init();
31  bool terminate();
32 
33  void* getFunction(const char*) const;
34  bool getParameters(int& nrin,int& nrout,
35  BufferStringSet& nms,
36  BufferStringSet& values) const;
37  uiString errMsg() const { return errmsg_; }
38 
39 protected:
40 
43  bool inited_;
44  mutable uiString errmsg_;
45 };
46 
47 
50 public:
53 
54  bool isOK() const { return inited_; }
55 
56  MatlabLibAccess* getMatlabLibAccess(const char* libfnm,bool doload);
57  bool isLoaded(const char* libfnm) const;
58  bool close(const char* libfnm);
59  uiString errMsg() const { return errmsg_; }
60 
61 
62 protected:
63 
66  bool load(const char* libfnm);
67 
71 
72  bool inited_;
73 };
74 
75 mGlobal(MATLABLink) MatlabLibMgr& MLM();
76 
MatlabLibAccess::inited_
bool inited_
Definition: matlablibmgr.h:43
MatlabLibMgr::isOK
bool isOK() const
Definition: matlablibmgr.h:54
uistring.h
MatlabLibMgr::terminateApplication
void terminateApplication()
mGlobal
#define mGlobal(module)
Definition: commondefs.h:180
ObjectSet< MatlabLibAccess >
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
MatlabLibMgr::MatlabLibMgr
MatlabLibMgr()
MatlabLibMgr::close
bool close(const char *libfnm)
MatlabLibAccess
Definition: matlablibmgr.h:25
MatlabLibMgr::errMsg
uiString errMsg() const
Definition: matlablibmgr.h:59
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
MatlabLibMgr::errmsg_
uiString errmsg_
Definition: matlablibmgr.h:70
MatlabLibAccess::shlibfnm_
BufferString shlibfnm_
Definition: matlablibmgr.h:42
MatlabLibAccess::MatlabLibAccess
MatlabLibAccess(const char *libfnm)
MatlabLibMgr::~MatlabLibMgr
~MatlabLibMgr()
MatlabLibMgr::mODTextTranslationClass
mODTextTranslationClass(MatlabLibMgr)
bufstring.h
MatlabLibMgr
Definition: matlablibmgr.h:49
MatlabLibAccess::~MatlabLibAccess
~MatlabLibAccess()
MatlabLibAccess::getParameters
bool getParameters(int &nrin, int &nrout, BufferStringSet &nms, BufferStringSet &values) const
MatlabLibMgr::libnms_
BufferStringSet libnms_
Definition: matlablibmgr.h:69
MatlabLibAccess::mODTextTranslationClass
mODTextTranslationClass(MatlabLibAccess)
MatlabLibAccess::terminate
bool terminate()
MatlabLibAccess::errmsg_
uiString errmsg_
Definition: matlablibmgr.h:44
SharedLibAccess
Gives access to shared libs on runtime. Plugins should be loaded via the Plugin Manager (see plugins....
Definition: sharedlibs.h:31
MatlabLibMgr::inited_
bool inited_
Definition: matlablibmgr.h:72
MatlabLibMgr::getMatlabLibAccess
MatlabLibAccess * getMatlabLibAccess(const char *libfnm, bool doload)
MatlabLibMgr::mlas_
ObjectSet< MatlabLibAccess > mlas_
Definition: matlablibmgr.h:68
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
bufstringset.h
MatlabLibMgr::load
bool load(const char *libfnm)
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
MPE::errmsg_
BufferString errmsg_
Definition: horizontracker.h:118
MatlabLibMgr::isLoaded
bool isLoaded(const char *libfnm) const
MatlabLibAccess::errMsg
uiString errMsg() const
Definition: matlablibmgr.h:37
MatlabLibMgr::initApplication
bool initApplication()
MatlabLibAccess::getFunction
void * getFunction(const char *) const
MatlabLibAccess::sla_
SharedLibAccess * sla_
Definition: matlablibmgr.h:41
MatlabLibAccess::init
bool init()
MLM
MatlabLibMgr & MLM()

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2021