1#ifndef SECP256K1_BATCH_ADD_AFFINE_HPP
2#define SECP256K1_BATCH_ADD_AFFINE_HPP
73 std::vector<FieldElement>& scratch);
85 std::vector<FieldElement>& scratch);
136 std::vector<FieldElement>& scratch);
159 std::vector<FieldElement>& scratch);
std::vector< AffinePointCompact > precompute_point_multiples(const FieldElement &qx, const FieldElement &qy, std::size_t count)
void batch_add_affine_x(const FieldElement &base_x, const FieldElement &base_y, const AffinePointCompact *offsets, FieldElement *out_x, std::size_t count, std::vector< FieldElement > &scratch)
void batch_add_affine_x_with_parity(const FieldElement &base_x, const FieldElement &base_y, const AffinePointCompact *offsets, FieldElement *out_x, uint8_t *out_parity, std::size_t count, std::vector< FieldElement > &scratch)
void batch_add_affine_xy(const FieldElement &base_x, const FieldElement &base_y, const AffinePointCompact *offsets, FieldElement *out_x, FieldElement *out_y, std::size_t count, std::vector< FieldElement > &scratch)
std::vector< AffinePointCompact > precompute_g_multiples(std::size_t count)
std::vector< AffinePointCompact > negate_affine_table(const AffinePointCompact *table, std::size_t count)
void batch_add_affine_x_bidirectional(const FieldElement &base_x, const FieldElement &base_y, const AffinePointCompact *offsets_fwd, const AffinePointCompact *offsets_bwd, FieldElement *out_x_fwd, FieldElement *out_x_bwd, std::size_t count, std::vector< FieldElement > &scratch)