Medical Imaging Interaction Toolkit  2025.12.02
Medical Imaging Interaction Toolkit
usSharedLibrary.h
Go to the documentation of this file.
1 /*============================================================================
2 
3  Library: CppMicroServices
4 
5  Copyright (c) German Cancer Research Center (DKFZ)
6  All rights reserved.
7 
8  Licensed under the Apache License, Version 2.0 (the "License");
9  you may not use this file except in compliance with the License.
10  You may obtain a copy of the License at
11 
12  https://www.apache.org/licenses/LICENSE-2.0
13 
14  Unless required by applicable law or agreed to in writing, software
15  distributed under the License is distributed on an "AS IS" BASIS,
16  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  See the License for the specific language governing permissions and
18  limitations under the License.
19 
20 ============================================================================*/
21 
22 #ifndef USSHAREDLIBRARY_H
23 #define USSHAREDLIBRARY_H
24 
25 #include "usCoreConfig.h"
26 #include "usSharedData.h"
27 
28 #include <string>
29 
31 
32 class SharedLibraryPrivate;
33 
40 {
41 public:
42 
45 
54  SharedLibrary(const std::string& libPath, const std::string& name);
55 
63  SharedLibrary(const std::string& absoluteFilePath);
64 
69 
71 
82  void Load();
83 
91  void Load(int flags);
92 
99  void Unload();
100 
109  void SetName(const std::string& name);
110 
115  std::string GetName() const;
116 
124  std::string GetFilePath(const std::string& name) const;
125 
134  void SetFilePath(const std::string& absoluteFilePath);
135 
141  std::string GetFilePath() const;
142 
150  void SetLibraryPath(const std::string& path);
151 
157  std::string GetLibraryPath() const;
158 
166  void SetSuffix(const std::string& suffix);
167 
173  std::string GetSuffix() const;
174 
182  void SetPrefix(const std::string& prefix);
183 
189  std::string GetPrefix() const;
190 
197  void* GetHandle() const;
198 
204  bool IsLoaded() const;
205 
206 private:
207 
209 
210 };
211 
213 
214 #endif // USTESTUTILSHAREDLIBRARY_H
std::string GetName() const
void SetName(const std::string &name)
void SetFilePath(const std::string &absoluteFilePath)
bool IsLoaded() const
std::string GetPrefix() const
SharedLibrary(const std::string &absoluteFilePath)
void SetSuffix(const std::string &suffix)
std::string GetFilePath(const std::string &name) const
void SetLibraryPath(const std::string &path)
std::string GetSuffix() const
void * GetHandle() const
void Load(int flags)
SharedLibrary(const std::string &libPath, const std::string &name)
std::string GetFilePath() const
SharedLibrary(const SharedLibrary &other)
std::string GetLibraryPath() const
SharedLibrary & operator=(const SharedLibrary &other)
void SetPrefix(const std::string &prefix)
#define US_Core_EXPORT
Definition: usCoreExport.h:21
#define US_END_NAMESPACE
#define US_BEGIN_NAMESPACE