diff --git a/code/nel/tools/pipeline/max/dll_directory.cpp b/code/nel/tools/pipeline/max/dll_directory.cpp
index d1cfe2c85..3449bfda4 100644
--- a/code/nel/tools/pipeline/max/dll_directory.cpp
+++ b/code/nel/tools/pipeline/max/dll_directory.cpp
@@ -42,6 +42,10 @@ using namespace std;
namespace PIPELINE {
namespace MAX {
+////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////
+
CDllDirectory::CDllDirectory()
{
@@ -250,6 +254,13 @@ IStorageObject *CDllDirectory::createChunkById(uint16 id, bool container)
return CStorageContainer::createChunkById(id, container);
}
+////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////
+// Entries[5]: (DllEntry) [2] PARSED {
+// DllDescription: ...
+// DllFilename: ... }
+
CDllEntry::CDllEntry() : m_DllDescription(NULL), m_DllFilename(NULL)
{
@@ -273,7 +284,7 @@ void CDllEntry::toString(std::ostream &ostream, const std::string &pad)
std::string padpad = pad + "\t";
ostream << "\n" << pad << "DllDescription: " << m_DllDescription->Value.toUtf8();
ostream << "\n" << pad << "DllFilename: " << m_DllFilename->Value.toUtf8();
- ostream << "} ";
+ ostream << " } ";
}
else
{
@@ -329,6 +340,10 @@ IStorageObject *CDllEntry::createChunkById(uint16 id, bool container)
return CStorageContainer::createChunkById(id, container);
}
+////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////
+
} /* namespace MAX */
} /* namespace PIPELINE */
diff --git a/code/nel/tools/pipeline/max/dll_plugin_desc.cpp b/code/nel/tools/pipeline/max/dll_plugin_desc.cpp
new file mode 100644
index 000000000..31bf801ba
--- /dev/null
+++ b/code/nel/tools/pipeline/max/dll_plugin_desc.cpp
@@ -0,0 +1,71 @@
+/**
+ * \file dll_plugin_desc.cpp
+ * \brief CDllPluginDesc
+ * \date 2012-08-20 09:59GMT
+ * \author Jan Boon (Kaetemi)
+ * CDllPluginDesc
+ */
+
+/*
+ * Copyright (C) 2012 by authors
+ *
+ * This file is part of RYZOM CORE PIPELINE.
+ * RYZOM CORE PIPELINE is free software: you can redistribute it
+ * and/or modify it under the terms of the GNU Affero General Public
+ * License as published by the Free Software Foundation, either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * RYZOM CORE PIPELINE is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with RYZOM CORE PIPELINE. If not, see
+ * .
+ */
+
+#include
+#include "dll_plugin_desc.h"
+
+// STL includes
+
+// NeL includes
+// #include
+
+// Project includes
+
+// using namespace std;
+// using namespace NLMISC;
+
+namespace PIPELINE {
+namespace MAX {
+
+const ucchar *CDllPluginDescBuiltin::displayName() const
+{
+ static const ucstring value = ucstring("Builtin");
+ return value.c_str();
+}
+
+const ucchar *CDllPluginDescBuiltin::internalName() const
+{
+ static const ucstring value = ucstring("Builtin");
+ return value.c_str();
+}
+
+const ucchar *CDllPluginDescScript::displayName() const
+{
+ static const ucstring value = ucstring("Script");
+ return value.c_str();
+}
+
+const ucchar *CDllPluginDescScript::internalName() const
+{
+ static const ucstring value = ucstring("Script");
+ return value.c_str();
+}
+
+} /* namespace MAX */
+} /* namespace PIPELINE */
+
+/* end of file */
diff --git a/code/nel/tools/pipeline/max/dll_plugin_desc.h b/code/nel/tools/pipeline/max/dll_plugin_desc.h
new file mode 100644
index 000000000..26bcf6ded
--- /dev/null
+++ b/code/nel/tools/pipeline/max/dll_plugin_desc.h
@@ -0,0 +1,103 @@
+/**
+ * \file dll_plugin_desc.h
+ * \brief CDllPluginDesc
+ * \date 2012-08-20 09:59GMT
+ * \author Jan Boon (Kaetemi)
+ * CDllPluginDesc
+ */
+
+/*
+ * Copyright (C) 2012 by authors
+ *
+ * This file is part of RYZOM CORE PIPELINE.
+ * RYZOM CORE PIPELINE is free software: you can redistribute it
+ * and/or modify it under the terms of the GNU Affero General Public
+ * License as published by the Free Software Foundation, either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * RYZOM CORE PIPELINE is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with RYZOM CORE PIPELINE. If not, see
+ * .
+ */
+
+#ifndef PIPELINE_DLL_PLUGIN_DESC_H
+#define PIPELINE_DLL_PLUGIN_DESC_H
+#include
+
+// STL includes
+
+// NeL includes
+#include
+
+// Project includes
+
+namespace PIPELINE {
+namespace MAX {
+
+/**
+ * \brief IDllPluginDescInternal
+ * \date 2012-08-20 09:59GMT
+ * \author Jan Boon (Kaetemi)
+ * Used for internal plugin descriptions that have no actual plugin
+ * associated with them.
+ */
+class IDllPluginDescInternal
+{
+public:
+ virtual const ucchar *displayName() const = 0;
+ virtual const ucchar *internalName() const = 0;
+
+}; /* class IDllPluginDescInternal */
+
+/**
+ * \brief IDllPluginDesc
+ * \date 2012-08-20 09:59GMT
+ * \author Jan Boon (Kaetemi)
+ * Inherit from this when making a plugin
+ */
+class IDllPluginDesc : public IDllPluginDescInternal
+{
+public:
+ // virtual const ucchar *displayName() const = 0;
+ // virtual const ucchar *internalName() const = 0;
+ // TODO: list scene classes
+
+}; /* class IDllPluginDesc */
+
+/**
+ * \brief CDllPluginDescBuiltin
+ * \date 2012-08-20 09:59GMT
+ * \author Jan Boon (Kaetemi)
+ * Use only internally for builtin classes
+ * TODO: Move to separate header?
+ */
+class CDllPluginDescBuiltin : public IDllPluginDescInternal
+{
+ virtual const ucchar *displayName() const;
+ virtual const ucchar *internalName() const;
+}; /* class CDllPluginDescBuiltin */
+
+/**
+ * \brief CDllPluginDescScript
+ * \date 2012-08-20 09:59GMT
+ * \author Jan Boon (Kaetemi)
+ * Use only internally for scripts
+ * TODO: Move to separate header?
+ */
+class CDllPluginDescScript : public IDllPluginDescInternal
+{
+ virtual const ucchar *displayName() const;
+ virtual const ucchar *internalName() const;
+}; /* class CDllPluginDescScript */
+
+} /* namespace MAX */
+} /* namespace PIPELINE */
+
+#endif /* #ifndef PIPELINE_DLL_PLUGIN_DESC_H */
+
+/* end of file */
diff --git a/code/nel/tools/pipeline/max/scene_class.h b/code/nel/tools/pipeline/max/scene_class.h
index 14cc17471..43e4431d2 100644
--- a/code/nel/tools/pipeline/max/scene_class.h
+++ b/code/nel/tools/pipeline/max/scene_class.h
@@ -118,23 +118,6 @@ public:
}; /* class CSceneClassDesc */
-/**
- * \brief CSceneClassRegistry
- * \date 2012-08-19 19:25GMT
- * \author Jan Boon (Kaetemi)
- * CSceneClassRegistry
- */
-class CSceneClassRegistry
-{
-public:
- void add(const NLMISC::CClassId, const ISceneClassDesc *desc);
- void remove(const NLMISC::CClassId);
- CSceneClass *create(const NLMISC::CClassId classid) const;
- void destroy(CSceneClass *sceneClass) const;
- const ISceneClassDesc *describe(const NLMISC::CClassId classid) const;
-
-}; /* class ISceneClassConstructor */
-
} /* namespace MAX */
} /* namespace PIPELINE */
diff --git a/code/nel/tools/pipeline/max/scene_class_registry.cpp b/code/nel/tools/pipeline/max/scene_class_registry.cpp
new file mode 100644
index 000000000..922f8afeb
--- /dev/null
+++ b/code/nel/tools/pipeline/max/scene_class_registry.cpp
@@ -0,0 +1,57 @@
+/**
+ * \file scene_class_registry.cpp
+ * \brief CSceneClassRegistry
+ * \date 2012-08-20 09:57GMT
+ * \author Jan Boon (Kaetemi)
+ * CSceneClassRegistry
+ */
+
+/*
+ * Copyright (C) 2012 by authors
+ *
+ * This file is part of RYZOM CORE PIPELINE.
+ * RYZOM CORE PIPELINE is free software: you can redistribute it
+ * and/or modify it under the terms of the GNU Affero General Public
+ * License as published by the Free Software Foundation, either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * RYZOM CORE PIPELINE is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with RYZOM CORE PIPELINE. If not, see
+ * .
+ */
+
+#include
+#include "scene_class_registry.h"
+
+// STL includes
+
+// NeL includes
+// #include
+
+// Project includes
+
+using namespace std;
+// using namespace NLMISC;
+
+namespace PIPELINE {
+namespace MAX {
+
+CSceneClassRegistry::CSceneClassRegistry()
+{
+
+}
+
+CSceneClassRegistry::~CSceneClassRegistry()
+{
+
+}
+
+} /* namespace MAX */
+} /* namespace PIPELINE */
+
+/* end of file */
diff --git a/code/nel/tools/pipeline/max/scene_class_registry.h b/code/nel/tools/pipeline/max/scene_class_registry.h
new file mode 100644
index 000000000..37b52ccf9
--- /dev/null
+++ b/code/nel/tools/pipeline/max/scene_class_registry.h
@@ -0,0 +1,67 @@
+/**
+ * \file scene_class_registry.h
+ * \brief CSceneClassRegistry
+ * \date 2012-08-20 09:57GMT
+ * \author Jan Boon (Kaetemi)
+ * CSceneClassRegistry
+ */
+
+/*
+ * Copyright (C) 2012 by authors
+ *
+ * This file is part of RYZOM CORE PIPELINE.
+ * RYZOM CORE PIPELINE is free software: you can redistribute it
+ * and/or modify it under the terms of the GNU Affero General Public
+ * License as published by the Free Software Foundation, either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * RYZOM CORE PIPELINE is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with RYZOM CORE PIPELINE. If not, see
+ * .
+ */
+
+#ifndef PIPELINE_SCENE_CLASS_REGISTRY_H
+#define PIPELINE_SCENE_CLASS_REGISTRY_H
+#include
+
+// STL includes
+
+// NeL includes
+
+// Project includes
+#include "scene_class.h"
+
+namespace PIPELINE {
+namespace MAX {
+
+/**
+ * \brief CSceneClassRegistry
+ * \date 2012-08-20 09:57GMT
+ * \author Jan Boon (Kaetemi)
+ * CSceneClassRegistry
+ */
+class CSceneClassRegistry
+{
+public:
+ CSceneClassRegistry();
+ virtual ~CSceneClassRegistry();
+
+ void add(const NLMISC::CClassId, const ISceneClassDesc *desc);
+ void remove(const NLMISC::CClassId);
+ CSceneClass *create(const NLMISC::CClassId classid) const;
+ void destroy(CSceneClass *sceneClass) const;
+ const ISceneClassDesc *describe(const NLMISC::CClassId classid) const;
+
+}; /* class CSceneClassRegistry */
+
+} /* namespace MAX */
+} /* namespace PIPELINE */
+
+#endif /* #ifndef PIPELINE_SCENE_CLASS_REGISTRY_H */
+
+/* end of file */