From 366749a6eb3f0313401d6824aabb041205c5506b Mon Sep 17 00:00:00 2001
From: Rojikku98 <be.edvin@gmail.com>
Date: Fri, 24 Jul 2020 11:31:50 +0200
Subject: [PATCH] Created IDAreplayobserver

---
 python-api-src/library.h  |  1 +
 src/IDAReplayObserver.cpp |  1 +
 src/IDAReplayObserver.h   | 41 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 43 insertions(+)
 create mode 100644 src/IDAReplayObserver.cpp
 create mode 100644 src/IDAReplayObserver.h

diff --git a/python-api-src/library.h b/python-api-src/library.h
index b5ba825..f6a9182 100644
--- a/python-api-src/library.h
+++ b/python-api-src/library.h
@@ -61,6 +61,7 @@ public:
     }
 };
 
+//todo fixa!
 class PyReplayObserver : public sc2::ReplayObserver
 {
 public:
diff --git a/src/IDAReplayObserver.cpp b/src/IDAReplayObserver.cpp
new file mode 100644
index 0000000..5a7885c
--- /dev/null
+++ b/src/IDAReplayObserver.cpp
@@ -0,0 +1 @@
+#include "IDAReplayObserver.h"
diff --git a/src/IDAReplayObserver.h b/src/IDAReplayObserver.h
new file mode 100644
index 0000000..39b9aa4
--- /dev/null
+++ b/src/IDAReplayObserver.h
@@ -0,0 +1,41 @@
+#pragma once
+
+#include <deque>
+#include <limits>
+
+#include "Common.h"
+
+#include "MapTools.h"
+#include "BaseLocationManager.h"
+#include "UnitInfoManager.h"
+#include "BuildingPlacer.h"
+#include "TechTree.h"
+#include "TechTreeImproved.h"
+#include "MetaType.h"
+#include "Unit.h"
+
+class IDAReplayObserver : public sc2::ReplayObserver
+{
+	MapTools                m_map;
+	BaseLocationManager     m_bases;
+	UnitInfoManager         m_unitInfo;
+	TechTree                m_techTree;
+	BuildingPlacer          m_buildingPlacer;
+
+	std::vector<Unit>       m_allUnits;
+	std::vector<CCPosition> m_baseLocations;
+
+	void setUnits();
+	void OnError(const std::vector<sc2::ClientError> & client_errors,
+		const std::vector<std::string> & protocol_errors = {}) override;
+
+public:
+	IDAReplayObserver();
+
+	void OnGameStart() override;
+	void OnStep() override;
+
+	const std::vector<Unit> & GetAllUnits() const;
+
+};
+
-- 
GitLab