Resolve "Factory documentation"
Compare changes
+ 51
− 20
@@ -25,35 +25,61 @@ namespace wolf
@@ -25,35 +25,61 @@ namespace wolf
* > The reason for this is that the two cases above need a more elaborated API than the one in this template class.
* \param TypeInput type of the input argument. Typical cases are std::string for file names, and YAML::Node for YAML nodes.
* - LandmarkBase: the Factory creates landmarks deriving from LandmarkBase and returns base pointers ````LandmarkBasePtr```` to them
* - ParamsSensorBase: the Factory creates intrinsic parameters deriving from ParamsSensorBase and returns base pointers ````ParamsSensorBasePtr```` to them
* - XxxBase: the Factory creates objects deriving from XxxBase and returns pointers ````XxxBasePtr```` to them.
* - ````std::string```` is used when the input parameter is a file name from which to read data (typically a YAML file).
@@ -75,18 +101,18 @@ namespace wolf
@@ -75,18 +101,18 @@ namespace wolf
* The rule to make new TYPE strings unique is that you skip the generic 'Type' prefix from your class name,
* The first thing to know is that we have defined typedefs for the templates that we are using. For example:
@@ -103,10 +129,11 @@ namespace wolf
@@ -103,10 +129,11 @@ namespace wolf
* The method LandmarkPolyline2d::create(...) exists in the LandmarkPolyline2d class as a static method.
* All these ````XxxXxx::create()```` methods need to have exactly the same API, regardless of the object type.
@@ -234,12 +261,16 @@ namespace wolf
@@ -234,12 +261,16 @@ namespace wolf