Ginkgo
Generated from pipelines/1556235455 branch based on develop. Ginkgo version 1.9.0
A numerical linear algebra library targeting many-core architectures
|
This mixin does the same as EnablePolymorphicObject, but for concrete types that are derived from distributed::DistributedBase. More...
#include <ginkgo/core/distributed/polymorphic_object.hpp>
Additional Inherited Members | |
Public Member Functions inherited from gko::EnableAbstractPolymorphicObject< ConcreteObject, PolymorphicBase > | |
std::unique_ptr< ConcreteObject > | create_default (std::shared_ptr< const Executor > exec) const |
std::unique_ptr< ConcreteObject > | create_default () const |
std::unique_ptr< ConcreteObject > | clone (std::shared_ptr< const Executor > exec) const |
std::unique_ptr< ConcreteObject > | clone () const |
ConcreteObject * | copy_from (const PolymorphicObject *other) |
std::enable_if_t< std::is_base_of< PolymorphicObject, std::decay_t< Derived > >::value, ConcreteObject > * | copy_from (std::unique_ptr< Derived > &&other) |
std::enable_if_t< std::is_base_of< PolymorphicObject, std::decay_t< Derived > >::value, ConcreteObject > * | copy_from (const std::unique_ptr< Derived > &other) |
ConcreteObject * | copy_from (const std::shared_ptr< const PolymorphicObject > &other) |
ConcreteObject * | move_from (ptr_param< PolymorphicObject > other) |
ConcreteObject * | clear () |
This mixin does the same as EnablePolymorphicObject, but for concrete types that are derived from distributed::DistributedBase.
The following is a minimal example of a distributed PolymorphicObject:
ConcreteObject | the concrete type which is being implemented that is derived from distributed::DistributedBase [CRTP parameter] |
PolymorphicBase | parent of ConcreteObject in the polymorphic hierarchy, has to be a subclass of polymorphic object |