<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://www.codingwiththomas.com/blog</loc>
    <changefreq>daily</changefreq>
    <priority>0.75</priority>
    <lastmod>2024-06-12</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/accessing-gccs-abstract-syntax-tree-with-a-gcc-plugin</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-06-12</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/how-to-write-a-c-test-framework</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/start-using-cucumber-part-2</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/lets-review-my-article-on-type-erasure</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/crafting-a-cucumber-interpreter-in-cc</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/my-sphinx-best-practice-for-a-multiversion-documentation-in-different-languages</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/585a7709-d48f-469f-a7b5-0c4f826bfbdf/default_sphinx_rtd.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/aa0e5b75-53d3-4cf3-9c05-ee942223df78/chapter1_2.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/40548302-60fc-49b6-905f-8c0bc52e564d/default_sphinx.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/13b3024c-422f-46f8-90a1-5ac8a9d675bc/chapter1_1.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/9d9ab2e2-43ad-4e38-90b4-459b5d171290/chapter1_4.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/14a201dc-37ca-4b19-bf76-928eee5aa3e9/chapter1_3.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/a4f19026-22de-48dd-b6e0-26b2ab382ccf/chapter1_6.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/c4b2240d-29ce-48f0-aca3-6e0f22046018/chapter1_7.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/2d1d8f10-fcbd-43a8-855b-b176fce4964b/final.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/8076111a-b9fc-41c6-a48a-fff059f8968c/chapter1_7.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/b4676b50-e8de-47a5-bab7-c855e4217f57/chapter1_5.png</image:loc>
      <image:title>Coding With Thomas - My Sphinx Best Practice Guide for Multi-version Documentation in Different Languages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/c-exploring-the-potential-about-a-find-wrapper</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/a-find-function-to-append-andthenorelse-in-c</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/c-breaking-dependencies-with-templates</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/f1d231b4-0a39-4922-9114-f73a4b7ece4d/interface-concrete.png</image:loc>
      <image:title>Coding With Thomas - [C++] Breaking Dependencies With Templates - Make it stand out</image:title>
      <image:caption>A simple example: We want to send a text notification to a GUI, to display it to a user</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/a-std-tuple-to-concatenate-validation-criteria</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/rendering-an-opengl-framebuffer-into-a-dear-imgui-window</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/15526453-9ba9-482e-abd7-6c300adab6d1/image2.png</image:loc>
      <image:title>Coding With Thomas - [C++] Rendering An OpenGL Framebuffer Into A Dear ImGui Window - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/d09fe155-41b2-4255-b75a-0ae0b5400fbd/image4.png</image:loc>
      <image:title>Coding With Thomas - [C++] Rendering An OpenGL Framebuffer Into A Dear ImGui Window - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/d71db641-2d3a-4dcd-9452-3b8f37a56aa3/image1.png</image:loc>
      <image:title>Coding With Thomas - [C++] Rendering An OpenGL Framebuffer Into A Dear ImGui Window - Make it stand out</image:title>
      <image:caption>The final result will render the triangle into the ImGui window</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/e22aeb08-49d5-4503-8417-eb4970ab70f2/image3.png</image:loc>
      <image:title>Coding With Thomas - [C++] Rendering An OpenGL Framebuffer Into A Dear ImGui Window - Make it stand out</image:title>
      <image:caption>You can move this Dear ImGui window around your screen and also out of the main window here.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/user-defined-literals-to-handle-units</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/use-entt-when-you-need-an-ecs</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/85b89f76-971b-4c5e-9625-9e9835a6b835/bird_game.png</image:loc>
      <image:title>Coding With Thomas - [C++] Use EnTT When You Need An ECS - Make it stand out</image:title>
      <image:caption>There we are, we have now integrated EnTT</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/an-entity-component-system-from-scratch</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/6df39d03-5552-4dd9-8401-a255e5081ee4/emptysdlwindow.png</image:loc>
      <image:title>Coding With Thomas - [C++] An Entity-Component-System From Scratch - Make it stand out</image:title>
      <image:caption>It’s quite simple and nice, but I’m not gonna lie it is not the most exciting window …</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/05bd2e5d-be80-4ac9-ace1-0768a350420a/entitiescomponents.png</image:loc>
      <image:title>Coding With Thomas - [C++] An Entity-Component-System From Scratch - Make it stand out</image:title>
      <image:caption>These entites could describe Mario (1), the item box (2) and HUD items (2)</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/ec3e5d76-0c98-4056-9882-8e0c9d44a7bd/mario.png</image:loc>
      <image:title>Coding With Thomas - [C++] An Entity-Component-System From Scratch - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/5adf0b06-dd91-4ab4-94bd-8905cc0cdd31/bird.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] An Entity-Component-System From Scratch - Make it stand out</image:title>
      <image:caption>And that’s the bird, which you can move with A, S, D and W</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/crtp-for-mixin-classes</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/combine-type-erasure-and-strategies</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/use-type-erasure-to-get-dynamic-polymorphic-behavior</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/c-genetic-algorithm</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/96c20049-685e-4dfa-9d54-29cc370f457c/2.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Genetic Algorithm - Make it stand out</image:title>
      <image:caption>And notice the green highilighted squares, by assigning random values we have some hits already.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/1699dddf-429e-4585-890f-222aab1f1b95/1.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Genetic Algorithm - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/e5d6525a-189e-4939-8289-4ad35da26326/4.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Genetic Algorithm - Make it stand out</image:title>
      <image:caption>In this illustration we only considering the strongest individuals, but the crossover ratio refers to the entire population</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/b85b1e2b-dda0-4b37-ab5e-85f4d9816985/3.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Genetic Algorithm - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/d90eade6-16f5-469f-82e3-cc7a4f4621dd/6.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Genetic Algorithm - Make it stand out</image:title>
      <image:caption>Now we have on top the strongest “survivors” from the 1. Generation and create the 2. Generation</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/60b2307b-7676-4331-94cd-6f986359865b/5.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Genetic Algorithm - Make it stand out</image:title>
      <image:caption>Our child just mutated. Can be good or not, evolution decides …</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/coroutines-what-are-they-and-what-we-have-in-cpp20</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/9d9206c1-9848-4ab7-b7b9-73142ac4dc63/coroutines.PNG</image:loc>
      <image:title>Coding With Thomas - [Typescript/C++]: Coroutines: What are they and what we have in C++20 - Make it stand out</image:title>
      <image:caption>On the left we have a traditional function call and on the right we have a coroutine illustrated.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/windows-docker-container-in-gitlab-with-conan-packages</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/boost-asio-server-client-example</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/78c2356d-1c05-4504-8f87-f1e68ba903b7/runningserverclient.png</image:loc>
      <image:title>Coding With Thomas - [C++] A Boost Asio Server-Client Example - Make it stand out</image:title>
      <image:caption>On the left side we have the server which received the data from the client on the right. As far as I know, the displayed error means that the client closed the socket.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/c-static-dynamic-polymorphism-crtp-and-c20s-concepts</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/typescript-vs-code-api-lets-create-a-tree-view-part-3</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/21644510-8619-434d-82b6-2282de8c2e94/final_example.png</image:loc>
      <image:title>Coding With Thomas - [TypeScript] VS Code API: Let’s Create  A Tree-View (Part 3) - Make it stand out</image:title>
      <image:caption>The final TreeView: We have all our tests from the opened project and their results displayed with the icons (passed, failed and unknown step). We can run all tests with the play button on top or single features/scenarios with the context menu</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/bde0c750-cb55-4848-b2f1-5bb411a569a2/Capture.PNG</image:loc>
      <image:title>Coding With Thomas - [TypeScript] VS Code API: Let’s Create  A Tree-View (Part 3) - Make it stand out</image:title>
      <image:caption>The final result of the TreeView</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/typescript-vs-code-api-lets-create-a-tree-view-part-2</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/63f796cf-27c8-412b-a164-b6050f1f6112/context_menu_2.png</image:loc>
      <image:title>Coding With Thomas - [TypeScript] VS Code API: Let’s Create  A Tree-View (Part 2) - Make it stand out</image:title>
      <image:caption>After clicking some items, we can see command0 or command_1 is called with the appropriate item.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/aa1f56c6-707f-49e9-b663-447cdb392365/on_item_clicked.png</image:loc>
      <image:title>Coding With Thomas - [TypeScript] VS Code API: Let’s Create  A Tree-View (Part 2) - Make it stand out</image:title>
      <image:caption>And that is it. After clicking on an item we open the appropriate file and set the cursor at the end of the line.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/1e5fd277-fc65-4f76-840e-a5837428a234/context_menu_1.png</image:loc>
      <image:title>Coding With Thomas - [TypeScript] VS Code API: Let’s Create  A Tree-View (Part 2) - Make it stand out</image:title>
      <image:caption>And this is our created context menu</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/typescript-vs-code-api-lets-create-a-tree-view-part-1</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/0204cb04-7505-435b-88e0-39b083ff7bbf/result_part1.png</image:loc>
      <image:title>Coding With Thomas - [TypeScript] VS-Code API: Let’s Create A Tree-View (Part 1) - Make it stand out</image:title>
      <image:caption>This is the result of this article, we parse all *.feature files in our directory and diesplay Features and Scenarios in our own navigation menu</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/f969e75f-fc24-4ef5-8182-ad933c52bd40/vscode-empty.png</image:loc>
      <image:title>Coding With Thomas - [TypeScript] VS-Code API: Let’s Create A Tree-View (Part 1) - Make it stand out</image:title>
      <image:caption>There we have it, we have our extension in the navigation bar and the refresh button is on the upper right of our tree view.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/0204cb04-7505-435b-88e0-39b083ff7bbf/result_part1.png</image:loc>
      <image:title>Coding With Thomas - [TypeScript] VS-Code API: Let’s Create A Tree-View (Part 1) - Make it stand out</image:title>
      <image:caption>And there is our tree view which displays all our features and their scenarios</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/building-and-publishing-conan-packages-on-artifactory</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/01b5d45f-2031-47ff-8c56-7ea013e74531/art.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Building And Publishing Conan Packages - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/74d28873-08a7-4c9a-a251-116d3e716e42/artifactory2.png</image:loc>
      <image:title>Coding With Thomas - [C++] Building And Publishing Conan Packages - Make it stand out</image:title>
      <image:caption>We only need to provide a repository key</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/ddebf3ee-2997-4d9e-a37f-9055987e3619/artifactory3.png</image:loc>
      <image:title>Coding With Thomas - [C++] Building And Publishing Conan Packages - Make it stand out</image:title>
      <image:caption>And there we have our repository in which we publish our library</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/315b68c7-8017-4f38-9a71-5eee2c9c018a/artifactory.png</image:loc>
      <image:title>Coding With Thomas - [C++] Building And Publishing Conan Packages - Make it stand out</image:title>
      <image:caption>Create a new package and select type conan</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/start-using-cucumber</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/2d355548-4a7a-445f-aee0-8ce55e28e454/cucumber-run.png</image:loc>
      <image:title>Coding With Thomas - [C++] Start Using Cucumber - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/b6dafa5a-f52c-46c7-930b-bfa7b78c1607/cucumber-build.png</image:loc>
      <image:title>Coding With Thomas - [C++] Start Using Cucumber - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/783be115-2e8f-40b4-8f8b-0be1665bfd74/result.png</image:loc>
      <image:title>Coding With Thomas - [C++] Start Using Cucumber - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/a-cpp17-statemachine-with-tuple-and-variant</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/e5b2ee1f-574e-4ee1-a0b1-367bf6bc6820/statemachine.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] A C++17 Statemachine using std::tuple and std::variant - Make it stand out</image:title>
      <image:caption>A simple statemachine with two states, where each states runs it’s own update method and transitions.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tuples-from-scratch</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/getting-started-with-typelists</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag-dispatching-to-overload-functions</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/function-overloading-by-returntype</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/2d-game-engine-starting-a-new-project</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/96a282e8-9493-48c5-bf33-4a38af414c54/coverage.PNG</image:loc>
      <image:title>Coding With Thomas - [2D Game Engine] Starting A New Project - The Project Setup - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/a-lua-c-api-cheat-sheet</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/be4d3700-03a4-489a-9db0-fa7a77fe363b/Lua+Stack.png</image:loc>
      <image:title>Coding With Thomas - [C/C++] A Lua C API Cheat Sheet - Make it stand out</image:title>
      <image:caption>Presume you have some Lua getter function in you C/C++ application on the left. The first call is to access foo, the second for bar and the third for baz foo, bar and baz are variables from your Lua script on the right. In the middle you have the Lua stack Each value is pushed to the stack with the C/C++ getter call. Each value has one index, regardless of the type (like an array, struct/table, string, integer, etc.) Each value is then accessible with the according index Positive indices starting from bottom to top Negative indices starting from top to bottom</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/an-eventsystem-without-std-bind-and-std-function</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/typed-tests-for-interfaces-with-googletest</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/063eb9d5-145e-41ce-bbcc-0c658a0d7d0c/out4.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Typed Tests For Interfaces With Googletest - Make it stand out</image:title>
      <image:caption>We can see both tests running. XML and JSON files are parsed and checked against the hardcoded test books. If we’d have errors in the XML/JSON parsing the test would fail.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/use-frameworks-but-dont-marry-them</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/protobuf-project-setup-with-conan-and-cmake</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/cbdecfbc-f513-4830-996f-e20b5d4b03c6/out.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Protobuf: Project Setup With Conan and CMake - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/getting-started-with-conan</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
    <lastmod>2024-05-09</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/f8b59b7c-8abb-4432-a1d0-09914ba13646/first+output.PNG</image:loc>
      <image:title>Coding With Thomas - [C++] Getting Started With Conan - Make it stand out</image:title>
      <image:caption>Whatever it is, the way you tell your story online can make all the difference.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/protobuf</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/algorithms</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/c%2B%2B</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/cucumber</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/clean-code</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/conan</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/best-practices</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/type</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/docker</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/tuple</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/gtest</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/deisgn-pattern</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/typescript</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/events</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/cpp</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/bdd</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/unittests</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/testing</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/cicd</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/vs-code-api</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/opengl</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/type-erasure</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/dearimgui</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/cmake</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/lua</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/blog/tag/gitlab</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/about-me</loc>
    <changefreq>daily</changefreq>
    <priority>0.75</priority>
    <lastmod>2023-11-24</lastmod>
    <image:image>
      <image:loc>https://images.squarespace-cdn.com/content/v1/61c3a461d6aa2a5c89eea6a5/190d4401-f058-4625-96d9-899cf4aad30f/5CB44531-B411-4276-B644-33386C5D0708.jpeg</image:loc>
      <image:title>About Me - Hi everyone!</image:title>
      <image:caption>I am Thomas and I am writing on this blog. I started this blog to write about some software topics. The general purpose is to learn and improve. Maybe you can give me feedback and I'll get better, or maybe I can teach others something. On the other hand, I will have a better understanding of code if I write about it. So always feel free to leave me a comment or give me feedback. If you’re more interested about my career, check out my LinkedIn profile.</image:caption>
    </image:image>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/contact</loc>
    <changefreq>daily</changefreq>
    <priority>0.75</priority>
    <lastmod>2025-11-25</lastmod>
  </url>
  <url>
    <loc>https://www.codingwiththomas.com/home</loc>
    <changefreq>daily</changefreq>
    <priority>1.0</priority>
    <lastmod>2025-11-25</lastmod>
  </url>
</urlset>

