Handles creation of various fusion objects.  
 More...
#include <anatomist/fusion/fusionFactory.h>
Handles creation of various fusion objects. 
This is an "open" mechanism with registration procedure to allow new types of fusion 
Definition at line 79 of file fusionFactory.h.
◆ FusionFactory()
      
        
          | anatomist::FusionFactory::FusionFactory | ( |  | ) |  | 
      
 
 
◆ ~FusionFactory()
  
  | 
        
          | virtual anatomist::FusionFactory::~FusionFactory | ( |  | ) |  |  | virtual | 
 
 
◆ allowedMethods()
  
  | 
        
          | virtual std::multimap<int, std::string> anatomist::FusionFactory::allowedMethods | ( | const std::set< AObject * > & |  | ) | const |  | virtual | 
 
lists all possible fusions on the given objects, classed with a priority 
 
 
◆ canFusion()
  
  | 
        
          | static bool anatomist::FusionFactory::canFusion | ( | const std::set< AObject * > & |  | ) |  |  | static | 
 
is there at least one method which can actually make a fusion with these objects ? 
 
 
◆ chooseMethod() [1/2]
Chooses one method which can fusion these objects. 
The default factory only takes the first found (random!...) 
- Returns
- 0 if none can do so 
 
 
◆ chooseMethod() [2/2]
  
  | 
        
          | virtual FusionMethod* anatomist::FusionFactory::chooseMethod | ( | std::vector< AObject * > & | , |  
          |  |  | bool | allowreorder = false |  
          |  | ) |  |  |  | virtual | 
 
 
◆ factory()
◆ method()
  
  | 
        
          | virtual FusionMethod* anatomist::FusionFactory::method | ( | const std::string & | name | ) | const |  | virtual | 
 
Selects the method with ID name (if any) 
 
 
◆ methods()
  
  | 
        
          | static std::set<std::string> anatomist::FusionFactory::methods | ( |  | ) |  |  | static | 
 
 
◆ registerMethod()
  
  | 
        
          | static bool anatomist::FusionFactory::registerMethod | ( | FusionMethod * | method | ) |  |  | static | 
 
returns false if the method was already registered 
 
 
◆ _methods
◆ _theFactory
The documentation for this class was generated from the following file: