#pragma once

namespace NDTS
{
namespace RS2A
{
class PingPongTable 
{

public :
//	PingPongTable ();
	PingPongTable (int physicalElements, 
		int apertureSize, 
		int pitchMultiplier,
		bool doPingPong
		) ;

	virtual ~PingPongTable();

	int getAScansPerBScan();
	// The max A per B is the number of activeElements which is the A scans per B scan if the pitch multiplier were 1.
	int getMaximumAScansPerBScan();
	unsigned long getSequencePosition(unsigned long index);
	unsigned long getEffectivePosition(unsigned long index);

private:
	int aScansPerBScan;
	int physicalElements;
	int activeElements;
	int apertureSize;
	int pitchMultiplier;
	bool doPingPong;
};
}}
