26 #ifndef NVNEURAL_LAYERLIST_H 
   27 #define NVNEURAL_LAYERLIST_H 
   50     explicit LayerList(
const std::vector<ILayer*>& layerList)
 
   55             std::back_inserter(m_layerList),
 
   56             [](
ILayer* pRaw) { return RefPtr<ILayer>::fromPointer(pRaw); });
 
   61         : m_layerList(layerList)
 
   67         : m_layerList(std::move(layerList))
 
   74         return m_layerList.size();
 
   80         if (layerIndex < m_layerList.size())
 
   82             return m_layerList[layerIndex].get();
 
   91     std::vector<RefPtr<ILayer>> m_layerList;
 
Fundamental NvNeural data types are declared here.
 
Interface types needed by layer objects.
 
Standard implementation for IRefObject-derived objects.
 
Smart pointer class for tracking IRefObject instances.
 
ILayer is the base class for neural network layers.
Definition: LayerTypes.h:59
 
Simple implementation of ILayerList.
Definition: LayerList.h:45
 
LayerList(const std::vector< ILayer * > &layerList)
Initialize from a vector of raw pointers.
Definition: LayerList.h:50
 
LayerList(const std::vector< RefPtr< ILayer >> &layerList)
Initialize from a vector of RefPtr (copy ctor).
Definition: LayerList.h:60
 
size_t layerCount() const noexcept
Returns the number of layers in the collection.
Definition: LayerList.h:72
 
ILayer * getLayerByIndex(size_t layerIndex) const noexcept
Returns the Nth ILayer pointer in the collection.
Definition: LayerList.h:78
 
LayerList(std::vector< RefPtr< ILayer >> &&layerList)
Initialize from a vector of RefPtr (move ctor).
Definition: LayerList.h:66
 
Intrusive pointer using IRefObject's reference counting system.
Definition: RefPtr.h:46
 
Parameterized base class implementing common IRefObject operations.
Definition: RefObject.h:336