Skip to content
Snippets Groups Projects
Select Git revision
  • 04c851a7d5ca8fb7754725ea802d4b54333360c4
  • main default protected
  • gitkeep
  • dev
  • ipynb
  • 81-add-id-to-figure-file-metadata
  • v0.3.2
  • v0.3.1
  • v0.3.0
  • v0.2.3
  • test_tag
  • v0.2.2
  • v.0.2.1
  • v0.2.1
  • v0.1.2
  • v0.1.1
  • v0.1.0
17 results

setup.cfg

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    ITANetAudioClient.h 1.57 KiB
    /*
     * ----------------------------------------------------------------
     *
     *		ITA core libs
     *		(c) Copyright Institute of Technical Acoustics (ITA)
     *		RWTH Aachen University, Germany, 2015-2016
     *
     * ----------------------------------------------------------------
     *				    ____  __________  _______
     *				   //  / //__   ___/ //  _   |
     *				  //  /    //  /    //  /_|  |
     *				 //  /    //  /    //  ___   |
     *				//__/    //__/    //__/   |__|
     *
     * ----------------------------------------------------------------
     *
     */
    
    #ifndef INCLUDE_WATCHER_ITA_NET_AUDIO_CONNECTION
    #define INCLUDE_WATCHER_ITA_NET_AUDIO_CONNECTION
    
    #include <ITADataSourcesDefinitions.h>
    
    #include <ITADataSource.h>
    #include <ITASampleFrame.h>
    
    #include <VistaInterProcComm/Concurrency/VistaThreadLoop.h>
    
    #include <string>
    #include <vector>
    
    class CITANetAudioMessage;
    class CITANetAudioProtocol;
    class CITANetAudioStream;
    
    class VistaConnectionIP;
    
    class CITANetAudioClient : public VistaThreadLoop
    {
    public:
    
    	//! Create an network audio client that feeds into a network audio stream
    	/**
    	  * \param pParent ITADataSource-compatible audio stream
    	  */
    	CITANetAudioClient( CITANetAudioStream* pParent );
    	~CITANetAudioClient();
    
    	bool Connect( const std::string& sAddress, int iPort );
    	void Disconnect();
    	bool GetIsConnected() const;
    
    	bool LoopBody();
    
    private:
    	CITANetAudioStream* m_pParent;
    
    	VistaConnectionIP* m_pConnection;
    	CITANetAudioProtocol* m_pProtocol;
    	CITANetAudioMessage* m_pMessage;
    
    	ITASampleFrame m_sfReceivingBuffer;
    	bool m_bStopIndicated;
    };
    
    #endif // INCLUDE_WATCHER_ITA_NET_AUDIO_CONNECTION