#include #include // ITA includes #include #include #include // Vista includes #include #include #include #include #include #include // STL #include #include CITANetAudioStreamingServer::CITANetAudioStreamingServer() : m_pInputStream( NULL ) , m_iUpdateStrategy( AUTO ) , m_pSocket( NULL ) { m_pNetAudioServer = new CITANetAudioServer(); // TODO: Init members } bool CITANetAudioStreamingServer::Start(const std::string& sAddress, int iPort) { // TODO: vorrückgabe noch anfangen zu senden (Samples) if (m_pNetAudioServer->Start(sAddress, iPort)) { m_pSocket = m_pNetAudioServer->GetSocket(); // TODO: Init neu mit Netmessage long nIncomingBytes = m_pSocket->WaitForIncomingData(0); m_iClientRingBufferFreeSamples = m_iClientRingBufferFreeSamples; int iMessageID = 1; m_pSocket->SendRaw(&iMessageID, sizeof(int)); Run(); return true; return true; } return false; } bool CITANetAudioStreamingServer::IsClientConnected() const { return m_pNetAudioServer->IsConnected(); } std::string CITANetAudioStreamingServer::GetNetworkAddress() const { return m_pNetAudioServer->GetServerAddress(); } int CITANetAudioStreamingServer::GetNetworkPort() const { return m_pNetAudioServer->GetNetworkPort(); } void CITANetAudioStreamingServer::Stop() { m_pNetAudioServer->Disconnect(); } void CITANetAudioStreamingServer::SetInputStream( ITADatasource* pInStream ) { m_pInputStream = pInStream; } int CITANetAudioStreamingServer::GetNetStreamBlocklength() const { return m_sfTempTransmitBuffer.GetLength(); } int CITANetAudioStreamingServer::GetNetStreamNumberOfChannels() const { return m_sfTempTransmitBuffer.channels(); } void CITANetAudioStreamingServer::SetAutomaticUpdateRate() { m_iUpdateStrategy = AUTO; } ITADatasource* CITANetAudioStreamingServer::GetInputStream() const { return m_pInputStream; } int CITANetAudioStreamingServer::Transmit(const ITASampleFrame& sfNewSamples, int iNumSamples) { return 0; }