117 lines
3.4 KiB
C#
117 lines
3.4 KiB
C#
using API_SequentMicrosystems.Services;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
// For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
|
|
|
|
namespace API_SequentMicrosystems.Controllers
|
|
{
|
|
[Tags("RTD-8 Temperature Module")]
|
|
[Route("RTDDA")]
|
|
[ApiController]
|
|
public class RTDDataAcquisitionController : ControllerBase
|
|
{
|
|
private RTDDAService _RTDDAservice;
|
|
public RTDDataAcquisitionController(RTDDAService serv)
|
|
{
|
|
_RTDDAservice = serv;
|
|
}
|
|
|
|
// GET: api/<RTDDataAcquisitionController>
|
|
/// <summary>
|
|
/// Read data from all configured cards
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet]
|
|
public SortedList<byte, float[]> Get()
|
|
{
|
|
return _RTDDAservice.ReadAllConfiguredCard();
|
|
}
|
|
|
|
// GET api/<RTDDataAcquisitionController>/All
|
|
/// <summary>
|
|
/// Read data from All RTD cards
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet("All")]
|
|
public SortedList<byte, float[]> GetAll()
|
|
{
|
|
return _RTDDAservice.ReadAllCard();
|
|
}
|
|
|
|
// GET api/<RTDDataAcquisitionController>/5
|
|
/// <summary>
|
|
/// Read data from specified card from stack
|
|
/// </summary>
|
|
/// <param name="stack"></param>
|
|
/// <returns>data from specified card</returns>
|
|
[HttpGet("{stack}")]
|
|
public float[] GetAll(byte stack)
|
|
{
|
|
return _RTDDAservice.ReadCard(stack);
|
|
}
|
|
|
|
//GET api/RTDDA/Names
|
|
/// <summary>
|
|
/// Get Configured Names of Chanels
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet("Names")]
|
|
public SortedList<byte, string[]> GetNames()
|
|
{
|
|
return _RTDDAservice.GetChanelsNames();
|
|
}
|
|
|
|
// POST api/<RTDDataAcquisitionController>
|
|
/// <summary>
|
|
/// Post configured names of chanels
|
|
/// </summary>
|
|
/// <param name="data"></param>
|
|
[HttpPost("Names")]
|
|
public void PostNames([FromBody] SortedList<byte, string[]> data)
|
|
{
|
|
_RTDDAservice.SetChanelsNames(data);
|
|
}
|
|
|
|
//GET api/RTDDA/Names/Preconfigured
|
|
/// <summary>
|
|
/// Get preconfigured Names for chanels
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet("Names/Preconfigured")]
|
|
public List<string> GetNamesPreconfigured()
|
|
{
|
|
return _RTDDAservice.GetPreconfiguratedChanelsNames();
|
|
}
|
|
|
|
//POST api/RTDDA/Names/Preconfigured
|
|
/// <summary>
|
|
/// Post preconfigured names for chanels
|
|
/// </summary>
|
|
/// <param name="data"></param>
|
|
[HttpPost("Names/Preconfigured")]
|
|
public void PostNamesPreconfigured([FromBody] List<string> data)
|
|
{
|
|
_RTDDAservice.SetPreconfiguratedChanelsNames(data);
|
|
}
|
|
|
|
//GET api/RTDDA/Calibration
|
|
/// <summary>
|
|
/// Get Calibration data
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet("Calibration")]
|
|
public SortedList<byte, float[]> GetCalibration()
|
|
{
|
|
return _RTDDAservice.GetCalibrationData();
|
|
}
|
|
|
|
//POST api/RTDDA/Calibration
|
|
[HttpPost("Calibration")]
|
|
public void PostCalibration([FromBody] SortedList<byte, float[]> data)
|
|
{
|
|
_RTDDAservice.SetCalibrationData(data);
|
|
}
|
|
|
|
}
|
|
}
|