Reland^2: Use "gfxstream" namespace

This reverts commit 222fce475152963a3171d4796e8d3491304be577.

Reland adds in aosp/2516595 which was only built on the "full"
target and removes namespace around window methods to satisfy
MacOS build.

Bug: b/271464937
Test: android build
Test: cmake build
Change-Id: I76b359cade2a5827280bccc0409333330b5f318e
diff --git a/registry/vulkan/scripts/cereal/decoder.py b/registry/vulkan/scripts/cereal/decoder.py
index 3e826c9..6c7ee38 100644
--- a/registry/vulkan/scripts/cereal/decoder.py
+++ b/registry/vulkan/scripts/cereal/decoder.py
@@ -26,8 +26,13 @@
 
 decoder_decl_preamble = """
 
-class ProcessResources;
+namespace gfxstream {
 class IOStream;
+class ProcessResources;
+}  // namespace gfxstream
+
+namespace gfxstream {
+namespace vk {
 
 class VkDecoder {
 public:
@@ -40,14 +45,18 @@
     class Impl;
     std::unique_ptr<Impl> mImpl;
 };
+
+}  // namespace vk
+}  // namespace gfxstream
+
 """
 
 decoder_impl_preamble ="""
+namespace gfxstream {
+namespace vk {
+
 using android::base::MetricEventBadPacketLength;
 using android::base::MetricEventDuplicateSequenceNum;
-using emugl::vkDispatch;
-
-using namespace goldfish_vk;
 
 class VkDecoder::Impl {
 public:
@@ -104,6 +113,13 @@
 // VkDecoder::Impl::decode to follow
 """ % (VULKAN_STREAM_TYPE, VULKAN_STREAM_TYPE)
 
+decoder_impl_postamble = """
+
+}  // namespace vk
+}  // namespace gfxstream
+
+"""
+
 READ_STREAM = "vkReadStream"
 WRITE_STREAM = "vkStream"
 
@@ -897,3 +913,4 @@
         self.cgen.stmt("return ptr - (unsigned char*)buf;")
         self.cgen.endBlock() # function body
         self.module.appendImpl(self.cgen.swapCode())
+        self.module.appendImpl(decoder_impl_postamble)
diff --git a/registry/vulkan/scripts/cereal/decodersnapshot.py b/registry/vulkan/scripts/cereal/decodersnapshot.py
index f4dc6d6..4ff97a1 100644
--- a/registry/vulkan/scripts/cereal/decodersnapshot.py
+++ b/registry/vulkan/scripts/cereal/decodersnapshot.py
@@ -39,7 +39,7 @@
 
 decoder_snapshot_impl_preamble ="""
 
-using namespace goldfish_vk;
+using namespace gfxstream::vk;
 using emugl::GfxApiLogger;
 using emugl::HealthMonitor;
 
diff --git a/registry/vulkan/scripts/cereal/encoder.py b/registry/vulkan/scripts/cereal/encoder.py
index 108d122..d3e3974 100644
--- a/registry/vulkan/scripts/cereal/encoder.py
+++ b/registry/vulkan/scripts/cereal/encoder.py
@@ -38,7 +38,7 @@
 
 encoder_impl_preamble ="""
 
-using namespace goldfish_vk;
+using namespace gfxstream::vk;
 
 using android::base::guest::AutoLock;
 using android::base::guest::Lock;
diff --git a/registry/vulkan/scripts/cerealgenerator.py b/registry/vulkan/scripts/cerealgenerator.py
index ad5aab7..988cda4 100644
--- a/registry/vulkan/scripts/cerealgenerator.py
+++ b/registry/vulkan/scripts/cerealgenerator.py
@@ -325,11 +325,13 @@
         dispatchHeaderDefs = f"""
 {self.hostCommonExtraVulkanHeaders}
 #include "goldfish_vk_private_defs.h"
-namespace goldfish_vk {{
+namespace gfxstream {{
+namespace vk {{
 
 struct VulkanDispatch;
 
-}} // namespace goldfish_vk
+}} // namespace vk
+}} // namespace gfxstream
 using DlOpenFunc = void* (void);
 using DlSymFunc = void* (void*, const char*);
 """
@@ -652,8 +654,16 @@
                 autogeneratedHeaderTemplate % \
                 (basename, "(header) generated by %s" % banner_command(sys.argv))
 
-        namespaceBegin = "namespace goldfish_vk {" if useNamespace else ""
-        namespaceEnd = "} // namespace goldfish_vk" if useNamespace else ""
+
+        namespaceBegin = """
+namespace gfxstream {
+namespace vk {
+""" if useNamespace else ""
+
+        namespaceEnd = """
+}  // namespace vk"
+}  // namespace gfxstream
+""" if useNamespace else ""
 
         module.headerPreamble += "#pragma once\n"
         if (not suppressVulkanHeaders):