Skip to content

Commit

Permalink
Refs #21185: Change type and regenerate type: remove unused field and…
Browse files Browse the repository at this point in the history
… add index

Signed-off-by: elianalf <[email protected]>
  • Loading branch information
elianalf committed Jul 2, 2024
1 parent f86ad82 commit 5af74d0
Show file tree
Hide file tree
Showing 10 changed files with 205 additions and 71 deletions.
63 changes: 33 additions & 30 deletions examples/cpp/flow_control/FlowControl.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
* This file was generated by the tool fastddsgen.
*/

#ifndef FAST_DDS_GENERATED__FLOWCONTROL_HPP
#define FAST_DDS_GENERATED__FLOWCONTROL_HPP
#ifndef _FAST_DDS_GENERATED_FLOWCONTROL_HPP_
#define _FAST_DDS_GENERATED_FLOWCONTROL_HPP_

#include <array>
#include <cstdint>
Expand All @@ -38,16 +38,16 @@

#if defined(_WIN32)
#if defined(EPROSIMA_USER_DLL_EXPORT)
#if defined(FlowControl_SOURCE)
#define FlowControl_DllAPI __declspec( dllexport )
#if defined(FLOWCONTROL_SOURCE)
#define FLOWCONTROL_DllAPI __declspec( dllexport )
#else
#define FlowControl_DllAPI __declspec( dllimport )
#endif // FlowControl_SOURCE
#define FLOWCONTROL_DllAPI __declspec( dllimport )
#endif // FLOWCONTROL_SOURCE
#else
#define FlowControl_DllAPI
#define FLOWCONTROL_DllAPI
#endif // EPROSIMA_USER_DLL_EXPORT
#else
#define FlowControl_DllAPI
#define FLOWCONTROL_DllAPI
#endif // _WIN32

/*!
Expand Down Expand Up @@ -79,9 +79,9 @@ class FlowControl
eProsima_user_DllExport FlowControl(
const FlowControl& x)
{
m_message = x.m_message;
m_message = x.m_message;

m_wasFast = x.m_wasFast;
m_index = x.m_index;

}

Expand All @@ -93,7 +93,7 @@ class FlowControl
FlowControl&& x) noexcept
{
m_message = std::move(x.m_message);
m_wasFast = x.m_wasFast;
m_index = x.m_index;
}

/*!
Expand All @@ -104,9 +104,9 @@ class FlowControl
const FlowControl& x)
{

m_message = x.m_message;
m_message = x.m_message;

m_wasFast = x.m_wasFast;
m_index = x.m_index;

return *this;
}
Expand All @@ -120,7 +120,7 @@ class FlowControl
{

m_message = std::move(x.m_message);
m_wasFast = x.m_wasFast;
m_index = x.m_index;
return *this;
}

Expand All @@ -132,7 +132,7 @@ class FlowControl
const FlowControl& x) const
{
return (m_message == x.m_message &&
m_wasFast == x.m_wasFast);
m_index == x.m_index);
}

/*!
Expand Down Expand Up @@ -183,41 +183,44 @@ class FlowControl
return m_message;
}


/*!
* @brief This function sets a value in member wasFast
* @param _wasFast New value for member wasFast
* @brief This function sets a value in member index
* @param _index New value for member index
*/
eProsima_user_DllExport void wasFast(
char _wasFast)
eProsima_user_DllExport void index(
uint32_t _index)
{
m_wasFast = _wasFast;
m_index = _index;
}

/*!
* @brief This function returns the value of member wasFast
* @return Value of member wasFast
* @brief This function returns the value of member index
* @return Value of member index
*/
eProsima_user_DllExport char wasFast() const
eProsima_user_DllExport uint32_t index() const
{
return m_wasFast;
return m_index;
}

/*!
* @brief This function returns a reference to member wasFast
* @return Reference to member wasFast
* @brief This function returns a reference to member index
* @return Reference to member index
*/
eProsima_user_DllExport char& wasFast()
eProsima_user_DllExport uint32_t& index()
{
return m_wasFast;
return m_index;
}



private:

std::array<char, 600000> m_message{0};
char m_wasFast{0};
uint32_t m_index{0};

};

#endif // FAST_DDS_GENERATED__FLOWCONTROL_HPP
#endif // _FAST_DDS_GENERATED_FLOWCONTROL_HPP_


2 changes: 1 addition & 1 deletion examples/cpp/flow_control/FlowControl.idl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
struct FlowControl
{
char message[600000];
char wasFast;
unsigned long index;
};
8 changes: 4 additions & 4 deletions examples/cpp/flow_control/FlowControlCdrAux.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@
* This file was generated by the tool fastddsgen.
*/

#ifndef FAST_DDS_GENERATED__FLOWCONTROLCDRAUX_HPP
#define FAST_DDS_GENERATED__FLOWCONTROLCDRAUX_HPP
#ifndef _FAST_DDS_GENERATED_FLOWCONTROLCDRAUX_HPP_
#define _FAST_DDS_GENERATED_FLOWCONTROLCDRAUX_HPP_

#include "FlowControl.hpp"

constexpr uint32_t FlowControl_max_cdr_typesize {600005UL};
constexpr uint32_t FlowControl_max_cdr_typesize {600008UL};
constexpr uint32_t FlowControl_max_key_cdr_typesize {0UL};


Expand All @@ -42,5 +42,5 @@ eProsima_user_DllExport void serialize_key(
} // namespace fastcdr
} // namespace eprosima

#endif // FAST_DDS_GENERATED__FLOWCONTROLCDRAUX_HPP
#endif // _FAST_DDS_GENERATED_FLOWCONTROLCDRAUX_HPP_

12 changes: 6 additions & 6 deletions examples/cpp/flow_control/FlowControlCdrAux.ipp
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
* This file was generated by the tool fastddsgen.
*/

#ifndef _FAST_DDS_GENERATED_FlowControlCDRAUX_IPP_
#define _FAST_DDS_GENERATED_FlowControlCDRAUX_IPP_
#ifndef _FAST_DDS_GENERATED_FLOWCONTROLCDRAUX_IPP_
#define _FAST_DDS_GENERATED_FLOWCONTROLCDRAUX_IPP_

#include "FlowControlCdrAux.hpp"

Expand Down Expand Up @@ -54,7 +54,7 @@ eProsima_user_DllExport size_t calculate_serialized_size(
data.message(), current_alignment);

calculated_size += calculator.calculate_member_serialized_size(eprosima::fastcdr::MemberId(1),
data.wasFast(), current_alignment);
data.index(), current_alignment);


calculated_size += calculator.end_calculate_type_serialized_size(previous_encoding, current_alignment);
Expand All @@ -75,7 +75,7 @@ eProsima_user_DllExport void serialize(

scdr
<< eprosima::fastcdr::MemberId(0) << data.message()
<< eprosima::fastcdr::MemberId(1) << data.wasFast()
<< eprosima::fastcdr::MemberId(1) << data.index()
;
scdr.end_serialize_type(current_state);
}
Expand All @@ -98,7 +98,7 @@ eProsima_user_DllExport void deserialize(
break;

case 1:
dcdr >> data.wasFast();
dcdr >> data.index();
break;

default:
Expand All @@ -122,5 +122,5 @@ void serialize_key(
} // namespace fastcdr
} // namespace eprosima

#endif // _FAST_DDS_GENERATED_FlowControlCDRAUX_IPP_
#endif // _FAST_DDS_GENERATED_FLOWCONTROLCDRAUX_IPP_

2 changes: 1 addition & 1 deletion examples/cpp/flow_control/FlowControlPubSubTypes.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
* This file was generated by the tool fastddsgen.
*/

#include "FlowControlPubSubTypes.hpp"
#include "FlowControlPubSubTypes.h"

#include <fastdds/dds/log/Log.hpp>
#include <fastdds/rtps/common/CdrSerialization.hpp>
Expand Down
133 changes: 133 additions & 0 deletions examples/cpp/flow_control/FlowControlPubSubTypes.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
// 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 FlowControlPubSubTypes.h
* This header file contains the declaration of the serialization functions.
*
* This file was generated by the tool fastddsgen.
*/


#ifndef _FAST_DDS_GENERATED_FLOWCONTROL_PUBSUBTYPES_H_
#define _FAST_DDS_GENERATED_FLOWCONTROL_PUBSUBTYPES_H_

#include <fastdds/dds/core/policy/QosPolicies.hpp>
#include <fastdds/dds/topic/TopicDataType.hpp>
#include <fastdds/rtps/common/InstanceHandle.h>
#include <fastdds/rtps/common/SerializedPayload.h>
#include <fastdds/utils/md5.h>

#include "FlowControl.hpp"


#if !defined(GEN_API_VER) || (GEN_API_VER != 2)
#error \
Generated FlowControl is not compatible with current installed Fast DDS. Please, regenerate it with fastddsgen.
#endif // GEN_API_VER


/*!
* @brief This class represents the TopicDataType of the type FlowControl defined by the user in the IDL file.
* @ingroup FlowControl
*/
class FlowControlPubSubType : public eprosima::fastdds::dds::TopicDataType
{
public:

typedef FlowControl type;

eProsima_user_DllExport FlowControlPubSubType();

eProsima_user_DllExport ~FlowControlPubSubType() override;

eProsima_user_DllExport bool serialize(
const void* const data,
eprosima::fastdds::rtps::SerializedPayload_t* payload) override
{
return serialize(data, payload, eprosima::fastdds::dds::DEFAULT_DATA_REPRESENTATION);
}

eProsima_user_DllExport bool serialize(
const void* const data,
eprosima::fastdds::rtps::SerializedPayload_t* payload,
eprosima::fastdds::dds::DataRepresentationId_t data_representation) override;

eProsima_user_DllExport bool deserialize(
eprosima::fastdds::rtps::SerializedPayload_t* payload,
void* data) override;

eProsima_user_DllExport std::function<uint32_t()> getSerializedSizeProvider(
const void* const data) override
{
return getSerializedSizeProvider(data, eprosima::fastdds::dds::DEFAULT_DATA_REPRESENTATION);
}

eProsima_user_DllExport std::function<uint32_t()> getSerializedSizeProvider(
const void* const data,
eprosima::fastdds::dds::DataRepresentationId_t data_representation) override;

eProsima_user_DllExport bool getKey(
const void* const data,
eprosima::fastdds::rtps::InstanceHandle_t* ihandle,
bool force_md5 = false) override;

eProsima_user_DllExport void* createData() override;

eProsima_user_DllExport void deleteData(
void* data) override;

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

#ifdef TOPIC_DATA_TYPE_API_HAS_IS_BOUNDED
eProsima_user_DllExport inline bool is_bounded() const override
{
return true;
}

#endif // TOPIC_DATA_TYPE_API_HAS_IS_BOUNDED

#ifdef TOPIC_DATA_TYPE_API_HAS_IS_PLAIN
eProsima_user_DllExport inline bool is_plain() const override
{
return false;
}

eProsima_user_DllExport inline bool is_plain(
eprosima::fastdds::dds::DataRepresentationId_t data_representation) const override
{
static_cast<void>(data_representation);
return false;
}

#endif // TOPIC_DATA_TYPE_API_HAS_IS_PLAIN

#ifdef TOPIC_DATA_TYPE_API_HAS_CONSTRUCT_SAMPLE
eProsima_user_DllExport inline bool construct_sample(
void* memory) const override
{
static_cast<void>(memory);
return false;
}

#endif // TOPIC_DATA_TYPE_API_HAS_CONSTRUCT_SAMPLE

MD5 m_md5;
unsigned char* m_keyBuffer;

};

#endif // _FAST_DDS_GENERATED_FLOWCONTROL_PUBSUBTYPES_H_

Loading

0 comments on commit 5af74d0

Please sign in to comment.