| 
| __host__ constexpr __device__  | DynamicBuffer (T *p_data, ElementSpaceSize element_space_size) | 
|   | 
| __host__ constexpr __device__  | DynamicBuffer (T *p_data, ElementSpaceSize element_space_size, T invalid_element_value) | 
|   | 
| __host__ constexpr __device__ const T &  | operator[] (IndexType i) const | 
|   | 
| __host__ constexpr __device__ T &  | operator() (IndexType i) | 
|   | 
| template<typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value||!is_native_type< X >(), bool >::type  = false>  | 
| __host__ constexpr __device__ auto  | Get (IndexType i, bool is_valid_element) const | 
|   | 
| template<InMemoryDataOperationEnum Op, typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value, bool >::type  = false>  | 
| __host__ __device__ void  | Update (IndexType i, bool is_valid_element, const X &x) | 
|   | 
| template<typename DstBuffer , index_t NumElemsPerThread>  | 
| __host__ __device__ void  | DirectCopyToLds (DstBuffer &dst_buf, IndexType src_offset, IndexType dst_offset, bool is_valid_element) const | 
|   | 
| template<typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value||!is_native_type< X >(), bool >::type  = false>  | 
| __host__ __device__ void  | Set (IndexType i, bool is_valid_element, const X &x) | 
|   | 
| template<typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value, bool >::type  = false>  | 
| __host__ __device__ void  | AtomicAdd (IndexType i, bool is_valid_element, const X &x) | 
|   | 
| template<typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value, bool >::type  = false>  | 
| __host__ __device__ void  | AtomicMax (IndexType i, bool is_valid_element, const X &x) | 
|   | 
template<AddressSpaceEnum BufferAddressSpace, typename T , typename ElementSpaceSize , bool InvalidElementUseNumericalZeroValue, AmdBufferCoherenceEnum coherence = AmdBufferCoherenceEnum::DefaultCoherence, typename IndexType  = index_t> 
template<typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value, bool >::type  = false> 
  
  
      
        
          | __host__ __device__ void ck::DynamicBuffer< BufferAddressSpace, T, ElementSpaceSize, InvalidElementUseNumericalZeroValue, coherence, IndexType >::AtomicAdd  | 
          ( | 
          IndexType  | 
          i,  | 
         
        
           | 
           | 
          bool  | 
          is_valid_element,  | 
         
        
           | 
           | 
          const X &  | 
          x  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
 
template<AddressSpaceEnum BufferAddressSpace, typename T , typename ElementSpaceSize , bool InvalidElementUseNumericalZeroValue, AmdBufferCoherenceEnum coherence = AmdBufferCoherenceEnum::DefaultCoherence, typename IndexType  = index_t> 
template<typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value, bool >::type  = false> 
  
  
      
        
          | __host__ __device__ void ck::DynamicBuffer< BufferAddressSpace, T, ElementSpaceSize, InvalidElementUseNumericalZeroValue, coherence, IndexType >::AtomicMax  | 
          ( | 
          IndexType  | 
          i,  | 
         
        
           | 
           | 
          bool  | 
          is_valid_element,  | 
         
        
           | 
           | 
          const X &  | 
          x  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
 
template<AddressSpaceEnum BufferAddressSpace, typename T , typename ElementSpaceSize , bool InvalidElementUseNumericalZeroValue, AmdBufferCoherenceEnum coherence = AmdBufferCoherenceEnum::DefaultCoherence, typename IndexType  = index_t> 
template<typename DstBuffer , index_t NumElemsPerThread> 
  
  
      
        
          | __host__ __device__ void ck::DynamicBuffer< BufferAddressSpace, T, ElementSpaceSize, InvalidElementUseNumericalZeroValue, coherence, IndexType >::DirectCopyToLds  | 
          ( | 
          DstBuffer &  | 
          dst_buf,  | 
         
        
           | 
           | 
          IndexType  | 
          src_offset,  | 
         
        
           | 
           | 
          IndexType  | 
          dst_offset,  | 
         
        
           | 
           | 
          bool  | 
          is_valid_element  | 
         
        
           | 
          ) | 
           |  const | 
         
       
   | 
  
inline   | 
  
 
 
template<AddressSpaceEnum BufferAddressSpace, typename T , typename ElementSpaceSize , bool InvalidElementUseNumericalZeroValue, AmdBufferCoherenceEnum coherence = AmdBufferCoherenceEnum::DefaultCoherence, typename IndexType  = index_t> 
template<typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value||!is_native_type< X >(), bool >::type  = false> 
  
  
      
        
          | __host__ constexpr __device__ auto ck::DynamicBuffer< BufferAddressSpace, T, ElementSpaceSize, InvalidElementUseNumericalZeroValue, coherence, IndexType >::Get  | 
          ( | 
          IndexType  | 
          i,  | 
         
        
           | 
           | 
          bool  | 
          is_valid_element  | 
         
        
           | 
          ) | 
           |  const | 
         
       
   | 
  
inlineconstexpr   | 
  
 
 
template<AddressSpaceEnum BufferAddressSpace, typename T , typename ElementSpaceSize , bool InvalidElementUseNumericalZeroValue, AmdBufferCoherenceEnum coherence = AmdBufferCoherenceEnum::DefaultCoherence, typename IndexType  = index_t> 
template<typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value||!is_native_type< X >(), bool >::type  = false> 
  
  
      
        
          | __host__ __device__ void ck::DynamicBuffer< BufferAddressSpace, T, ElementSpaceSize, InvalidElementUseNumericalZeroValue, coherence, IndexType >::Set  | 
          ( | 
          IndexType  | 
          i,  | 
         
        
           | 
           | 
          bool  | 
          is_valid_element,  | 
         
        
           | 
           | 
          const X &  | 
          x  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
 
template<AddressSpaceEnum BufferAddressSpace, typename T , typename ElementSpaceSize , bool InvalidElementUseNumericalZeroValue, AmdBufferCoherenceEnum coherence = AmdBufferCoherenceEnum::DefaultCoherence, typename IndexType  = index_t> 
template<InMemoryDataOperationEnum Op, typename X , typename enable_if< is_same< typename scalar_type< remove_cvref_t< X >>::type, typename scalar_type< remove_cvref_t< T >>::type >::value, bool >::type  = false> 
  
  
      
        
          | __host__ __device__ void ck::DynamicBuffer< BufferAddressSpace, T, ElementSpaceSize, InvalidElementUseNumericalZeroValue, coherence, IndexType >::Update  | 
          ( | 
          IndexType  | 
          i,  | 
         
        
           | 
           | 
          bool  | 
          is_valid_element,  | 
         
        
           | 
           | 
          const X &  | 
          x  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   |