Sensor¶
/**
* Sensor API
* @author Andrej Cimperšek
*/
public interface Sensor {
/**
* Kaj natancno naredi ukaz ni znano. Pred zajemom podatkov ga je potrebno izvesti.
* TODO: odstranit oz. samodejen klic pred zajemom podatkov.
*/
public void ReadQuery();
/**
* Pripravi senzor na zajemanje podatkov. Ob naslednjih prozenjih laserja bodo meritve dostopne preko lastnosti ReceivedMeasurement.
* TODO: drugačen dostop do podatkov
*/
public void RunAcqusition();
/**
* Ustavi zajemanje podatkov ob prozenju laserja. Z drugimi besadami, ob naslednjih sprozitvah laserja ne bomo dobili podatkov meritev.
*/
public void StopAcqusition();
/**
* Podobno kot RunAcqusition, natancnejsi podatki zal niso znani.
*/
public void ForceTrigger();
/**
* Mnozica doloca vse mozne tipe meritev.
*/
public enum DataType { Data, Background, DataMinusBackground }
/**
* Nastavi tip type meritve.
* @param type Tip meritve.
*/
public void SetDataType(DataType type);
/**
* Vrne status senzurja, predstavljen v enem byte-u.
* @return byte Status senzorja.
*/
public byte GetStatus();
/**
* Poslje gain profil gainData v senzor.
* @param gainData Gain profil.
*/
public void SendGain(short[] gainData);
}