Ocean
devices/mapbuilding/MapBuilding.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) Meta Platforms, Inc. and affiliates.
3  *
4  * This source code is licensed under the MIT license found in the
5  * LICENSE file in the root directory of this source tree.
6  */
7 
8 #ifndef META_OCEAN_DEVICES_MAPBUILDING_MAP_BUILDING_H
9 #define META_OCEAN_DEVICES_MAPBUILDING_MAP_BUILDING_H
10 
11 #include "ocean/devices/Devices.h"
12 
13 namespace Ocean
14 {
15 
16 namespace Devices
17 {
18 
19 namespace MapBuilding
20 {
21 
22 /**
23  * @ingroup devices
24  * @defgroup devicesmapbuilding Ocean Devices MapBuilding Library
25  * @{
26  * The Ocean Devices MapBuilding Library provides feature-based tracking in the context of map building.
27  * The library is platform independent.
28  * @}
29  */
30 
31 /**
32  * @namespace Ocean::Devices::MapBuilding Namespace of the Devices MapBuilding library.<p>
33  * The Namespace Ocean::Devices::MapBuilding is used in the entire Ocean Devices MapBuilding Library.
34  */
35 
36 // Defines OCEAN_DEVICES_MAPBUILDING_EXPORT for dll export and import.
37 #if defined(_WINDOWS) && defined(OCEAN_RUNTIME_SHARED)
38  #ifdef USE_OCEAN_DEVICES_MAPBUILDING_EXPORT
39  #define OCEAN_DEVICES_MAPBUILDING_EXPORT __declspec(dllexport)
40  #else
41  #define OCEAN_DEVICES_MAPBUILDING_EXPORT __declspec(dllimport)
42  #endif
43 #else
44  #define OCEAN_DEVICES_MAPBUILDING_EXPORT
45 #endif
46 
47 /**
48  * Returns the name of this devices library.
49  * @ingroup devicesmapbuilding
50  */
51  OCEAN_DEVICES_MAPBUILDING_EXPORT std::string nameMapBuildingLibrary();
52 
53 #if defined(OCEAN_RUNTIME_STATIC)
54 
55 /**
56  * Registers this MapBuilding device library at the global device manager.
57  * This function calls MapBuildingFactory::registerFactory() only.
58  * @ingroup devicesmapbuilding
59  */
61 
62 /**
63  * Unregisters this MapBuilding device library at the global device manager.
64  * This function calls MapBuildingactory::unregisterFactory() only.
65  * @return True, if succeeded
66  * @ingroup devicesmapbuilding
67  */
69 
70 #endif // OCEAN_RUNTIME_STATIC
71 
72 }
73 
74 }
75 
76 }
77 
78 #endif // META_OCEAN_DEVICES_MAPBUILDING_MAP_BUILDING_H
void registerMapBuildingLibrary()
Registers this MapBuilding device library at the global device manager.
OCEAN_DEVICES_MAPBUILDING_EXPORT std::string nameMapBuildingLibrary()
Returns the name of this devices library.
bool unregisterMapBuildingLibrary()
Unregisters this MapBuilding device library at the global device manager.
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15