bindings.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //==================================================================================
  2. // BSD 2-Clause License
  3. //
  4. // Copyright (c) 2014-2025, NJIT, Duality Technologies Inc. and other contributors
  5. //
  6. // All rights reserved.
  7. //
  8. // Author TPOC: contact@openfhe.org
  9. //
  10. // Redistribution and use in source and binary forms, with or without
  11. // modification, are permitted provided that the following conditions are met:
  12. //
  13. // 1. Redistributions of source code must retain the above copyright notice, this
  14. // list of conditions and the following disclaimer.
  15. //
  16. // 2. Redistributions in binary form must reproduce the above copyright notice,
  17. // this list of conditions and the following disclaimer in the documentation
  18. // and/or other materials provided with the distribution.
  19. //
  20. // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  21. // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  22. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  23. // DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
  24. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  25. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
  26. // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
  27. // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  28. // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  29. // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  30. //==================================================================================
  31. #ifndef __BINDINGS_H__
  32. #define __BINDINGS_H__
  33. #include <pybind11/pybind11.h>
  34. void bind_parameters(pybind11::module &m);
  35. void bind_crypto_context(pybind11::module &m);
  36. void bind_enums_and_constants(pybind11::module &m);
  37. void bind_keys(pybind11::module &m);
  38. void bind_encodings(pybind11::module &m);
  39. void bind_ciphertext(pybind11::module &m);
  40. void bind_serialization(pybind11::module &m);
  41. void bind_schemes(pybind11::module &m);
  42. void bind_sch_swch_params(pybind11::module &m);
  43. #endif // __BINDINGS_H__