mirror of
				https://github.com/f4exb/sdrangel.git
				synced 2025-10-30 20:40:20 -04:00 
			
		
		
		
	Renamed MIMOSampleSink to MIMOChannel and include in build
This commit is contained in:
		
							parent
							
								
									8b5e71a1cc
								
							
						
					
					
						commit
						99a5ffbcfb
					
				| @ -91,6 +91,7 @@ set(sdrbase_SOURCES | ||||
|     dsp/hbfilterchainconverter.cpp | ||||
|     dsp/hbfiltertraits.cpp | ||||
|     dsp/lowpass.cpp | ||||
|     dsp/mimochannel.cpp | ||||
|     dsp/nco.cpp | ||||
|     dsp/ncof.cpp | ||||
|     dsp/phaselock.cpp | ||||
| @ -224,6 +225,7 @@ set(sdrbase_HEADERS | ||||
|     dsp/kissfft.h | ||||
|     dsp/kissengine.h | ||||
|     dsp/lowpass.h | ||||
|     dsp/mimochannel.h | ||||
|     dsp/misc.h | ||||
|     dsp/movingaverage.h | ||||
|     dsp/nco.h | ||||
|  | ||||
							
								
								
									
										40
									
								
								sdrbase/dsp/mimochannel.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								sdrbase/dsp/mimochannel.cpp
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,40 @@ | ||||
| ///////////////////////////////////////////////////////////////////////////////////
 | ||||
| // Copyright (C) 2019 F4EXB                                                      //
 | ||||
| // written by Edouard Griffiths                                                  //
 | ||||
| //                                                                               //
 | ||||
| // This program is free software; you can redistribute it and/or modify          //
 | ||||
| // it under the terms of the GNU General Public License as published by          //
 | ||||
| // the Free Software Foundation as version 3 of the License, or                  //
 | ||||
| // (at your option) any later version.                                           //
 | ||||
| //                                                                               //
 | ||||
| // This program is distributed in the hope that it will be useful,               //
 | ||||
| // but WITHOUT ANY WARRANTY; without even the implied warranty of                //
 | ||||
| // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
 | ||||
| // GNU General Public License V3 for more details.                               //
 | ||||
| //                                                                               //
 | ||||
| // You should have received a copy of the GNU General Public License             //
 | ||||
| // along with this program. If not, see <http://www.gnu.org/licenses/>.          //
 | ||||
| ///////////////////////////////////////////////////////////////////////////////////
 | ||||
| 
 | ||||
| #include "mimochannel.h" | ||||
| 
 | ||||
| MIMOChannel::MIMOChannel() | ||||
| { | ||||
| 	connect(&m_inputMessageQueue, SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages())); | ||||
| } | ||||
| 
 | ||||
| MIMOChannel::~MIMOChannel() | ||||
| { | ||||
| } | ||||
| 
 | ||||
| void MIMOChannel::handleInputMessages() | ||||
| { | ||||
| 	Message* message; | ||||
| 
 | ||||
| 	while ((message = m_inputMessageQueue.pop()) != 0) | ||||
| 	{ | ||||
| 		if (handleMessage(*message)) { | ||||
| 			delete message; | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
							
								
								
									
										51
									
								
								sdrbase/dsp/mimochannel.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								sdrbase/dsp/mimochannel.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,51 @@ | ||||
| ///////////////////////////////////////////////////////////////////////////////////
 | ||||
| // Copyright (C) 2019 F4EXB                                                      //
 | ||||
| // written by Edouard Griffiths                                                  //
 | ||||
| //                                                                               //
 | ||||
| // This program is free software; you can redistribute it and/or modify          //
 | ||||
| // it under the terms of the GNU General Public License as published by          //
 | ||||
| // the Free Software Foundation as version 3 of the License, or                  //
 | ||||
| // (at your option) any later version.                                           //
 | ||||
| //                                                                               //
 | ||||
| // This program is distributed in the hope that it will be useful,               //
 | ||||
| // but WITHOUT ANY WARRANTY; without even the implied warranty of                //
 | ||||
| // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
 | ||||
| // GNU General Public License V3 for more details.                               //
 | ||||
| //                                                                               //
 | ||||
| // You should have received a copy of the GNU General Public License             //
 | ||||
| // along with this program. If not, see <http://www.gnu.org/licenses/>.          //
 | ||||
| ///////////////////////////////////////////////////////////////////////////////////
 | ||||
| 
 | ||||
| #ifndef SDRBASE_MIMOCHANNEL_H | ||||
| #define SDRBASE_MIMOCHANNEL_H | ||||
| 
 | ||||
| #include <QObject> | ||||
| 
 | ||||
| #include "export.h" | ||||
| #include "dsp/dsptypes.h" | ||||
| #include "util/messagequeue.h" | ||||
| #include "util/message.h" | ||||
| 
 | ||||
| 
 | ||||
| class SDRBASE_API MIMOChannel : public QObject { | ||||
| 	Q_OBJECT | ||||
| public: | ||||
| 	MIMOChannel(); | ||||
| 	virtual ~MIMOChannel(); | ||||
| 
 | ||||
| 	virtual void start() = 0; | ||||
| 	virtual void stop() = 0; | ||||
| 	virtual void feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, unsigned int sinkIndex) = 0; | ||||
|     virtual void pull(Sample& sample, unsigned int sourceIndex) = 0; | ||||
| 	virtual bool handleMessage(const Message& cmd) = 0; //!< Processing of a message. Returns true if message has actually been processed
 | ||||
| 
 | ||||
| 	MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } //!< Get the queue for asynchronous inbound communication
 | ||||
| 
 | ||||
| protected: | ||||
| 	MessageQueue m_inputMessageQueue; //!< Queue for asynchronous inbound communication
 | ||||
| 
 | ||||
| protected slots: | ||||
| 	void handleInputMessages(); | ||||
| }; | ||||
| 
 | ||||
| #endif // SDRBASE_MIMOCHANNEL_H
 | ||||
| @ -26,7 +26,7 @@ class DeviceSampleSink; | ||||
| class DeviceSampleMIMO; | ||||
| class BasebandSampleSink; | ||||
| class BasebandSampleSource; | ||||
| class MIMOSampleSink; | ||||
| class MIMOChannel; | ||||
| class ChannelAPI; | ||||
| class ChannelWebAPIAdapter; | ||||
| class DeviceWebAPIAdapter; | ||||
| @ -137,14 +137,14 @@ public: | ||||
| 
 | ||||
| 	virtual PluginInstanceGUI* createMIMOChannelGUI( | ||||
|             DeviceUISet *deviceUISet, | ||||
|             MIMOSampleSink *mimoChannel) const | ||||
|             MIMOChannel *mimoChannel) const | ||||
|     { | ||||
|         (void) deviceUISet; | ||||
|         (void) mimoChannel; | ||||
|         return nullptr; | ||||
|     } | ||||
| 
 | ||||
|     virtual MIMOSampleSink* createMIMOChannelBS(DeviceAPI *deviceAPI) const | ||||
|     virtual MIMOChannel* createMIMOChannelBS(DeviceAPI *deviceAPI) const | ||||
|     { | ||||
|         (void) deviceAPI; | ||||
|         return nullptr; | ||||
|  | ||||
| @ -263,7 +263,7 @@ void PluginManager::createMIMOChannelInstance(int channelPluginIndex, DeviceUISe | ||||
|     if (channelPluginIndex < m_mimoChannelRegistrations.size()) | ||||
|     { | ||||
|         PluginInterface *pluginInterface = m_mimoChannelRegistrations[channelPluginIndex].m_plugin; | ||||
|         MIMOSampleSink *mimoChannel = pluginInterface->createMIMOChannelBS(deviceAPI); | ||||
|         MIMOChannel *mimoChannel = pluginInterface->createMIMOChannelBS(deviceAPI); | ||||
|         pluginInterface->createMIMOChannelGUI(deviceUISet, mimoChannel); | ||||
|     } | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user