.. _architecture_serialization: Serialization module ==================== .. raw:: html .. raw:: html :file: ../figures/svg_href_loader.html .. raw:: html :file: ../figures/stack_diagram.svg .. include:: ../safety_manual/rules/RULE_SERIALIZATION_MODULE_NOT_ALLOW.inc The serialization module allows Safe DDS to interoperate with other DDS implementations by means of implementing the Common Data Representation (CDR) serialization protocol. This module provides the following interfaces: * `memory::serialization::ISerializer <../doxygen/classeprosima_1_1safedds_1_1serialization_1_1_i_serializer.html>`__ * `memory::serialization::IDeserializer <../doxygen/classeprosima_1_1safedds_1_1serialization_1_1_i_deserializer.html>`__ Both interfaces are implemented by the default with both a CDR-compliant serializer and a deserializer, which are: * `memory::serialization::cdr::Serializer <../doxygen/classeprosima_1_1safedds_1_1serialization_1_1cdr_1_1_serializer.html>`__ * `memory::serialization::cdr::Deserializer <../doxygen/classeprosima_1_1safedds_1_1serialization_1_1cdr_1_1_deserializer.html>`__ This serialization implementation relies on :ref:`architecture_memory_byte_array` in order to avoid direct memory access.