#ifndef DATA_HPP_
#define DATA_HPP_

#include <array>
#include <vector>

using Coordinate = std::array<double, 2>;


struct Magnetic {
  Magnetic(double t, double x, double y, double z) :
    time(t), field({x, y, z}) {}
  Magnetic(double t, double x, double y) :
    time(t), position({x, y}) {}
  double time;
  std::array<double, 3> field;
  Coordinate position;
};


struct Position {
  Position(double t, double x, double y) :
    time(t), position({x, y}) {}
  double time;
  Coordinate position;
};

using Magnetics = std::vector<Magnetic>;
using Positions = std::vector<Position>;

#endif /* DATA_HPP_ */
