#ifndef TRANSMITTERINTERFACE_HPP
#define TRANSMITTERINTERFACE_HPP

#pragma once

#include <cstdint>

class TransmitterInterface
{
public:
	TransmitterInterface() {}
	virtual ~TransmitterInterface() {}

	virtual void reset() = 0;
	virtual void setBuffersize(uint32_t size) = 0;
	virtual void setSamplerate(float samplerate_hz) = 0;
	virtual void setCarrierFrequency(float frequency_hz) = 0;
	virtual float getCarrierFrequency() = 0;
	virtual void setSymbolRate(float symbolrate_bit_per_sec) = 0;
	virtual float getSymbolRate() = 0;
	virtual void setNumBitPerSymbol(uint32_t numBitPerSymbol) = 0;
	virtual void getData(float *pRF, uint32_t len) = 0;

};

#endif