Skip to content

Commit aec5cc5

Browse files
wip, pausing the migration
Signed-off-by: Andrei-Fabian-Pop <Andreifabian.Pop@analog.com>
1 parent da9885d commit aec5cc5

File tree

77 files changed

+658
-390
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+658
-390
lines changed

gr-util/src/griiodevicesource.cpp

Lines changed: 28 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,16 +25,23 @@
2525
#include "griiofloatchannelsrc.h"
2626
#include "grlog.h"
2727
#include "grtopblock.h"
28+
#include "iiocpp/iiocontext.h"
29+
30+
#include <iioutil/iiocpp/iioattribute.h>
31+
#include <iioutil/iiocpp/iiodevice.h>
32+
#include <iioutil/iiocpp/iioresult.h>
33+
#include <iioutil/iiocpp/iiochannel.h>
2834

2935
using namespace scopy::grutil;
3036
QString GRIIODeviceSource::findAttribute(QStringList possibleNames, iio_device *dev)
3137
{
32-
38+
IIOResult<const iio_attr *> res;
3339
const char *attr = nullptr;
3440
for(const QString &name : possibleNames) {
35-
attr = iio_device_find_attr(dev, name.toStdString().c_str());
36-
if(attr)
37-
break;
41+
res = IIODevice::find_attr(dev, name.toStdString().c_str());
42+
if(res.ok()) {
43+
attr = IIOAttribute::get_name(res.data());
44+
}
3845
}
3946
QString attributeName = QString(attr);
4047
return attributeName;
@@ -46,11 +53,14 @@ iio_context *GRIIODeviceSource::ctx() const { return m_ctx; }
4653

4754
QString GRIIOChannel::findAttribute(QStringList possibleNames, iio_channel *ch)
4855
{
56+
IIOResult<const iio_attr *> attrRes;
4957
const char *attr = nullptr;
5058
for(const QString &name : possibleNames) {
51-
attr = iio_channel_find_attr(ch, name.toStdString().c_str());
52-
if(attr)
59+
attrRes = IIOChannel::find_attr(ch, name.toStdString().c_str());
60+
if(attrRes.ok()) {
61+
attr = IIOAttribute::get_name(attrRes.data());
5362
break;
63+
}
5464
}
5565
QString attributeName = QString(attr);
5666
return attributeName;
@@ -65,7 +75,8 @@ GRIIODeviceSource::GRIIODeviceSource(iio_context *ctx, QString deviceName, QStri
6575
, m_buffersize(buffersize)
6676
{
6777

68-
m_iioDev = iio_context_find_device(m_ctx, m_deviceName.toStdString().c_str());
78+
m_iioDev = IIOContext::find_device(m_ctx, m_deviceName.toStdString().c_str())
79+
.expect(QString("Expected device %1").arg(m_deviceName).toStdString().c_str());
6980
m_sampleRateAttribute = findAttribute(
7081
{
7182
"sample_rate",
@@ -79,8 +90,9 @@ GRIIODeviceSource::GRIIODeviceSource(iio_context *ctx, QString deviceName, QStri
7990
void GRIIODeviceSource::addChannelAtIndex(iio_device *iio_dev, QString channelName)
8091
{
8192
std::string channel_name = channelName.toStdString();
82-
iio_channel *iio_ch = iio_device_find_channel(iio_dev, channel_name.c_str(), false);
83-
int idx = iio_channel_get_index(iio_ch);
93+
iio_channel *iio_ch = IIODevice::find_channel(iio_dev, channel_name.c_str(), false)
94+
.expect(QString("Expected channel %1").arg(channelName).toStdString().c_str());
95+
int idx = IIOChannel::get_index(iio_ch);
8496

8597
while(idx < m_channelNames.size() && m_channelNames[idx] != "" &&
8698
QString::fromStdString(m_channelNames[idx]) != channelName) {
@@ -92,7 +104,7 @@ void GRIIODeviceSource::addChannelAtIndex(iio_device *iio_dev, QString channelNa
92104
void GRIIODeviceSource::computeChannelNames()
93105
{
94106

95-
int max_channels = iio_device_get_channels_count(m_iioDev);
107+
int max_channels = IIODevice::get_channels_count(m_iioDev);
96108

97109
for(int i = 0; i < max_channels; i++) {
98110
m_channelNames.push_back(std::string());
@@ -146,7 +158,12 @@ double GRIIODeviceSource::readSampleRate()
146158
if(!sampleRateAvailable())
147159
return -1;
148160

149-
iio_device_attr_read(m_iioDev, m_sampleRateAttribute.toStdString().c_str(), buffer, 20);
161+
IIOResult<const iio_attr *> res = IIODevice::find_attr(m_iioDev, m_sampleRateAttribute.toStdString().c_str());
162+
if(!res.ok()) {
163+
return -1;
164+
}
165+
const iio_attr *attr = res.data();
166+
ssize_t ret = IIOAttribute::read_raw(attr, buffer, 20);
150167
QString str(buffer);
151168
sr = str.toDouble(&ok);
152169
if(ok) {

gr-util/src/griiofloatchannelsrc.cpp

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,18 @@
2727
#include "grlog.h"
2828
#include "grtopblock.h"
2929

30+
#include <iioutil/iiocpp/iioattribute.h>
31+
#include <iioutil/iiocpp/iiodevice.h>
32+
#include <iioutil/iiocpp/iioresult.h>
33+
#include <iioutil/iiocpp/iiochannel.h>
34+
3035
using namespace scopy::grutil;
3136
GRIIOFloatChannelSrc::GRIIOFloatChannelSrc(GRIIODeviceSource *dev, QString channelName, QObject *parent)
3237
: GRIIOChannel(channelName, dev, parent)
3338
{
34-
m_iioCh = iio_device_find_channel(dev->iioDev(), channelName.toStdString().c_str(), false);
35-
fmt = iio_channel_get_data_format(m_iioCh);
39+
m_iioCh = IIODevice::find_channel(dev->iioDev(), channelName.toStdString().c_str(), false)
40+
.expect(QString("Expected channel %1").arg(channelName).toLatin1().data());
41+
fmt = IIOChannel::get_data_format(m_iioCh);
3642

3743
m_sampleRateAttribute = findAttribute(
3844
{
@@ -49,7 +55,7 @@ GRIIOFloatChannelSrc::GRIIOFloatChannelSrc(GRIIODeviceSource *dev, QString chann
4955
},
5056
m_iioCh);
5157

52-
iio_chan_type type = iio_channel_get_type(m_iioCh);
58+
iio_chan_type type = IIOChannel::get_type(m_iioCh);
5359
m_unit = IIOUnitsManager::iioChannelTypes().value(type, {"Adimensional", ".", 1});
5460
}
5561

@@ -101,7 +107,13 @@ double GRIIOFloatChannelSrc::readSampleRate()
101107
if(!samplerateAttributeAvailable())
102108
return -1;
103109

104-
iio_channel_attr_read(m_iioCh, m_sampleRateAttribute.toStdString().c_str(), buffer, 20);
110+
IIOResult<const iio_attr *> res = IIOChannel::find_attr(m_iioCh, m_sampleRateAttribute.toStdString().c_str());
111+
if(!res.ok()) {
112+
return -1;
113+
}
114+
const iio_attr *attr = res.data();
115+
ssize_t ret = IIOAttribute::read_raw(attr, buffer, 20);
116+
105117
QString str(buffer);
106118
sr = str.toDouble(&ok);
107119
if(ok) {
@@ -126,7 +138,13 @@ double GRIIOFloatChannelSrc::readScale()
126138
if(!scaleAttributeAvailable())
127139
return -1;
128140

129-
iio_channel_attr_read(m_iioCh, m_scaleAttribute.toStdString().c_str(), buffer, 20);
141+
IIOResult<const iio_attr *> res = IIOChannel::find_attr(m_iioCh, m_scaleAttribute.toStdString().c_str());
142+
if(!res.ok()) {
143+
return -1;
144+
}
145+
const iio_attr *attr = res.data();
146+
ssize_t ret = IIOAttribute::read_raw(attr, buffer, 20);
147+
130148
QString str(buffer);
131149
sc = str.toDouble(&ok);
132150
if(ok) {

gr-util/test/tst_grblocks.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -662,7 +662,7 @@ void TST_GRBlocks::test5()
662662
top.registerSignalPath(ch2);
663663
ch3 = new GRSignalPath("complex", &top);
664664

665-
iio_context *ctx = scopy::IIOContext::create_context(nullptr, "ip:192.168.2.1");
665+
iio_context *ctx = scopy::IIOContext::create_context(nullptr, "ip:192.168.2.1").expect("Expected valid ip");
666666
if(!ctx) {
667667
QSKIP("No context. Skipping");
668668
}

gui/CMakeLists.txt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,10 @@ target_include_directories(
128128
target_include_directories(
129129
${PROJECT_NAME}
130130
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/${SCOPY_MODULE}/
131-
${CMAKE_CURRENT_SOURCE_DIR}/include/${SCOPY_MODULE}/widgets scopy-common scopy-pluginbase
131+
${CMAKE_CURRENT_SOURCE_DIR}/include/${SCOPY_MODULE}/widgets
132+
scopy-common
133+
scopy-pluginbase
134+
scopy-iioutil
132135
)
133136

134137
target_include_directories(
@@ -145,6 +148,7 @@ target_link_libraries(
145148
${Boost_LIBRARIES}
146149
scopy-common
147150
scopy-pluginbase
151+
scopy-iioutil
148152
)
149153

150154
install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${SCOPY_DLL_INSTALL_PATH} COMPONENT ${SCOPY_PDK}

gui/src/deviceinfopage.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ void DeviceInfoPage::setupInfoPage()
7979
const char *name;
8080
const char *value;
8181
for(int i = 0; i < IIOContext::get_attrs_count(m_conn->context()); ++i) {
82-
IIOResult<const iio_attr *> res = IIOContext::get_attr(m_conn->context(), i, &name, &value);
82+
IIOResult<const iio_attr *> res = IIOContext::get_attr(m_conn->context(), i);
8383
if(!res.ok()) {
8484
qDebug() << "Error getting attribute at index" << i << "error code:" << res.error();
8585
continue;

iio-widgets/include/iio-widgets/datastrategy/multidatastrategy.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
#include <QWidget>
2525
#include <QList>
2626
#include <QSet>
27-
#include <iio.h>
27+
#include <iio/iio.h>
2828
#include "datastrategy/datastrategyinterface.h"
2929
#include "scopy-iio-widgets_export.h"
3030

iioutil/CMakeLists.txt

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,16 +45,20 @@ file(
4545
SRC_LIST
4646
src/*.cpp
4747
src/*.cc
48-
src/*/*.cpp
49-
src/*/*.cc
48+
src/iiocommand/*.cpp
49+
src/iiocommand/*.cc
50+
src/iiocpp/*.cpp
51+
src/iiocpp/*.cc
5052
)
5153
file(
5254
GLOB
5355
HEADER_LIST
5456
include/${SCOPY_MODULE}/*.h
5557
include/${SCOPY_MODULE}/*.hpp
56-
include/${SCOPY_MODULE}/*/*.h
57-
include/${SCOPY_MODULE}/*/*.hpp
58+
include/${SCOPY_MODULE}/iiocommand/*.h
59+
include/${SCOPY_MODULE}/iiocommand/*.hpp
60+
include/${SCOPY_MODULE}/iiocpp/*.h
61+
include/${SCOPY_MODULE}/iiocpp/*.hpp
5862
)
5963
file(GLOB UI_LIST ui/*.ui)
6064

@@ -88,11 +92,19 @@ generate_export_header(
8892
)
8993

9094
target_include_directories(
91-
${PROJECT_NAME} INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include/ ${IIO_INCLUDE_DIRS} ${LIBSERIALPORT_INCLUDE_DIR}
95+
${PROJECT_NAME} INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include/
96+
${CMAKE_CURRENT_SOURCE_DIR}/include/${SCOPY_MODULE}
97+
${IIO_INCLUDE_DIRS}
98+
${LIBSERIALPORT_INCLUDE_DIR}
9299
)
93100
target_include_directories(
94-
${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/${SCOPY_MODULE} ${IIO_INCLUDE_DIRS}
101+
${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/${SCOPY_MODULE}
102+
${CMAKE_CURRENT_SOURCE_DIR}/include/${SCOPY_MODULE}/iiocommand
103+
${CMAKE_CURRENT_SOURCE_DIR}/include/${SCOPY_MODULE}/iiocpp
104+
${CMAKE_CURRENT_SOURCE_DIR}/src
105+
${CMAKE_CURRENT_SOURCE_DIR}/src/iiocpp
95106
${LIBSERIALPORT_INCLUDE_DIR}
107+
${IIO_INCLUDE_DIRS}
96108
)
97109

98110
target_link_libraries(${PROJECT_NAME} PUBLIC Qt${QT_VERSION_MAJOR}::Widgets ${IIO_LIBRARIES} ${LIBSERIALPORT_LIBRARIES})

iioutil/include/iioutil/iiocommand/iiobuffercancel.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,9 @@
2323
#define IIOBUFFERCANCEL_H
2424

2525
#include "../command.h"
26+
#include "iiocpp/iiobuffer.h"
2627

27-
#include <iio.h>
28+
#include <iio/iio.h>
2829

2930
namespace scopy {
3031
class SCOPY_IIOUTIL_EXPORT IioBufferCancel : public Command
@@ -41,7 +42,7 @@ class SCOPY_IIOUTIL_EXPORT IioBufferCancel : public Command
4142
virtual void execute() override
4243
{
4344
Q_EMIT started(this);
44-
iio_buffer_cancel(m_buffer);
45+
IIOBuffer::cancel(m_buffer);
4546
m_cmdResult->errorCode = 0;
4647
Q_EMIT finished(this);
4748
}

iioutil/include/iioutil/iiocommand/iiobufferdestroy.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,9 @@
2323
#define IIOBUFFERDESTROY_H
2424

2525
#include "../command.h"
26+
#include "iiocpp/iiobuffer.h"
2627

27-
#include <iio.h>
28+
#include <iio/iio.h>
2829

2930
namespace scopy {
3031
class SCOPY_IIOUTIL_EXPORT IioBufferDestroy : public Command
@@ -42,7 +43,7 @@ class SCOPY_IIOUTIL_EXPORT IioBufferDestroy : public Command
4243
{
4344
Q_EMIT started(this);
4445
m_cmdResult->errorCode = 0;
45-
iio_buffer_destroy(m_buffer);
46+
IIOBuffer::destroy(m_buffer);
4647
if(!m_buffer) {
4748
m_cmdResult->errorCode = -errno;
4849
}

iioutil/include/iioutil/iiocommand/iiobufferpush.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
#include "../command.h"
2626

27-
#include <iio.h>
27+
#include <iio/iio.h>
2828

2929
namespace scopy {
3030
class SCOPY_IIOUTIL_EXPORT IioBufferPush : public Command
@@ -41,8 +41,9 @@ class SCOPY_IIOUTIL_EXPORT IioBufferPush : public Command
4141
virtual void execute() override
4242
{
4343
Q_EMIT started(this);
44-
ssize_t ret = iio_buffer_push(m_buffer);
45-
m_cmdResult->errorCode = ret;
44+
// FIXME: fix this later
45+
// ssize_t ret = iio_buffer_push(m_buffer);
46+
// m_cmdResult->errorCode = ret;
4647
Q_EMIT finished(this);
4748
}
4849

0 commit comments

Comments
 (0)