CARMA C++
|
Facilitate the creation, storage and retrieval of FftwRealToRealPlans. More...
#include <carma/util/FftwRealToRealPlanManager.h>
Public Member Functions | |
FftwRealToRealPlan & | createPlan (FftwRealVector::size_type size, FftwRealToRealPlan::Kind kind) |
Explicitly create and store a new plan of a given type and size. More... | |
FftwRealToRealPlanManager (FftwRealVector::size_type maxSize) | |
Constructor. More... | |
FftwRealToRealPlanManager (const FftwRealToRealPlanManager &from) | |
Copy constructor. More... | |
FftwRealVector & | getFftwRealVector () |
Retrieve vector. More... | |
FftwRealToRealPlanManager & | operator= (const FftwRealToRealPlanManager &from) |
Assignment operator. More... | |
FftwRealToRealPlan & | retrievePlan (FftwRealVector::size_type size, FftwRealToRealPlan::Kind kind) |
Retrieve an FftwRealToRealPlan for a given size and kind. More... | |
~FftwRealToRealPlanManager () | |
Destructor. More... | |
Facilitate the creation, storage and retrieval of FftwRealToRealPlans.
The idea is to create all perceived necessary Fftw plans at the outset and then retrieve them on the fly when needed. Plans can be created on the fly as well but with a noticeable performance hit. Note this class is not threadsafe.
Definition at line 28 of file FftwRealToRealPlanManager.h.
|
explicit |
Constructor.
maxSize | The maximum sized plan this class will hold. |
carma::util::FftwRealToRealPlanManager::FftwRealToRealPlanManager | ( | const FftwRealToRealPlanManager & | from | ) |
Copy constructor.
carma::util::FftwRealToRealPlanManager::~FftwRealToRealPlanManager | ( | ) |
Destructor.
FftwRealToRealPlan& carma::util::FftwRealToRealPlanManager::createPlan | ( | FftwRealVector::size_type | size, |
FftwRealToRealPlan::Kind | kind | ||
) |
Explicitly create and store a new plan of a given type and size.
This is just a convenient way to explicitly create a specified plan. Retrieve plan behaves identically in the event that the plan doesn't already exist.
size | Size of plan to create. |
kind | Kind of plan to create. |
ErrorException | if size > maxSize |
FftwRealVector& carma::util::FftwRealToRealPlanManager::getFftwRealVector | ( | ) |
Retrieve vector.
Note that the same rules apply to this vector as noted in FftwRealToRealPlan docs (i.e. don't force reallocation).
FftwRealToRealPlanManager& carma::util::FftwRealToRealPlanManager::operator= | ( | const FftwRealToRealPlanManager & | from | ) |
Assignment operator.
FftwRealToRealPlan& carma::util::FftwRealToRealPlanManager::retrievePlan | ( | FftwRealVector::size_type | size, |
FftwRealToRealPlan::Kind | kind | ||
) |
Retrieve an FftwRealToRealPlan for a given size and kind.
If a plan doesn't exist, it is created on the fly.
size | Size of plan to retrieve. |
kind | Kind of plan to retrieve. |
ErrorException | if size > maxSize |