Skip to content

Core interface

Thomas Kroes edited this page Jan 10, 2023 · 15 revisions

Breakdown of the core API

The core interface class provides all functionality to manage:

  • Actions
  • Data and data hierarchy
  • Events
  • Workspaces
  • Projects
  • Plugins
  • Settings

Access to the core and its managers

Access to the various manager is facilitated with convenience functions in the hdps namespace (requires the CoreInterface.h header):

  • Reference to the actions manager: hdps::actions()
  • Reference to the plugin manager: hdps::plugins()
  • Reference to the data manager: hdps::dataManager()
  • Reference to the data hierarchy manager: hdps::dataHierarchy()
  • Reference to the event manager: hdps::events()
  • Reference to the workspace manager: hdps::workspaces()
  • Reference to the project manager: hdps::projects()
  • Reference to the settings manager: hdps::settings()

Obtaining a pointer to the core interface

In general, direct access to the core is not necessary as the hdpsnamespace provides convenience functions for gaining access to managers. In case you do need direct access, there are three ways to obtain access to the core:

  • The hdps::core() function returns a pointer to the current instance of the core.
  • From within a plugin, each plugin has a _core member which points to the core
  • Globally by calling Application::core() (requires include: #include <Application.h>)