summaryrefslogtreecommitdiff
path: root/dmserializers/dmebaseimporter.h
diff options
context:
space:
mode:
Diffstat (limited to 'dmserializers/dmebaseimporter.h')
-rw-r--r--dmserializers/dmebaseimporter.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/dmserializers/dmebaseimporter.h b/dmserializers/dmebaseimporter.h
new file mode 100644
index 0000000..1a74d77
--- /dev/null
+++ b/dmserializers/dmebaseimporter.h
@@ -0,0 +1,43 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================
+
+#ifndef DMEBASEIMPORTER_H
+#define DMEBASEIMPORTER_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include "datamodel/idatamodel.h"
+
+class CDmeBaseImporter : public IDmLegacyUpdater
+{
+ typedef IDmLegacyUpdater BaseClass;
+
+public:
+ CDmeBaseImporter( char const *formatName, char const *nextFormatName );
+
+ virtual const char *GetName() const { return m_pFormatName; }
+ virtual bool IsLatestVersion() const;
+
+ virtual bool Update( CDmElement **ppRoot );
+
+private:
+ virtual bool DoFixup( CDmElement *pRoot ) = 0;
+
+protected:
+ char const *m_pFormatName;
+ char const *m_pNextSerializer;
+};
+
+class CSFMBaseImporter : public CDmeBaseImporter
+{
+ typedef CDmeBaseImporter BaseClass;
+
+public:
+ CSFMBaseImporter( char const *formatName, char const *nextFormatName );
+};
+
+#endif // DMEBASEIMPORTER_H