Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[core] Adapted c-api of monitoring in the way to remain c-return value compliant #1862

Merged
merged 2 commits into from
Dec 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions ecal/core/src/cimpl/ecal_monitoring_cimpl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,23 +32,23 @@ extern "C"
{
ECALC_API int eCAL_Monitoring_SetExclFilter(const char* filter_)
{
return(eCAL::Monitoring::SetExclFilter(std::string(filter_)));
return(static_cast<int>(!eCAL::Monitoring::SetExclFilter(std::string(filter_))));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

warning: no header providing "eCAL::Monitoring::SetExclFilter" is directly included [misc-include-cleaner]

ecal/core/src/cimpl/ecal_monitoring_cimpl.cpp:27:

- #include "ecal_common_cimpl.h"
+ #include "ecal/ecal_monitoring.h"
+ #include "ecal_common_cimpl.h"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

warning: no header providing "std::string" is directly included [misc-include-cleaner]

ecal/core/src/cimpl/ecal_monitoring_cimpl.cpp:26:

+ #include <string>

}

ECALC_API int eCAL_Monitoring_SetInclFilter(const char* filter_)
{
return(eCAL::Monitoring::SetInclFilter(std::string(filter_)));
return(static_cast<int>(!eCAL::Monitoring::SetInclFilter(std::string(filter_))));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

warning: no header providing "eCAL::Monitoring::SetInclFilter" is directly included [misc-include-cleaner]

    return(static_cast<int>(!eCAL::Monitoring::SetInclFilter(std::string(filter_))));
                                               ^

}

ECALC_API int eCAL_Monitoring_SetFilterState(int state_)
{
return(eCAL::Monitoring::SetFilterState(state_ != 0));
return(static_cast<int>(!eCAL::Monitoring::SetFilterState(state_ != 0)));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

warning: no header providing "eCAL::Monitoring::SetFilterState" is directly included [misc-include-cleaner]

    return(static_cast<int>(!eCAL::Monitoring::SetFilterState(state_ != 0)));
                                               ^

}

ECALC_API int eCAL_Monitoring_GetMonitoring(void* buf_, int buf_len_)
{
std::string buf;
if (eCAL::Monitoring::GetMonitoring(buf) != 0)
if (eCAL::Monitoring::GetMonitoring(buf))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

warning: no header providing "eCAL::Monitoring::GetMonitoring" is directly included [misc-include-cleaner]

    if (eCAL::Monitoring::GetMonitoring(buf))
                          ^

{
return(CopyBuffer(buf_, buf_len_, buf));
}
Expand Down
57 changes: 0 additions & 57 deletions lang/python/core/src/ecal_clang.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -733,63 +733,6 @@ int mon_finalize()
return(ecal_finalize());
}

/****************************************/
/* mon_set_excl_filter */
/****************************************/
int mon_set_excl_filter(const char* filter_)
{
return(eCAL::Monitoring::SetExclFilter(filter_));
}

/****************************************/
/* mon_set_incl_filter */
/****************************************/
int mon_set_incl_filter(const char* filter_)
{
return(eCAL::Monitoring::SetInclFilter(filter_));
}

/****************************************/
/* mon_set_filter_state */
/****************************************/
int mon_set_filter_state(const bool state_)
{
return(eCAL::Monitoring::SetFilterState(state_));
}

/****************************************/
/* mon_get_monitoring */
/****************************************/
int mon_get_monitoring(const char** mon_buf_, int* mon_buf_len_)
{
std::string mon_s;
const int size = eCAL::Monitoring::GetMonitoring(mon_s);
if(size > 0)
{
// this has to be freed by caller (ecal_free_mem)
char* cbuf = str_malloc(mon_s);
if(cbuf == nullptr) return(0);

if (mon_buf_ != nullptr) {
*mon_buf_ = cbuf;
if (mon_buf_len_ != nullptr) *mon_buf_len_ = static_cast<int>(mon_s.size());
}
else
{
// free allocated memory:
ecal_free_mem(cbuf);
if (mon_buf_len_ != nullptr) *mon_buf_len_ = 0;
// operation could't be completed successfully
return(0);
}
return(static_cast<int>(mon_s.size()));
}
else
{
return(0);
}
}

/****************************************/
/* mon_get_logging */
/****************************************/
Expand Down
54 changes: 0 additions & 54 deletions lang/python/core/src/ecal_clang.h
Original file line number Diff line number Diff line change
Expand Up @@ -521,60 +521,6 @@ int mon_initialize();
**/
int mon_finalize();

/**
* @brief Set topics filter blacklist regular expression.
*
* @param filter_ Topic filter as regular expression.
*
* @return Zero if succeeded.
**/
int mon_set_excl_filter(const char* filter_);

/**
* @brief Set topics filter whitelist regular expression.
*
* @param filter_ Topic filter as regular expression.
*
* @return Zero if succeeded.
**/
int mon_set_incl_filter(const char* filter_);

/**
* @brief Switch topics filter using regular expression on/off.
*
* @param state_ Filter on / off state.
*
* @return Zero if succeeded.
**/
int mon_set_filter_state(bool state_);

/**
* @brief Get monitoring protobuf string.
*
* @param [out] mon_buf_ Pointer to store the monitoring information.
* @param [out] mon_buf_len_ Length of allocated buffer,
* eCAL is allocating the buffer for you, use ecal_free_mem to free the buffer finally.
*
* @return Monitoring buffer length or zero if failed.
**/
/**
* @code
* // let eCAL allocate memory for the monitoring buffer and return the pointer to 'buf'
* const char* mon_buf_ = NULL;
* int mon_buf_len_ = 0;
* mon_get_monitoring(subscriber_handle, &mon_buf_, &mon_buf_len_);
* if(mon_buf_len_ > 0)
* {
* ...
* // PROCESS THE BUFFER CONTENT HERE
* ...
* // finally free the allocated memory
* ecal_free_mem(((void*)rcv_buf););
* }
* @endcode
**/
int mon_get_monitoring(const char** mon_buf_, int* mon_buf_len_);

/**
* @brief Get logging string.
*
Expand Down
2 changes: 1 addition & 1 deletion lang/python/core/src/ecal_wrap.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -1055,7 +1055,7 @@ PyObject* mon_monitoring(PyObject* /*self*/, PyObject* /*args*/)
PyObject* retDict = PyDict_New();

eCAL::Monitoring::SMonitoring monitoring;
if (eCAL::Monitoring::GetMonitoring(monitoring) != 0)
if (eCAL::Monitoring::GetMonitoring(monitoring))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

warning: no header providing "eCAL::Monitoring::GetMonitoring" is directly included [misc-include-cleaner]

  if (eCAL::Monitoring::GetMonitoring(monitoring))
                        ^

{
PyObject* val;

Expand Down
Loading