2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								///////////////////////////////////////////////////////////////////////////////////
  
						 
					
						
							
								
									
										
										
										
											2023-11-19 06:43:20 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Copyright (C) 2012 maintech GmbH, Otto-Hahn-Str. 15, 97204 Hoechberg, Germany //
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// written by Christian Daniel                                                   //
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Copyright (C) 2015-2022 Edouard Griffiths, F4EXB <f4exb06@gmail.com>          //
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Copyright (C) 2019 Davide Gerhard <rainbow@irh.it>                            //
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Copyright (C) 2021-2023 Jon Beniston, M7RCE <jon@beniston.com>                //
  
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								//                                                                               //
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// 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_MAINCORE_H_ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define SDRBASE_MAINCORE_H_ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <vector> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-16 08:35:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QMap> 
  
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <QTimer> 
  
						 
					
						
							
								
									
										
										
										
											2022-03-15 22:21:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QElapsedTimer> 
  
						 
					
						
							
								
									
										
										
										
											2021-01-13 23:03:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QDateTime> 
  
						 
					
						
							
								
									
										
										
										
											2022-03-12 05:45:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QObject> 
  
						 
					
						
							
								
									
										
										
										
											2022-12-20 21:06:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QGeoPositionInfo> 
  
						 
					
						
							
								
									
										
										
										
											2023-01-02 15:30:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QGeoPositionInfoSource> 
  
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  "export.h" 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  "settings/mainsettings.h" 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  "util/message.h" 
  
						 
					
						
							
								
									
										
										
										
											2022-02-28 23:32:23 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "pipes/messagepipes.h" 
  
						 
					
						
							
								
									
										
										
										
											2022-02-21 03:06:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "pipes/datapipes.h" 
  
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "channel/channelapi.h" 
  
						 
					
						
							
								
									
										
										
										
											2024-02-16 16:31:12 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "availablechannelorfeature.h" 
  
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  DeviceSet ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  FeatureSet ;  
						 
					
						
							
								
									
										
										
										
											2020-10-13 08:15:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Feature ;  
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								class  PluginManager ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  MessageQueue ;  
						 
					
						
							
								
									
										
										
										
											2022-12-20 21:06:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  QGeoPositionInfoSource ;  
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  qtwebapp  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  LoggerWithFile ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-11-29 09:26:32 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  SWGSDRangel  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SWGChannelReport ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-13 13:04:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SWGChannelSettings ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SWGMapItem ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SWGTargetAzimuthElevation ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SWGStarTrackerTarget ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SWGStarTrackerDisplaySettings ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SWGStarTrackerDisplayLoSSettings ; 
							 
						 
					
						
							
								
									
										
										
										
											2024-02-14 13:20:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SWGSkyMapTarget ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-29 09:26:32 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-12 05:45:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  SDRBASE_API  MainCore  :  public  QObject  
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
									
										
										
										
											2022-03-12 05:45:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Q_OBJECT 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								public :  
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									class  SDRBASE_API  MsgDVSerial  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-10 20:08:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  getActive ( )  const  {  return  m_active ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgDVSerial *  create ( bool  active ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgDVSerial ( active ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  m_active ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgDVSerial ( bool  active )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_active ( active ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgLoadPreset  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Preset  * getPreset ( )  const  {  return  m_preset ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceSetIndex ( )  const  {  return  m_deviceSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgLoadPreset *  create ( const  Preset  * preset ,  int  deviceSetIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgLoadPreset ( preset ,  deviceSetIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Preset  * m_preset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgLoadPreset ( const  Preset  * preset ,  int  deviceSetIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_preset ( preset ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceSetIndex ( deviceSetIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgSavePreset  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Preset  * getPreset ( )  const  {  return  m_preset ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceSetIndex ( )  const  {  return  m_deviceSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  isNewPreset ( )  const  {  return  m_newPreset ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgSavePreset *  create ( Preset  * preset ,  int  deviceSetIndex ,  bool  newPreset ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgSavePreset ( preset ,  deviceSetIndex ,  newPreset ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Preset  * m_preset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  m_newPreset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgSavePreset ( Preset  * preset ,  int  deviceSetIndex ,  bool  newPreset )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_preset ( preset ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceSetIndex ( deviceSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_newPreset ( newPreset ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgDeletePreset  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Preset  * getPreset ( )  const  {  return  m_preset ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgDeletePreset *  create ( const  Preset  * preset ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgDeletePreset ( preset ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Preset  * m_preset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgDeletePreset ( const  Preset  * preset )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_preset ( preset ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-05-08 19:33:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgLoadConfiguration  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Configuration  * getConfiguration ( )  const  {  return  m_configuration ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgLoadConfiguration *  create ( const  Configuration  * configuration ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgLoadConfiguration ( configuration ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Configuration  * m_configuration ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgLoadConfiguration ( const  Configuration  * configuration )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_configuration ( configuration ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgSaveConfiguration  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Configuration  * getConfiguration ( )  const  {  return  m_configuration ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  isNewConfiguration ( )  const  {  return  m_newConfiguration ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgSaveConfiguration *  create ( Configuration  * configuration ,  bool  newConfiguration ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgSaveConfiguration ( configuration ,  newConfiguration ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Configuration  * m_configuration ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  m_newConfiguration ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgSaveConfiguration ( Configuration  * configuration ,  bool  newConfiguration )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_configuration ( configuration ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_newConfiguration ( newConfiguration ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgDeleteConfiguration  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Configuration  * getConfiguration ( )  const  {  return  m_configuration ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgDeleteConfiguration *  create ( const  Configuration  * configuration ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgDeleteConfiguration ( configuration ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Configuration  * m_configuration ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgDeleteConfiguration ( const  Configuration  * configuration )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_configuration ( configuration ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-05-09 21:31:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgAddWorkspace  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgAddWorkspace *  create ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgAddWorkspace ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgAddWorkspace ( )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgDeleteEmptyWorkspaces  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgDeleteEmptyWorkspaces *  create ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgDeleteEmptyWorkspaces ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgDeleteEmptyWorkspaces ( )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgLoadFeatureSetPreset  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  FeatureSetPreset  * getPreset ( )  const  {  return  m_preset ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getFeatureSetIndex ( )  const  {  return  m_featureSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgLoadFeatureSetPreset *  create ( const  FeatureSetPreset  * preset ,  int  featureSetIndex )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgLoadFeatureSetPreset ( preset ,  featureSetIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  FeatureSetPreset  * m_preset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_featureSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgLoadFeatureSetPreset ( const  FeatureSetPreset  * preset ,  int  featureSetIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_preset ( preset ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_featureSetIndex ( featureSetIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgSaveFeatureSetPreset  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        FeatureSetPreset  * getPreset ( )  const  {  return  m_preset ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getFeatureSetIndex ( )  const  {  return  m_featureSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  isNewPreset ( )  const  {  return  m_newPreset ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgSaveFeatureSetPreset *  create ( FeatureSetPreset  * preset ,  int  featureSetIndex ,  bool  newPreset ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgSaveFeatureSetPreset ( preset ,  featureSetIndex ,  newPreset ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        FeatureSetPreset  * m_preset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_featureSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  m_newPreset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgSaveFeatureSetPreset ( FeatureSetPreset  * preset ,  int  featureSetIndex ,  bool  newPreset )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_preset ( preset ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_featureSetIndex ( featureSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_newPreset ( newPreset ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgDeleteFeatureSetPreset  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  FeatureSetPreset  * getPreset ( )  const  {  return  m_preset ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgDeleteFeatureSetPreset *  create ( const  FeatureSetPreset  * preset ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgDeleteFeatureSetPreset ( preset ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  FeatureSetPreset  * m_preset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgDeleteFeatureSetPreset ( const  FeatureSetPreset  * preset )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_preset ( preset ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgDeleteInstance  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgDeleteInstance *  create ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgDeleteInstance ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgDeleteInstance ( )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgAddDeviceSet  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDirection ( )  const  {  return  m_direction ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-08-21 13:14:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgAddDeviceSet *  create ( int  direction )  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            return  new  MsgAddDeviceSet ( direction ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_direction ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgAddDeviceSet ( int  direction )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_direction ( direction ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgRemoveLastDeviceSet  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2021-08-21 13:14:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgRemoveLastDeviceSet *  create ( )  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            return  new  MsgRemoveLastDeviceSet ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgRemoveLastDeviceSet ( )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgSetDevice  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceSetIndex ( )  const  {  return  m_deviceSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceIndex ( )  const  {  return  m_deviceIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceType ( )  const  {  return  m_deviceType ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgSetDevice *  create ( int  deviceSetIndex ,  int  deviceIndex ,  int  deviceType ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgSetDevice ( deviceSetIndex ,  deviceIndex ,  deviceType ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceType ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgSetDevice ( int  deviceSetIndex ,  int  deviceIndex ,  int  deviceType )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceSetIndex ( deviceSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceIndex ( deviceIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceType ( deviceType ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgAddChannel  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceSetIndex ( )  const  {  return  m_deviceSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getChannelRegistrationIndex ( )  const  {  return  m_channelRegistrationIndex ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2022-01-13 02:45:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  getDirection ( )  const  {  return  m_direction ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-13 02:45:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgAddChannel *  create ( int  deviceSetIndex ,  int  channelRegistrationIndex ,  int  direction ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
									
										
										
										
											2022-01-13 02:45:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            return  new  MsgAddChannel ( deviceSetIndex ,  channelRegistrationIndex ,  direction ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_channelRegistrationIndex ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-01-13 02:45:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  m_direction ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-13 02:45:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MsgAddChannel ( int  deviceSetIndex ,  int  channelRegistrationIndex ,  int  direction )  : 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceSetIndex ( deviceSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_channelRegistrationIndex ( channelRegistrationIndex ) , 
							 
						 
					
						
							
								
									
										
										
										
											2022-01-13 02:45:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            m_direction ( direction ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgDeleteChannel  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceSetIndex ( )  const  {  return  m_deviceSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getChannelIndex ( )  const  {  return  m_channelIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgDeleteChannel *  create ( int  deviceSetIndex ,  int  channelIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgDeleteChannel ( deviceSetIndex ,  channelIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_channelIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgDeleteChannel ( int  deviceSetIndex ,  int  channelIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceSetIndex ( deviceSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_channelIndex ( channelIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgApplySettings  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgApplySettings *  create ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgApplySettings ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgApplySettings ( )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgAddFeature  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getFeatureSetIndex ( )  const  {  return  m_featureSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getFeatureRegistrationIndex ( )  const  {  return  m_featureRegistrationIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgAddFeature *  create ( int  featureSetIndex ,  int  featureRegistrationIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgAddFeature ( featureSetIndex ,  featureRegistrationIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_featureSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_featureRegistrationIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgAddFeature ( int  featureSetIndex ,  int  featureRegistrationIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_featureSetIndex ( featureSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_featureRegistrationIndex ( featureRegistrationIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 13:19:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgDeleteFeature  :  public  Message  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getFeatureSetIndex ( )  const  {  return  m_featureSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getFeatureIndex ( )  const  {  return  m_featureIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgDeleteFeature *  create ( int  m_featureSetIndex ,  int  m_featureIndex )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgDeleteFeature ( m_featureSetIndex ,  m_featureIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_featureSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_featureIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgDeleteFeature ( int  m_featureSetIndex ,  int  m_featureIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_featureSetIndex ( m_featureSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_featureIndex ( m_featureIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-11-29 09:26:32 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgChannelReport  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  ChannelAPI  * getChannelAPI ( )  const  {  return  m_channelAPI ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGChannelReport  * getSWGReport ( )  const  {  return  m_swgReport ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgChannelReport *  create ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const  ChannelAPI  * channelAPI , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SWGSDRangel : : SWGChannelReport  * swgReport ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgChannelReport ( channelAPI ,  swgReport ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  ChannelAPI  * m_channelAPI ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGChannelReport  * m_swgReport ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgChannelReport ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const  ChannelAPI  * channelAPI , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SWGSDRangel : : SWGChannelReport  * swgReport 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_channelAPI ( channelAPI ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_swgReport ( swgReport ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-29 21:47:27 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgChannelDemodQuery  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgChannelDemodQuery *  create ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgChannelDemodQuery ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgChannelDemodQuery ( )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-12-20 01:53:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgChannelDemodReport  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  ChannelAPI  * getChannelAPI ( )  const  {  return  m_channelAPI ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getSampleRate ( )  const  {  return  m_sampleRate ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgChannelDemodReport *  create ( const  ChannelAPI  * channelAPI ,  int  sampleRate )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgChannelDemodReport ( channelAPI ,  sampleRate ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  ChannelAPI  * m_channelAPI ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_sampleRate ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgChannelDemodReport ( const  ChannelAPI  * channelAPI ,  int  sampleRate )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_channelAPI ( channelAPI ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_sampleRate ( sampleRate ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-12-13 13:04:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgChannelSettings  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  ChannelAPI  * getChannelAPI ( )  const  {  return  m_channelAPI ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  QList < QString > &  getChannelSettingsKeys ( )  const  {  return  m_channelSettingsKeys ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGChannelSettings  * getSWGSettings ( )  const  {  return  m_swgSettings ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  getForce ( )  const  {  return  m_force ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgChannelSettings *  create ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const  ChannelAPI  * channelAPI , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const  QList < QString > &  channelSettingsKey , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SWGSDRangel : : SWGChannelSettings  * swgSettings , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            bool  force ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgChannelSettings ( channelAPI ,  channelSettingsKey ,  swgSettings ,  force ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  ChannelAPI  * m_channelAPI ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < QString >  m_channelSettingsKeys ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGChannelSettings  * m_swgSettings ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  m_force ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgChannelSettings ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const  ChannelAPI  * channelAPI , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const  QList < QString > &  channelSettingsKeys , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SWGSDRangel : : SWGChannelSettings  * swgSettings , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            bool  force 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_channelAPI ( channelAPI ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_channelSettingsKeys ( channelSettingsKeys ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_swgSettings ( swgSettings ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_force ( force ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-05-13 22:24:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgMoveDeviceUIToWorkspace  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceSetIndex ( )  const  {  return  m_deviceSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getWorkspaceIndex ( )  const  {  return  m_workspaceIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgMoveDeviceUIToWorkspace *  create ( int  deviceSetIndex ,  int  workspceIndex )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgMoveDeviceUIToWorkspace ( deviceSetIndex ,  workspceIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_workspaceIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgMoveDeviceUIToWorkspace ( int  deviceSetIndex ,  int  workspceIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceSetIndex ( deviceSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_workspaceIndex ( workspceIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgMoveMainSpectrumUIToWorkspace  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceSetIndex ( )  const  {  return  m_deviceSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getWorkspaceIndex ( )  const  {  return  m_workspaceIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgMoveMainSpectrumUIToWorkspace *  create ( int  deviceSetIndex ,  int  workspceIndex )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgMoveMainSpectrumUIToWorkspace ( deviceSetIndex ,  workspceIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_workspaceIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgMoveMainSpectrumUIToWorkspace ( int  deviceSetIndex ,  int  workspceIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceSetIndex ( deviceSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_workspaceIndex ( workspceIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgMoveFeatureUIToWorkspace  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getFeatureIndex ( )  const  {  return  m_featureIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getWorkspaceIndex ( )  const  {  return  m_workspaceIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgMoveFeatureUIToWorkspace *  create ( int  featureIndex ,  int  workspceIndex )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgMoveFeatureUIToWorkspace ( featureIndex ,  workspceIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_featureIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_workspaceIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgMoveFeatureUIToWorkspace ( int  featureIndex ,  int  workspceIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_featureIndex ( featureIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_workspaceIndex ( workspceIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgMoveChannelUIToWorkspace  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getDeviceSetIndex ( )  const  {  return  m_deviceSetIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getChannelIndex ( )  const  {  return  m_channelIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  getWorkspaceIndex ( )  const  {  return  m_workspaceIndex ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  MsgMoveChannelUIToWorkspace *  create ( int  deviceSetIndex ,  int  channelIndex ,  int  workspceIndex )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgMoveChannelUIToWorkspace ( deviceSetIndex ,  channelIndex ,  workspceIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_deviceSetIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_channelIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_workspaceIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgMoveChannelUIToWorkspace ( int  deviceSetIndex ,  int  channelIndex ,  int  workspceIndex )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_deviceSetIndex ( deviceSetIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_channelIndex ( channelIndex ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_workspaceIndex ( workspceIndex ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // Message to Map feature to display an item on the map
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgMapItem  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 20:12:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * getPipeSource ( )  const  {  return  m_pipeSource ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGMapItem  * getSWGMapItem ( )  const  {  return  m_swgMapItem ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 20:12:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgMapItem *  create ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGMapItem  * swgMapItem ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgMapItem ( pipeSource ,  swgMapItem ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 20:12:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * m_pipeSource ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGMapItem  * m_swgMapItem ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 20:12:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MsgMapItem ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGMapItem  * swgMapItem )  : 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_pipeSource ( pipeSource ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_swgMapItem ( swgMapItem ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // Message to pass received packets between channels and features
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgPacket  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * getPipeSource ( )  const  {  return  m_pipeSource ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QByteArray  getPacket ( )  const  {  return  m_packet ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QDateTime  getDateTime ( )  const  {  return  m_dateTime ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgPacket *  create ( const  QObject  * pipeSource ,  QByteArray  packet ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgPacket ( pipeSource ,  packet ,  QDateTime : : currentDateTime ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgPacket *  create ( const  QObject  * pipeSource ,  QByteArray  packet ,  QDateTime  dateTime ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgPacket ( pipeSource ,  packet ,  dateTime ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * m_pipeSource ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QByteArray  m_packet ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QDateTime  m_dateTime ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MsgPacket ( const  QObject  * pipeSource ,  QByteArray  packet ,  QDateTime  dateTime )  : 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_pipeSource ( pipeSource ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_packet ( packet ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_dateTime ( dateTime ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // Message to pass target azimuth and elevation between channels & features
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgTargetAzimuthElevation  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-28 20:12:25 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * getPipeSource ( )  const  {  return  m_pipeSource ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGTargetAzimuthElevation  * getSWGTargetAzimuthElevation ( )  const  {  return  m_swgTargetAzimuthElevation ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-28 20:12:25 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgTargetAzimuthElevation *  create ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGTargetAzimuthElevation  * swgTargetAzimuthElevation ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgTargetAzimuthElevation ( pipeSource ,  swgTargetAzimuthElevation ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-28 20:12:25 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * m_pipeSource ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGTargetAzimuthElevation  * m_swgTargetAzimuthElevation ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-28 20:12:25 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MsgTargetAzimuthElevation ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGTargetAzimuthElevation  * swgTargetAzimuthElevation )  : 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_pipeSource ( pipeSource ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_swgTargetAzimuthElevation ( swgTargetAzimuthElevation ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // Messages between Star Tracker and Radio Astronomy plugins
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgStarTrackerTarget  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-27 08:01:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * getPipeSource ( )  const  {  return  m_pipeSource ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGStarTrackerTarget  * getSWGStarTrackerTarget ( )  const  {  return  m_swgStarTrackerTarget ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-27 08:01:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgStarTrackerTarget *  create ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGStarTrackerTarget  * swgStarTrackerTarget ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgStarTrackerTarget ( pipeSource ,  swgStarTrackerTarget ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-27 08:01:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * m_pipeSource ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGStarTrackerTarget  * m_swgStarTrackerTarget ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-27 08:01:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MsgStarTrackerTarget ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGStarTrackerTarget  * swgStarTrackerTarget )  : 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_pipeSource ( pipeSource ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_swgStarTrackerTarget ( swgStarTrackerTarget ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgStarTrackerDisplaySettings  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * getPipeSource ( )  const  {  return  m_pipeSource ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGStarTrackerDisplaySettings  * getSWGStarTrackerDisplaySettings ( )  const  {  return  m_swgStarTrackerDisplaySettings ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgStarTrackerDisplaySettings *  create ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGStarTrackerDisplaySettings  * swgStarTrackerDisplaySettings ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgStarTrackerDisplaySettings ( pipeSource ,  swgStarTrackerDisplaySettings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * m_pipeSource ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGStarTrackerDisplaySettings  * m_swgStarTrackerDisplaySettings ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MsgStarTrackerDisplaySettings ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGStarTrackerDisplaySettings  * swgStarTrackerDisplaySettings )  : 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_pipeSource ( pipeSource ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_swgStarTrackerDisplaySettings ( swgStarTrackerDisplaySettings ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  SDRBASE_API  MsgStarTrackerDisplayLoSSettings  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * getPipeSource ( )  const  {  return  m_pipeSource ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGStarTrackerDisplayLoSSettings  * getSWGStarTrackerDisplayLoSSettings ( )  const  {  return  m_swgStarTrackerDisplayLoSSettings ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgStarTrackerDisplayLoSSettings *  create ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGStarTrackerDisplayLoSSettings  * swgStarTrackerDisplayLoSSettings ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgStarTrackerDisplayLoSSettings ( pipeSource ,  swgStarTrackerDisplayLoSSettings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QObject  * m_pipeSource ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGStarTrackerDisplayLoSSettings  * m_swgStarTrackerDisplayLoSSettings ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-29 23:03:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MsgStarTrackerDisplayLoSSettings ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGStarTrackerDisplayLoSSettings  * swgStarTrackerDisplayLoSSettings )  : 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-12 11:07:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_pipeSource ( pipeSource ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_swgStarTrackerDisplayLoSSettings ( swgStarTrackerDisplayLoSSettings ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-02-14 13:20:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								     class  SDRBASE_API  MsgSkyMapTarget  :  public  Message  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MESSAGE_CLASS_DECLARATION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  QObject  * getPipeSource ( )  const  {  return  m_pipeSource ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGSkyMapTarget  * getSWGSkyMapTarget ( )  const  {  return  m_swgSkyMapTarget ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-02-14 13:20:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        static  MsgSkyMapTarget *  create ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGSkyMapTarget  * swgSkyMapTarget ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  new  MsgSkyMapTarget ( pipeSource ,  swgSkyMapTarget ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  QObject  * m_pipeSource ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SWGSDRangel : : SWGSkyMapTarget  * m_swgSkyMapTarget ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MsgSkyMapTarget ( const  QObject  * pipeSource ,  SWGSDRangel : : SWGSkyMapTarget  * swgSkyMapTarget )  : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Message ( ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_pipeSource ( pipeSource ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_swgSkyMapTarget ( swgSkyMapTarget ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-13 17:07:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									MainCore ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									~ MainCore ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									static  MainCore  * instance ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  QTimer &  getMasterTimer ( )  const  {  return  m_masterTimer ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-15 22:21:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qint64  getElapsedNsecs ( )  const  {  return  m_masterElapsedTimer . nsecsElapsed ( ) ;  }  //!< Elapsed nanoseconds since main core construction
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qint64  getStartMsecsSinceEpoch ( )  const  {  return  m_startMsecsSinceEpoch ;  }  //!< Epoch timestamp in millisecodns close to elapsed timer start
 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    const  MainSettings &  getSettings ( )  const  {  return  m_settings ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2023-08-24 15:51:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    MainSettings &  getMutableSettings ( )  {  return  m_settings ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    MessageQueue  * getMainMessageQueue ( )  {  return  m_mainMessageQueue ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2022-12-20 21:06:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    PluginManager  * getPluginManager ( )  const  {  return  m_pluginManager ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    std : : vector < DeviceSet * > &  getDeviceSets ( )  {  return  m_deviceSets ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    std : : vector < FeatureSet * > &  getFeatureeSets ( )  {  return  m_featureSets ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  setLoggingOptions ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-12 05:45:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    DeviceAPI  * getDevice ( unsigned  int  deviceSetIndex ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-14 22:08:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    ChannelAPI  * getChannel ( unsigned  int  deviceSetIndex ,  int  channelIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Feature  * getFeature ( unsigned  int  featureSetIndex ,  int  featureIndex ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-12 16:31:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bool  existsChannel ( const  ChannelAPI  * channel )  const  {  return  m_channelsMap . contains ( const_cast < ChannelAPI * > ( channel ) ) ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bool  existsFeature ( const  Feature  * feature )  const  {  return  m_featuresMap . contains ( const_cast < Feature * > ( feature ) ) ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 00:22:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // slave mode
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  appendFeatureSet ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-14 22:08:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  removeFeatureSet ( unsigned  int  index ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 00:22:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  removeLastFeatureSet ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 08:27:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  appendDeviceSet ( int  deviceType ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  removeLastDeviceSet ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-12 16:20:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  removeDeviceSet ( int  deviceSetIndex ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-16 08:35:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // slave mode - channels
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  addChannelInstance ( DeviceSet  * deviceSet ,  ChannelAPI  * channelAPI ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  removeChannelInstanceAt ( DeviceSet  * deviceSet ,  int  channelIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  removeChannelInstance ( ChannelAPI  * channelAPI ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  clearChannels ( DeviceSet  * deviceSet ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // slave mode - features
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  addFeatureInstance ( FeatureSet  * featureSet ,  Feature  * feature ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  removeFeatureInstanceAt ( FeatureSet  * featureSet ,  int  featureIndex ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  removeFeatureInstance ( Feature  * feature ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  clearFeatures ( FeatureSet  * featureSet ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-29 09:26:32 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // pipes
 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-02 23:57:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    MessagePipes &  getMessagePipes ( )  {  return  m_messagePipes ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-21 03:06:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    DataPipes &  getDataPipes ( )  {  return  m_dataPipes ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2022-12-20 21:06:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // Position
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  QGeoPositionInfo &  getPosition ( )  const ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-02-16 16:31:12 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // Lists of available channels and features. List should be ordered by indexes. Plugins should use AvailableChannelOrFeatureHandler to maintain this list
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    AvailableChannelOrFeatureList  getAvailableChannels ( const  QStringList &  uris ) ;  // Get list of available channels with given URIs or all if empty list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    AvailableChannelOrFeatureList  getAvailableFeatures ( const  QStringList &  uris ) ;  // Get list of available features with given URIs or all if empty list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    AvailableChannelOrFeatureList  getAvailableChannelsAndFeatures ( const  QStringList &  uris ,  const  QString &  kinds ) ;  // Get list of available channels and features with given URIs or all if empty list.
 
							 
						 
					
						
							
								
									
										
										
										
											2024-02-14 13:20:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-12-05 12:32:53 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // Ids
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QChar  getDeviceSetTypeId ( const  DeviceSet *  deviceSet ) ;  //!< Get Type Id (E.g. 'R', 'T' or 'M') for the given device set
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QString  getDeviceSetId ( const  DeviceSet *  deviceSet ) ;  //!< Get Id (E.g. "R2") for the given device set
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QString  getChannelId ( const  ChannelAPI *  channel ) ;  //!< Get Id (E.g. "R1:2") for the given channel
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    static  bool  getDeviceSetTypeFromId ( const  QString &  deviceSetId ,  QChar  & type ) ;  //!< "R1" -> 'R'
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    static  bool  getDeviceSetIndexFromId ( const  QString &  deviceSetId ,  unsigned  int  & deviceSetIndex ) ;  //!< "R1" -> 1
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    static  bool  getDeviceAndChannelIndexFromId ( const  QString &  channelId ,  unsigned  int  & deviceSetIndex ,  unsigned  int  & channelIndex ) ;  //!< "R3:4" -> 3, 4
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    static  bool  getFeatureIndexFromId ( const  QString &  featureId ,  unsigned  int  & featureSetIndex ,  unsigned  int  & featureIndex ) ;  //!< "F0:2" -> 0, 2
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QStringList  getDeviceSetIds ( bool  rx ,  bool  tx ,  bool  mimo ) ;  //!< Get list of all device set Ids. E.g: {"R0", "R1", "T1", "M2"}
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    std : : vector < ChannelAPI * >  getChannels ( const  QString &  uri ) ;  //!< Get all channels from any device set with the given URI
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QStringList  getChannelIds ( const  QString &  uri ) ;  //!< Get all Ids for channels from any device set with the given URI. E.g. "sdrangel.channel.xyzdemod" -> {"R2:1", "M0:0.1"}
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    friend  class  MainServer ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    friend  class  MainWindow ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-11 12:39:30 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    friend  class  WebAPIAdapter ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-04 16:13:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    friend  class  CommandsDialog ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-13 18:43:37 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    friend  class  DeviceSetPresetsDialog ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-19 07:03:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    friend  class  ConfigurationsDialog ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-12-20 21:06:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								public  slots :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  positionUpdated ( const  QGeoPositionInfo  & info ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2023-01-02 15:30:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  positionUpdateTimeout ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  positionError ( QGeoPositionInfoSource : : Error  positioningError ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2023-02-17 21:57:09 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef ANDROID 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  updateWakeLock ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2022-12-20 21:06:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-03-12 05:45:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								signals :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  deviceSetAdded ( int  index ,  DeviceAPI  * device ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  deviceChanged ( int  index ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-27 10:18:17 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  deviceStateChanged ( int  index ,  DeviceAPI  * device ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-12 05:45:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  deviceSetRemoved ( int  index ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  channelAdded ( int  deviceSetIndex ,  ChannelAPI  * channel ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  channelRemoved ( int  deviceSetIndex ,  ChannelAPI  * oldChannel ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  featureSetAdded ( int  index ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  featureSetRemoved ( int  index ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  featureAdded ( int  featureSetIndex ,  Feature  * feature ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  featureRemoved ( int  featureSetIndex ,  Feature  * oldFeature ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								private :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    MainSettings  m_settings ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qtwebapp : : LoggerWithFile  * m_logger ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    MessageQueue  * m_mainMessageQueue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  m_masterTabIndex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QTimer  m_masterTimer ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-15 22:21:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    QElapsedTimer  m_masterElapsedTimer ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qint64  m_startMsecsSinceEpoch ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    std : : vector < DeviceSet * >  m_deviceSets ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    std : : vector < FeatureSet * >  m_featureSets ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-16 08:35:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    QMap < DeviceSet * ,  int >  m_deviceSetsMap ;        //!< Device set instance to device set index map
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QMap < FeatureSet * ,  int >  m_featureSetsMap ;      //!< Feature set instance to feature set index map
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QMap < ChannelAPI * ,  DeviceSet * >  m_channelsMap ;  //!< Channel to device set map
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QMap < Feature * ,  FeatureSet * >  m_featuresMap ;    //!< Feature to feature set map
 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    PluginManager *  m_pluginManager ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-03-02 23:57:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    MessagePipes  m_messagePipes ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-21 03:06:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    DataPipes  m_dataPipes ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-12-20 21:06:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    QGeoPositionInfoSource  * m_positionSource ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QGeoPositionInfo  m_position ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-16 08:35:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-12-20 21:06:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  initPosition ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-16 08:35:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  debugMaps ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-09 08:52:30 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif  // SDRBASE_MAINCORE_H_