title: Explanation of an RGB to BGR  C++ macro
body: <pre><code>#define RGB2BGR(a_ulColor) (a_ulColor &amp; 0xFF000000) | ((a_ulColor &amp; 0xFF0000) &gt;&gt; 16) | (a_ulColor &amp; 0x00FF00) | ((a_ulColor &amp; 0x0000FF) &lt;&lt; 16)
  </code></pre>
  
  <p>Can you please explain to me the meaning of this macro?</p>