File security.hpp

File List > astutedds > security > security.hpp

Go to the documentation of this file

//
// Copyright (c) 2026, Astute Systems PTY LTD
//
// This file is part of the Astute DDS developed by Astute Systems.
//
// See the commercial LICENSE file in the project root for full license details.
//
// @file security.hpp
// @brief Master header for DDS Security 1.1/1.2 implementation
//
// This file provides access to all security SPIs (Service Plugin Interfaces)
// based on the OMG DDS Security specification.
//

#pragma once

#include "access_control_spi.hpp"
#include "authentication_spi.hpp"
#include "crypto_spi.hpp"
#include "data_tagging_spi.hpp"
#include "logging_spi.hpp"
#include "security_types.hpp"

namespace astutedds::security
{

struct SecurityPlugins
{
    AuthenticationPluginPtr authentication;
    AccessControlPluginPtr access_control;
    CryptoPluginPtr crypto;
    LoggingPluginPtr logging;
    DataTaggingPluginPtr data_tagging;

    bool is_complete() const { return authentication && access_control && crypto && logging; }
};

}  // namespace astutedds::security