![]() |
Ginkgo
Generated from pipelines/2969282958 branch based on develop. Ginkgo version 2.0.0
A numerical linear algebra library targeting many-core architectures
|
EnableDefaultLinOpFactory with LinOpFactory::generate_reuse() support, usually used through GKO_ENABLE_LIN_OP_FACTORY_WITH_REUSE. More...
#include <ginkgo/core/base/lin_op.hpp>
Public Member Functions | |
| std::unique_ptr< ConcreteLinOp > | generate_reuse (std::shared_ptr< const LinOp > input, LinOpFactory::ReuseData &reuse_data) const |
| LinOpFactory::generate_reuse(), returning the concrete LinOp type. | |
| std::unique_ptr< LinOpFactory::ReuseData > | create_empty_reuse_data () const override |
| void | check_reuse_consistent (const LinOp *input, const LinOpFactory::ReuseData &reuse_data) const override |
Public Member Functions inherited from gko::EnableDefaultFactory< ConcreteFactory, ProductType, ParametersType, PolymorphicBase > | |
| template<typename... Args> | |
| std::unique_ptr< product_type > | generate (Args &&... args) const |
| const parameters_type & | get_parameters () const noexcept |
| Returns the parameters of the factory. More... | |
Additional Inherited Members | |
Public Types inherited from gko::EnableDefaultFactory< ConcreteFactory, ProductType, ParametersType, PolymorphicBase > | |
| using | product_type = ProductType |
| using | parameters_type = ParametersType |
| using | polymorphic_base = PolymorphicBase |
| using | abstract_product_type = typename PolymorphicBase::abstract_product_type |
| using | components_type = typename PolymorphicBase::components_type |
Static Public Member Functions inherited from gko::EnableDefaultFactory< ConcreteFactory, ProductType, ParametersType, PolymorphicBase > | |
| static parameters_type | create () |
| Creates a new ParametersType object which can be used to instantiate a new ConcreteFactory. More... | |
EnableDefaultLinOpFactory with LinOpFactory::generate_reuse() support, usually used through GKO_ENABLE_LIN_OP_FACTORY_WITH_REUSE.
ReuseDataType has to be default-constructible and derived from LinOpFactory::ReuseData, and ConcreteLinOp has to provide
(const ConcreteFactory*, std::shared_ptr<const LinOp>, ReuseDataType&) keeping the guarantees of LinOpFactory::generate_reuse_impl();static void check_reuse_consistent(const ConcreteFactory*, const LinOp*, const ReuseDataType&), accepting any input while the data is empty.ReuseDataType only has to be complete where the factory's member functions are used. The other template parameters are the same as for EnableDefaultLinOpFactory.
1.8.16