Navigation
API > API/Plugins > API/Plugins/RigLogicLib > API/Plugins/RigLogicLib/pma > API/Plugins/RigLogicLib/pma/pma__makeScoped
References
| Module | RigLogicLib |
| Header | /Engine/Plugins/Animation/RigLogic/Source/RigLogicLib/Public/pma/ScopedPtr.h |
| Include | #include "pma/ScopedPtr.h" |
namespace pma
{
template<class T, class TCreator, class TDestroyer, typename ... Args, typename Base>
ScopedPtr < Base, TDestroyer > pma::makeScoped
(
Args &&... args
)
}
Remarks
The default behavior is to rely on the New / Delete pair of lifetime managers, because it's sensible to do so. However, because a significant portion of our abstractions follow the convention of exposing a create / destroy pair of factory functions (where create always returns a raw pointer), there also exists a dedicated FactoryCreate / FactoryDestroy pair of lifetime managers. To change the default behavior in order to utilize a specific lifetime manager pair, specialize the DefaultInstanceCreator and DefaultInstanceDestroyer traits for the types that need different handling. Alternately, it's also possible to pass a custom creator / destroyer on each invocation.