@ -1,80 +1,80 @@
<mxfile host= "app.diagrams.net" modified= "2024-01-22T13:20:17.652 Z" agent= "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36" etag= "97LZP_lnqzgC0hqZ7VOA " version= "22.1.21" type= "device" >
<mxfile host= "app.diagrams.net" modified= "2024-02-15T12:40:37.148 Z" agent= "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36" etag= "bDsGiENRX6gaS5lY3tf3 " version= "22.1.21" type= "device" >
<diagram name= "Page-1" id= "xBjmK5o3fU9FCVY3KYoo" >
<diagram name= "Page-1" id= "xBjmK5o3fU9FCVY3KYoo" >
<mxGraphModel dx= "1434" dy= "803 " grid= "1" gridSize= "10" guides= "1" tooltips= "1" connect= "1" arrows= "1" fold= "1" page= "1" pageScale= "1" pageWidth= "827" pageHeight= "369" math= "0" shadow= "0" >
<mxGraphModel dx= "276" dy= "154 " grid= "1" gridSize= "10" guides= "1" tooltips= "1" connect= "1" arrows= "1" fold= "1" page= "1" pageScale= "1" pageWidth= "827" pageHeight= "369" math= "0" shadow= "0" >
<root >
<root >
<mxCell id= "0" />
<mxCell id= "0" />
<mxCell id= "1" parent= "0" />
<mxCell id= "1" parent= "0" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-23" value= "" style= "group;fillColor=#d5e8d4;strokeColor=#82b366 ;" parent= "1" vertex= "1" connectable= "0" >
<mxGeometry x= "17 0" y= "40" width= "230" height= "190" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-23" value= "" style= "group;fillColor=#d5e8d4;strokeColor=none;strokeWidth=9;container=0 ;" parent= "1" vertex= "1" connectable= "0" >
<mxGeometry x= "13 0" y= "40" width= "230" height= "190" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-1" value= "" style= "rounded=0;whiteSpace=wrap;html=1;" parent= "tB5LUjmhD6zCi5oJ_og_-23" vertex= "1" >
<mxGeometry width= "230" height= "190" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-26" value= "" style= "group;fillColor=#fff2cc;strokeColor=#d6b656;container=0;" parent= "1" vertex= "1" connectable= "0" >
<mxGeometry x= "440" y= "40" width= "230" height= "270" as= "geometry" />
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-14" value= "" style= "rounded=0;whiteSpace=wrap;html=1;" parent= "1" vertex= "1" >
<mxGeometry x= "440" y= "40" width= "230" height= "190" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-2" value= "" style= "rounded=0;whiteSpace=wrap;html=1;strokeWidth=4;fillColor=none;" parent= "tB5LUjmhD6zCi5oJ_og_-23" vertex= "1" >
<mxGeometry width= "230" height= "190" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-15 " value= "" style= "rounded=0;whiteSpace=wrap;html=1;strokeWidth=3;fillColor=none;" parent= "1 " vertex= "1" >
<mxGeometry x= "440" y= "40" width= "230" height= "2 90" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-3" value= "<b>CacheData </b>" style= "text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=default;strokeColor=default;strokeWidth=2;" parent= "tB5LUjmhD6zCi5oJ_og_-23 " vertex= "1" >
<mxGeometry width= "230" height= "40" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-16" value= "<b>Cache<br> </b>" style= "text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=default;strokeColor=default;strokeWidth=1;" parent= "1 " vertex= "1" >
<mxGeometry x= "440" y= "40" width= "230" height= "40" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-5" value= "CacheData(uint8_t* data, size_t size) " style= "text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;" parent= "tB5LUjmhD6zCi5oJ_og_-23 " vertex= "1" >
<mxGeometry y= "4 0" width= "230" height= "30" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-17" value= "Cache() = default " style= "text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;" parent= "1 " vertex= "1" >
<mxGeometry x= "440" y= "8 0" width= "230" height= "30" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-6" value= "CacheData(const CacheData&amp; other)" style= "text;html=1;strokeColor=#82b366;fillColor=#d5e8d4 ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-23 " vertex= "1" >
<mxGeometry y= "70 " width= "230" height= "30" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-18" value= "void Flush(int node = -1)" style= "text;html=1;strokeColor=#d6b656;fillColor=#fff2cc ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1 " vertex= "1" >
<mxGeometry x= "440" y= "245 " width= "230" height= "30" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-7 " value= "~CacheData ()" style= "text;html=1;strokeColor=#82b366;fillColor=#d5e8d4 ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-23 " vertex= "1" >
<mxGeometry y= "10 0" width= "230" height= "30" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-19 " value= "~Cache()" style= "text;html=1;strokeColor=#b85450;fillColor=#f8cecc ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1 " vertex= "1" >
<mxGeometry x= "440" y= "11 0" width= "230" height= "30" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-8" value= "void WaitOnCompletion()" style= "text;html=1;strokeColor=#82b366;fillColor=#d5e8d4 ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-23 " vertex= "1" >
<mxGeometry y= "13 0" width= "230" height= "3 0" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-20" value= "void Init(CachePolicy*, CopyPolicy*, MemFree*, MemAlloc*)" style= "text;html=1;strokeColor=#b85450;fillColor=#f8cecc ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1 " vertex= "1" >
<mxGeometry x= "440" y= "14 0" width= "230" height= "6 0" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-9 " value= "" style= "endArrow=none;html=1;rounded=0;exitX=1;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0;entryDx=0;entryDy=0;strokeWidth=2;strokeColor=none;" parent= "tB5LUjmhD6zCi5oJ_og_-23" source= "tB5LUjmhD6zCi5oJ_og_-8" target= "tB5LUjmhD6zCi5oJ_og_-8 " edge= "1" >
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-21 " value= "" style= "endArrow=none;html=1;rounded=0;exitX=1;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0;entryDx=0;entryDy=0;strokeWidth=2;strokeColor=none;" parent= "1" source= "tB5LUjmhD6zCi5oJ_og_-20" target= "tB5LUjmhD6zCi5oJ_og_-20 " edge= "1" >
<mxGeometry width= "50" height= "50" relative= "1" as= "geometry" >
<mxGeometry width= "50" height= "50" relative= "1" as= "geometry" >
<mxPoint x= "530" y= "37 0" as= "sourcePoint" />
<mxPoint x= "580" y= "32 0" as= "targetPoint" />
<mxPoint x= "970" y= "41 0" as= "sourcePoint" />
<mxPoint x= "1020" y= "36 0" as= "targetPoint" />
</mxGeometry>
</mxGeometry>
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-11" value= "uint8_t* GetDataLocation() const" style= "text;html=1;strokeColor=#82b366;fillColor=#d5e8d4 ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-23 " vertex= "1" >
<mxGeometry y= "160 " width= "230" height= "3 0" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-22" value= "std::unique_ptr&lt;CacheData&gt; Access(uint8_t* data, size_t size)" style= "text;html=1;strokeColor=#d6b656;fillColor=#fff2cc ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1 " vertex= "1" >
<mxGeometry x= "440" y= "195 " width= "230" height= "5 0" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-26 " value= "" style= "group;fillColor=#fff2cc;strokeColor=#d6b656 ;" parent= "1" vertex= "1" connectable= "0 " >
<mxGeometry x= "440" y= "40 " width= "230" height= "27 0" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-24 " value= "void Clear() " style= "text;html=1;strokeColor=#d6b656;fillColor=#fff2cc;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0 ;" parent= "1" vertex= "1" >
<mxGeometry x= "440" y= "275 " width= "230" height= "3 0" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-14 " value= "" style= "rounded=0;whiteSpace=wrap;html=1;" parent= "tB5LUjmhD6zCi5oJ_og_-26 " vertex= "1" >
<mxGeometry width= "230" height= "190 " as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-25 " value= "void Invalidate() " style= "text;html=1;strokeColor=#d6b656;fillColor=#fff2cc;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1 " vertex= "1" >
<mxGeometry x= "440" y= "305" width= "230" height= "25 " as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-15 " value= "" style= "rounded=0;whiteSpace=wrap;html=1;strokeWidth=4;fillColor=none; " parent= "tB5LUjmhD6zCi5oJ_og_-26 " vertex= "1" >
<mxGeometry width= "230" height= "27 0" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-1" value= "" style= "rounded=0;whiteSpace=wrap;html=1;" parent= "1 " vertex= "1" >
<mxGeometry x= "130" y= "40" width= "230" height= "19 0" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-16 " value= "<b>Cache<br></b>" style= "text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=default;strokeColor=default;strokeWidth=2;" parent= "tB5LUjmhD6zCi5oJ_og_-26 " vertex= "1" >
<mxGeometry width= "230" height= "4 0" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-2 " value= "" style= "rounded=0;whiteSpace=wrap;html=1;strokeWidth=3;fillColor=none;" parent= "1 " vertex= "1" >
<mxGeometry x= "130" y= "40" width= "230" height= "19 0" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-17" value= "Cache() = default " style= "text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;" parent= "tB5LUjmhD6zCi5oJ_og_-26 " vertex= "1" >
<mxGeometry y= "40" width= "230" height= "3 0" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-3" value= "<b>CacheData</b> " style= "text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=default;strokeColor=default;strokeWidth=1;" parent= "1 " vertex= "1" >
<mxGeometry x= "130" y= "40" width= "230" height= "4 0" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-18" value= "void Flush(int node = -1 )" style= "text;html=1;strokeColor=#d6b656;fillColor=#fff2cc; align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-26 " vertex= "1" >
<mxGeometry y= "1 80" width= "230" height= "30" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-5" value= "CacheData(uint8_t* data, size_t size )" style= "text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666; " parent= "1 " vertex= "1" >
<mxGeometry x= "130" y= " 80" width= "230" height= "30" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-19 " value= "~ Cache()" style= "text;html=1;strokeColor=#b85450;fillColor=#f8cecc ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-26 " vertex= "1" >
<mxGeometry y= "7 0" width= "230" height= "30" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-6 " value= "CacheData (const CacheData&amp; other )" style= "text;html=1;strokeColor=#82b366;fillColor=#d5e8d4 ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1 " vertex= "1" >
<mxGeometry x= "130" y= "11 0" width= "230" height= "30" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-20" value= "void Init(CachePolicy*, CopyPolicy*)" style= "text;html=1;strokeColor=#b85450;fillColor=#f8cecc ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-26 " vertex= "1" >
<mxGeometry y= "10 0" width= "230" height= "30" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-7" value= "~CacheData()" style= "text;html=1;strokeColor=#82b366;fillColor=#d5e8d4 ;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1 " vertex= "1" >
<mxGeometry x= "130" y= "14 0" width= "230" height= "30" as= "geometry" />
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-21" value= "" style= "endArrow=none;html=1;rounded=0;exitX=1;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0;entryDx=0;entryDy=0;strokeWidth=2;strokeColor=none;" parent= "tB5LUjmhD6zCi5oJ_og_-26" source= "tB5LUjmhD6zCi5oJ_og_-20" target= "tB5LUjmhD6zCi5oJ_og_-20" edge= "1" >
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-8" value= "void WaitOnCompletion()" style= "text;html=1;strokeColor=#82b366;fillColor=#d5e8d4;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1" vertex= "1" >
<mxGeometry x= "130" y= "170" width= "230" height= "30" as= "geometry" />
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-9" value= "" style= "endArrow=none;html=1;rounded=0;exitX=1;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0;entryDx=0;entryDy=0;strokeWidth=2;strokeColor=none;" parent= "1" source= "tB5LUjmhD6zCi5oJ_og_-8" target= "tB5LUjmhD6zCi5oJ_og_-8" edge= "1" >
<mxGeometry width= "50" height= "50" relative= "1" as= "geometry" >
<mxGeometry width= "50" height= "50" relative= "1" as= "geometry" >
<mxPoint x= "530" y= "370" as= "sourcePoint" />
<mxPoint x= "580" y= "320" as= "targetPoint" />
<mxPoint x= "660" y= "41 0" as= "sourcePoint" />
<mxPoint x= "710" y= "36 0" as= "targetPoint" />
</mxGeometry>
</mxGeometry>
</mxCell>
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-22" value= "std::unique_ptr&lt;CacheData&gt; Access(uint8_t* data, size_t size)" style= "text;html=1;strokeColor=#d6b656;fillColor=#fff2cc;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-26" vertex= "1" >
<mxGeometry y= "130" width= "230" height= "50" as= "geometry" />
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-24" value= "void Clear()" style= "text;html=1;strokeColor=#d6b656;fillColor=#fff2cc;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-26" vertex= "1" >
<mxGeometry y= "210" width= "230" height= "30" as= "geometry" />
</mxCell>
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-25" value= "void Invalidate()" style= "text;html=1;strokeColor=#d6b656;fillColor=#fff2cc;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "tB5LUjmhD6zCi5oJ_og_-26" vertex= "1" >
<mxGeometry y= "240" width= "230" height= "30" as= "geometry" />
<mxCell id= "tB5LUjmhD6zCi5oJ_og_-11" value= "uint8_t* GetDataLocation() const" style= "text;html=1;strokeColor=#82b366;fillColor=#d5e8d4;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent= "1" vertex= "1" >
<mxGeometry x= "130" y= "200" width= "230" height= "30" as= "geometry" />
</mxCell>
</mxCell>
</root>
</root>
</mxGraphModel>
</mxGraphModel>