Quadripoint.hpp 636 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef __QUADRIPOINT_HPP
  2. #define __QUADRIPOINT_HPP
  3. #include "mydouble.h"
  4. extern "C" {
  5. #include "fpe.h"
  6. #include "fp2e.h"
  7. #include "fp6e.h"
  8. #include "fp12e.h"
  9. }
  10. class Quadripoint
  11. {
  12. public:
  13. Quadripoint();
  14. Quadripoint(const fp12e_t& p1, const fp12e_t& p2, const fp12e_t& p3, const fp12e_t& p4);
  15. fp12e_t& operator[](int n);
  16. const fp12e_t& operator[](int n) const;
  17. Quadripoint operator*(const Quadripoint& b) const;
  18. Quadripoint operator^(const scalar_t& exp) const;
  19. Quadripoint operator++(int);
  20. bool operator==(const Quadripoint& b) const;
  21. Quadripoint square() const;
  22. private:
  23. fp12e_t point[4];
  24. };
  25. #endif