LSLLIB shared-library export macro and build-stamp accessors used by every public LSL symbol. More...


Go to the source code of this file.
Namespaces | |
| namespace | LSLLIB |
| Lab Streaming Layer (LSL) integration for real-time data exchange. | |
Macros | |
| #define | LSLSHARED_EXPORT |
Functions | |
| const char * | LSLLIB::buildDateTime () |
| const char * | LSLLIB::buildHash () |
| const char * | LSLLIB::buildHashLong () |
LSLLIB shared-library export macro and build-stamp accessors used by every public LSL symbol.
SPDX-License-Identifier: BSD-3-Clause Copyright (c) 2026 MNE-CPP Authors
This header defines the LSLSHARED_EXPORT decoration that every exported class and free function in LSLLIB must carry so that the library can be linked both as a Qt shared library (the default mne-cpp build) and as a statically linked archive (the WebAssembly and STATICBUILD configurations). The macro expands to Q_DECL_EXPORT when MNE_LSL_LIBRARY is defined during the library's own translation units and to Q_DECL_IMPORT when the header is consumed by a downstream module, mirroring the convention used throughout the other mne-cpp libraries.
It also declares the LSLLIB namespace itself and three buildDateTime / buildHash / buildHashLong free functions that surface the per-translation-unit build stamp produced by utils/buildinfo.h. Those accessors are wired into the build-info dialogs of every application that links against LSLLIB so the user can confirm which git revision of the LSL stack a running binary was compiled from without having to launch a debugger.
Definition in file lsl_global.h.
| #define LSLSHARED_EXPORT |
Definition at line 51 of file lsl_global.h.