USRP Hardware Driver and USRP Manual  Version: 3.11.0.HEAD-0-gdca39145
UHD and USRP Manual
buffer_pool.hpp
Go to the documentation of this file.
1 //
2 // Copyright 2011,2014 Ettus Research LLC
3 //
4 // SPDX-License-Identifier: GPL-3.0
5 //
6 
7 #ifndef INCLUDED_UHD_TRANSPORT_BUFFER_POOL_HPP
8 #define INCLUDED_UHD_TRANSPORT_BUFFER_POOL_HPP
9 
10 #include <uhd/config.hpp>
11 #include <boost/utility.hpp>
12 #include <boost/shared_ptr.hpp>
13 
14 namespace uhd{ namespace transport{
15 
20  class UHD_API buffer_pool : boost::noncopyable{
21  public:
22  typedef boost::shared_ptr<buffer_pool> sptr;
23  typedef void * ptr_type;
24 
25  virtual ~buffer_pool(void) = 0;
26 
34  static sptr make(
35  const size_t num_buffs,
36  const size_t buff_size,
37  const size_t alignment = 16
38  );
39 
41  virtual ptr_type at(const size_t index) const = 0;
42 
44  virtual size_t size(void) const = 0;
45  };
46 
47 }} //namespace
48 
49 
50 #endif /* INCLUDED_UHD_TRANSPORT_BUFFER_POOL_HPP */
Definition: buffer_pool.hpp:20
Definition: build_info.hpp:14
boost::shared_ptr< buffer_pool > sptr
Definition: buffer_pool.hpp:22
#define UHD_API
Definition: config.h:62
void * ptr_type
Definition: buffer_pool.hpp:23