diff --git a/latest/_tensor_copy_utils_8cpp_source.html b/latest/_tensor_copy_utils_8cpp_source.html
new file mode 100644
index 0000000..284ecc4
--- /dev/null
+++ b/latest/_tensor_copy_utils_8cpp_source.html
@@ -0,0 +1,144 @@
+<!-- HTML header for doxygen 1.8.17-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.17"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Arm NN: src/armnnTestUtils/TensorCopyUtils.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/x-mathjax-config">
+  MathJax.Hub.Config({
+    extensions: ["tex2jax.js"],
+    jax: ["input/TeX","output/HTML-CSS"],
+});
+</script>
+<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 15rem; margin-top: .5rem; margin-left 13px"/>
+  <td id="projectalign" style="padding-left: 0.9em;">
+   <div id="projectname">
+   &#160;<span id="projectnumber">23.08</span>
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(document).ready(function(){initNavTree('_tensor_copy_utils_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle">
+<div class="title">TensorCopyUtils.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="_tensor_copy_utils_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Copyright © 2017,2022 Arm Ltd and Contributors. All rights reserved.</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// SPDX-License-Identifier: MIT</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="_i_tensor_handle_8hpp.html">armnn/backends/ITensorHandle.hpp</a>&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;armnnTestUtils/TensorCopyUtils.hpp&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="_half_8hpp.html">Half.hpp</a>&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="_tensor_copy_utils_8cpp.html#ae15f1a3c55d2db87683577de9fa4437c">   10</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="_tensor_copy_utils_8cpp.html#ae15f1a3c55d2db87683577de9fa4437c">CopyDataToITensorHandle</a>(<a class="code" href="classarmnn_1_1_i_tensor_handle.html">armnn::ITensorHandle</a>* tensorHandle, <span class="keyword">const</span> <span class="keywordtype">void</span>* memory)</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;{</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    tensorHandle-&gt;<a class="code" href="classarmnn_1_1_i_tensor_handle.html#ad495ac6d9fd9e1ba5bb7a02c731a2d83">CopyInFrom</a>(memory);</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;}</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="_tensor_copy_utils_8cpp.html#a99b626c58a926dc7d6df78d22ec186c8">   15</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="_tensor_copy_utils_8cpp.html#a99b626c58a926dc7d6df78d22ec186c8">CopyDataFromITensorHandle</a>(<span class="keywordtype">void</span>* memory, <span class="keyword">const</span> <a class="code" href="classarmnn_1_1_i_tensor_handle.html">armnn::ITensorHandle</a>* tensorHandle)</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;{</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    tensorHandle-&gt;<a class="code" href="classarmnn_1_1_i_tensor_handle.html#a4ec32790513ea4af4c5746f1ee48fbfe">CopyOutTo</a>(memory);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;}</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="_tensor_copy_utils_8cpp.html#afaaca8c3f3a467d124bba44067d2afa8">   20</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="_tensor_copy_utils_8cpp.html#afaaca8c3f3a467d124bba44067d2afa8">AllocateAndCopyDataToITensorHandle</a>(<a class="code" href="classarmnn_1_1_i_tensor_handle.html">armnn::ITensorHandle</a>* tensorHandle, <span class="keyword">const</span> <span class="keywordtype">void</span>* memory)</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;{</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    tensorHandle-&gt;<a class="code" href="classarmnn_1_1_i_tensor_handle.html#a5cceed8b707a09bf27eb61f17acf8a88">Allocate</a>();</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <a class="code" href="_tensor_copy_utils_8cpp.html#ae15f1a3c55d2db87683577de9fa4437c">CopyDataToITensorHandle</a>(tensorHandle, memory);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<div class="ttc" id="aclassarmnn_1_1_i_tensor_handle_html"><div class="ttname"><a href="classarmnn_1_1_i_tensor_handle.html">armnn::ITensorHandle</a></div><div class="ttdef"><b>Definition:</b> <a href="_i_tensor_handle_8hpp_source.html#l00016">ITensorHandle.hpp:16</a></div></div>
+<div class="ttc" id="a_tensor_copy_utils_8cpp_html_afaaca8c3f3a467d124bba44067d2afa8"><div class="ttname"><a href="_tensor_copy_utils_8cpp.html#afaaca8c3f3a467d124bba44067d2afa8">AllocateAndCopyDataToITensorHandle</a></div><div class="ttdeci">void AllocateAndCopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_copy_utils_8cpp_source.html#l00020">TensorCopyUtils.cpp:20</a></div></div>
+<div class="ttc" id="a_i_tensor_handle_8hpp_html"><div class="ttname"><a href="_i_tensor_handle_8hpp.html">ITensorHandle.hpp</a></div></div>
+<div class="ttc" id="a_tensor_copy_utils_8cpp_html_a99b626c58a926dc7d6df78d22ec186c8"><div class="ttname"><a href="_tensor_copy_utils_8cpp.html#a99b626c58a926dc7d6df78d22ec186c8">CopyDataFromITensorHandle</a></div><div class="ttdeci">void CopyDataFromITensorHandle(void *memory, const armnn::ITensorHandle *tensorHandle)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_copy_utils_8cpp_source.html#l00015">TensorCopyUtils.cpp:15</a></div></div>
+<div class="ttc" id="aclassarmnn_1_1_i_tensor_handle_html_ad495ac6d9fd9e1ba5bb7a02c731a2d83"><div class="ttname"><a href="classarmnn_1_1_i_tensor_handle.html#ad495ac6d9fd9e1ba5bb7a02c731a2d83">armnn::ITensorHandle::CopyInFrom</a></div><div class="ttdeci">virtual void CopyInFrom(const void *memory)=0</div></div>
+<div class="ttc" id="a_half_8hpp_html"><div class="ttname"><a href="_half_8hpp.html">Half.hpp</a></div></div>
+<div class="ttc" id="a_tensor_copy_utils_8cpp_html_ae15f1a3c55d2db87683577de9fa4437c"><div class="ttname"><a href="_tensor_copy_utils_8cpp.html#ae15f1a3c55d2db87683577de9fa4437c">CopyDataToITensorHandle</a></div><div class="ttdeci">void CopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_copy_utils_8cpp_source.html#l00010">TensorCopyUtils.cpp:10</a></div></div>
+<div class="ttc" id="aclassarmnn_1_1_i_tensor_handle_html_a4ec32790513ea4af4c5746f1ee48fbfe"><div class="ttname"><a href="classarmnn_1_1_i_tensor_handle.html#a4ec32790513ea4af4c5746f1ee48fbfe">armnn::ITensorHandle::CopyOutTo</a></div><div class="ttdeci">virtual void CopyOutTo(void *memory) const =0</div><div class="ttdoc">Testing support to be able to verify and set tensor data content.</div></div>
+<div class="ttc" id="aclassarmnn_1_1_i_tensor_handle_html_a5cceed8b707a09bf27eb61f17acf8a88"><div class="ttname"><a href="classarmnn_1_1_i_tensor_handle.html#a5cceed8b707a09bf27eb61f17acf8a88">armnn::ITensorHandle::Allocate</a></div><div class="ttdeci">virtual void Allocate()=0</div><div class="ttdoc">Indicate to the memory manager that this resource is no longer active.</div></div>
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_f574f3650e467f7ec35d628d20229555.html">armnnTestUtils</a></li><li class="navelem"><a class="el" href="_tensor_copy_utils_8cpp.html">TensorCopyUtils.cpp</a></li>
+    <li class="footer">Generated on Tue Aug 22 2023 11:36:58 for Arm NN by
+    <a href="http://www.doxygen.org/index.html">
+    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
+  </ul>
+</div>
+</body>
+</html>
