|Status:||Rejected||Start date:||01 Nov 2016|
While drafting an introductory Reference chapter, I wonder whether we want to expose a C++ API like
GISASSimulation(const MultiLayer& p_sample); GISASSimulation(const std::shared_ptr<IMultiLayerBuilder> p_sample_builder);
Shouldn't we rather avoid smart pointers in the user API?
#2 Updated by pospelov about 4 years ago
SampleBuilder is, to my knowledge, is the only such usage in public API and it is somewhat special. It can be defined in Python and should stay alive during the simulation run. Smart pointer was the way to achieve it. May be there are other ways to achieve the same. In earlier version of the code (before April) it was
so the exact type was hidden with the possibility to redefine underlying typedef (leaving GISASSimulation constructor intact).