hl2_src-leak-2017/src/dmserializers/dmebaseimporter.h

44 lines
954 B
C++

//========= 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