# Interface NTTBuilder

All Known Implementing Classes:
`AbstractNTTBuilder`, `DoubleNTTBuilder`, `FloatNTTBuilder`, `IntAparapiNTTBuilder`, `IntNTTBuilder`, `LongAparapiNTTBuilder`, `LongNTTBuilder`

public interface NTTBuilder
Interface of a factory for creating Number Theoretic Transforms. The factory method pattern is used.
Version:
1.7.0
Author:
Mikko Tommila
• ## Method Summary

Modifier and Type
Method
Description
`Factor3NTTStepStrategy`
`createFactor3NTTSteps()`
Creates an object for implementing the steps of factor-3 NTT.
`NTTStrategy`
`createNTT(long size)`
Creates a Number Theoretic Transform of suitable type for the specified length.
`NTTConvolutionStepStrategy`
`createNTTConvolutionSteps()`
Creates an object for implementing the steps of a three-NTT based convolution.
`NTTStepStrategy`
`createNTTSteps()`
Creates an object for implementing the steps of a step-based Number Theoretic Transform.
• ## Method Details

• ### createNTT

NTTStrategy createNTT(long size)
Creates a Number Theoretic Transform of suitable type for the specified length.
Parameters:
`size` - The transform length that will be used.
Returns:
A suitable NTT object for performing the transform.
• ### createNTTSteps

NTTStepStrategy createNTTSteps()
Creates an object for implementing the steps of a step-based Number Theoretic Transform.
Returns:
A suitable object for performing the transform steps.
Since:
1.7.0
• ### createNTTConvolutionSteps

NTTConvolutionStepStrategy createNTTConvolutionSteps()
Creates an object for implementing the steps of a three-NTT based convolution.
Returns:
A suitable object for performing the convolution steps.
Since:
1.7.0
• ### createFactor3NTTSteps

Factor3NTTStepStrategy createFactor3NTTSteps()
Creates an object for implementing the steps of factor-3 NTT.
Returns:
A suitable object for performing the factor-3 NTT steps.
Since:
1.7.0