Skip to content

Commit

Permalink
Type Object integration (#4239)
Browse files Browse the repository at this point in the history
* Refs #19906: refactor annotation parameter value consistency method to deal with aliases

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #19906: build wstring TypeIdentifiers

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #19906: fix long double name using Fast DDS-Gen defined name

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #19906: remove BuiltinAnnotations. Not required if not included in custom annotations sequence

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #19906: remove EquivalenceKindValue enum

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: support not applied annotation (extensibility/try_construct)

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix TypeIdentifier included in Minimal TypeObjects. Only explicit member flags

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: refactor bound consistency: unbounded collections have bound 0

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix map key type identifier consistency

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: register indirect hash TypeIdentifier correctly

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: bitfields must have a name

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix minimal_from_complete TypeIdentifier method

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fixes for maps

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: update script

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: update script

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types after rebase

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: remove tests: build TypeObject from DynamicType is not going to be implemented. TypeInformation is private API

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types and ensure library builds

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: ensure examples build

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: remove tests related to type compatibility/evolution

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: avoid generating unnecessary TypeObjectSupport

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: use new transport headers

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix build DDS unit tests, including DDS Statistics

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: remove XTypes tests. Type evolution is not going to be supported yet and remote type discovery tests are being refactored

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: remove legacy ReturnCode and fix tests (pending DynamicTypesTests and RTPS Statistics tests)

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: use another approach for unit test building: mock DomainParticipantFactory. Apply to DDSSQLFilter tests as proof of concept

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types and register TypeObject support by default

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix tests compilation

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix TypeObject tests

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix minimal annotation parameter sequence order. Fix minimal TypeIdentifier for map keys

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types and fixes after rebase

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix test in Release mode

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types after rebase in Fast DDS-Gen

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: linters

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix Python Bindings build

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix old API blackbox test compilation

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix build with TLS disabled

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types avoiding Windows warning

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix windows max macro conflict in security tests

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types to avoid Windows warning

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: avoid code in test main method

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: apply review suggestions

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: regenerate types after rebase

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

* Refs #20129: fix CI warnings

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>

---------

Signed-off-by: JLBuenoLopez-eProsima <[email protected]>
  • Loading branch information
JLBuenoLopez authored Jan 29, 2024
1 parent 8509399 commit 7b4c6fb
Show file tree
Hide file tree
Showing 569 changed files with 143,171 additions and 116,964 deletions.
2 changes: 1 addition & 1 deletion cmake/testing/GoogleTest.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,6 @@ function(gtest_discover_tests TARGET)

set(CMAKE_COMMAND "${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_win_wrapper_$<CONFIG>.bat")
endif()
set(_DISCOVERY_TIMEOUT "DISCOVERY_TIMEOUT;10")
set(_DISCOVERY_TIMEOUT "DISCOVERY_TIMEOUT;30")
_gtest_discover_tests(${TARGET} ${ARGN} ${_DISCOVERY_TIMEOUT})
endfunction()
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,6 @@
#define ADVANCEDCONFIGURATION_DllAPI
#endif // _WIN32



/*!
* @brief This class represents the structure AdvancedConfiguration defined by the user in the IDL file.
* @ingroup AdvancedConfiguration
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,6 @@ namespace fastcdr {
class Cdr;
class CdrSizeCalculator;



eProsima_user_DllExport void serialize_key(
eprosima::fastcdr::Cdr& scdr,
const AdvancedConfiguration& data);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,6 @@ using namespace eprosima::fastcdr::exception;
namespace eprosima {
namespace fastcdr {



template<>
eProsima_user_DllExport size_t calculate_serialized_size(
eprosima::fastcdr::CdrSizeCalculator& calculator,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,18 +19,18 @@
* This file was generated by the tool fastddsgen.
*/

#include "AdvancedConfigurationPubSubTypes.h"

#include <fastdds/dds/log/Log.hpp>
#include <fastdds/rtps/common/CdrSerialization.hpp>

#include "AdvancedConfigurationPubSubTypes.h"
#include "AdvancedConfigurationCdrAux.hpp"
#include "AdvancedConfigurationTypeObjectSupport.hpp"

using SerializedPayload_t = eprosima::fastrtps::rtps::SerializedPayload_t;
using InstanceHandle_t = eprosima::fastrtps::rtps::InstanceHandle_t;
using DataRepresentationId_t = eprosima::fastdds::dds::DataRepresentationId_t;



AdvancedConfigurationPubSubType::AdvancedConfigurationPubSubType()
{
setName("AdvancedConfiguration");
Expand Down Expand Up @@ -219,6 +219,11 @@ bool AdvancedConfigurationPubSubType::getKey(
return true;
}

void AdvancedConfigurationPubSubType::register_type_object_representation() const
{
register_AdvancedConfiguration_type_objects();
}


// Include auxiliary functions like for serializing/deserializing.
#include "AdvancedConfigurationCdrAux.ipp"
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,6 @@
#endif // GEN_API_VER




/*!
* @brief This class represents the TopicDataType of the type AdvancedConfiguration defined by the user in the IDL file.
* @ingroup AdvancedConfiguration
Expand Down Expand Up @@ -90,6 +88,9 @@ class AdvancedConfigurationPubSubType : public eprosima::fastdds::dds::TopicData
eProsima_user_DllExport void deleteData(
void* data) override;

//Register TypeObject representation in Fast DDS TypeObjectRegistry
eProsima_user_DllExport void register_type_object_representation() const override;

#ifdef TOPIC_DATA_TYPE_API_HAS_IS_BOUNDED
eProsima_user_DllExport inline bool is_bounded() const override
{
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
// Copyright 2016 Proyectos y Sistemas de Mantenimiento SL (eProsima).
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/*!
* @file AdvancedConfigurationTypeObjectSupport.hpp
* Header file containing the API required to register the TypeObject representation of the described types in the IDL file
*
* This file was generated by the tool fastddsgen.
*/

#ifndef _FAST_DDS_GENERATED_ADVANCEDCONFIGURATION_TYPE_OBJECT_SUPPORT_HPP_
#define _FAST_DDS_GENERATED_ADVANCEDCONFIGURATION_TYPE_OBJECT_SUPPORT_HPP_


#if defined(_WIN32)
#if defined(EPROSIMA_USER_DLL_EXPORT)
#define eProsima_user_DllExport __declspec( dllexport )
#else
#define eProsima_user_DllExport
#endif // EPROSIMA_USER_DLL_EXPORT
#else
#define eProsima_user_DllExport
#endif // _WIN32

/**
* @brief Register every TypeObject representation defined in the IDL file in Fast DDS TypeObjectRegistry.
*/
eProsima_user_DllExport void register_AdvancedConfiguration_type_objects();

#ifndef DOXYGEN_SHOULD_SKIP_THIS_PUBLIC

/**
* @brief Register AdvancedConfiguration related TypeIdentifier.
* Fully-descriptive TypeIdentifiers are directly registered.
* Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is
* indirectly registered as well.
*/
void register_AdvancedConfiguration_type_identifier();


#endif // DOXYGEN_SHOULD_SKIP_THIS_PUBLIC

#endif // _FAST_DDS_GENERATED_ADVANCEDCONFIGURATION_TYPE_OBJECT_SUPPORT_HPP_
Loading

0 comments on commit 7b4c6fb

Please sign in to comment.