Irrlicht 3D Engine
ISceneUserDataSerializer.h
Go to the documentation of this file.
00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt
00002 // This file is part of the "Irrlicht Engine".
00003 // For conditions of distribution and use, see copyright notice in irrlicht.h
00004 
00005 #ifndef __I_SCENE_USER_DATA_SERIALIZER_H_INCLUDED__
00006 #define __I_SCENE_USER_DATA_SERIALIZER_H_INCLUDED__
00007 
00008 #include "IReferenceCounted.h"
00009 
00010 namespace irr
00011 {
00012 namespace io
00013 {
00014     class IAttributes;
00015 } // end namespace io
00016 namespace scene
00017 {
00018     class ISceneNode;
00019 
00021 
00024 class ISceneUserDataSerializer
00025 {
00026 public:
00027 
00028     virtual ~ISceneUserDataSerializer() {}
00029 
00031     virtual void OnCreateNode(ISceneNode* node) = 0;
00032     
00034 
00036     virtual void OnReadUserData(ISceneNode* forSceneNode, io::IAttributes* userData) = 0;
00037 
00039 
00044     virtual io::IAttributes* createUserData(ISceneNode* forSceneNode) = 0;
00045 };
00046 
00047 } // end namespace scene
00048 } // end namespace irr
00049 
00050 #endif
00051