Added: #1440 Skeleton for superclasses

--HG--
branch : build_pipeline_v3
hg/feature/build_pipeline_v3
kaetemi 13 years ago
parent 9775de10ea
commit 6520b793ad

@ -14,8 +14,8 @@ ENDIF (NOT GLIB2_FOUND)
INCLUDE_DIRECTORIES(${GLIB2_INCLUDE_DIRS})
INCLUDE_DIRECTORIES(${LIBGSF_INCLUDE_DIR})
FILE(GLOB SRCS *.cpp builtin/*.cpp)
FILE(GLOB HDRS *.h builtin/*.h)
FILE(GLOB SRCS *.cpp builtin/*.cpp builtin/storage/*.cpp)
FILE(GLOB HDRS *.h builtin/*.h builtin/storage/*.h)
NL_TARGET_LIB(pipeline_max
${SRCS}

@ -0,0 +1,59 @@
/**
* \file animatable.cpp
* \brief CAnimatable
* \date 2012-08-22 08:52GMT
* \author Jan Boon (Kaetemi)
* CAnimatable
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "animatable.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CAnimatable::CAnimatable()
{
}
CAnimatable::~CAnimatable()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file animatable.h
* \brief CAnimatable
* \date 2012-08-22 08:52GMT
* \author Jan Boon (Kaetemi)
* CAnimatable
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_ANIMATABLE_H
#define PIPELINE_ANIMATABLE_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "../scene_class.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CAnimatable
* \date 2012-08-22 08:52GMT
* \author Jan Boon (Kaetemi)
* This scene class owns the AppData chunk
*/
class CAnimatable : public CSceneClass
{
public:
CAnimatable();
virtual ~CAnimatable();
}; /* class CAnimatable */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_ANIMATABLE_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file base_object.cpp
* \brief CBaseObject
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* CBaseObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "base_object.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CBaseObject::CBaseObject()
{
}
CBaseObject::~CBaseObject()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file base_object.h
* \brief CBaseObject
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* CBaseObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_BASE_OBJECT_H
#define PIPELINE_BASE_OBJECT_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "reference_target.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CBaseObject
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* CBaseObject
*/
class CBaseObject : public CReferenceTarget
{
public:
CBaseObject();
virtual ~CBaseObject();
}; /* class CBaseObject */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_BASE_OBJECT_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file bitmap_tex.cpp
* \brief CBitmapTex
* \date 2012-08-22 08:56GMT
* \author Jan Boon (Kaetemi)
* CBitmapTex
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "bitmap_tex.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CBitmapTex::CBitmapTex()
{
}
CBitmapTex::~CBitmapTex()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file bitmap_tex.h
* \brief CBitmapTex
* \date 2012-08-22 08:56GMT
* \author Jan Boon (Kaetemi)
* CBitmapTex
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_BITMAP_TEX_H
#define PIPELINE_BITMAP_TEX_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "texmap.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CBitmapTex
* \date 2012-08-22 08:56GMT
* \author Jan Boon (Kaetemi)
* CBitmapTex
*/
class CBitmapTex : public CTexmap
{
public:
CBitmapTex();
virtual ~CBitmapTex();
}; /* class CBitmapTex */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_BITMAP_TEX_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file builtin.cpp
* \brief CBuiltin
* \date 2012-08-22 09:42GMT
* \author Jan Boon (Kaetemi)
* CBuiltin
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "builtin.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
// using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CBuiltin::CBuiltin()
{
}
CBuiltin::~CBuiltin()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,66 @@
/**
* \file builtin.h
* \brief CBuiltin
* \date 2012-08-22 09:42GMT
* \author Jan Boon (Kaetemi)
* CBuiltin
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_BUILTIN_H
#define PIPELINE_BUILTIN_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "../scene_class_registry.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CBuiltin
* \date 2012-08-22 09:42GMT
* \author Jan Boon (Kaetemi)
* CBuiltin
*/
class CBuiltin
{
public:
static void registerClasses(CSceneClassRegistry *registry);
private:
CBuiltin();
virtual ~CBuiltin();
}; /* class CBuiltin */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_BUILTIN_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file geom_object.cpp
* \brief CGeomObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CGeomObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "geom_object.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CGeomObject::CGeomObject()
{
}
CGeomObject::~CGeomObject()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,67 @@
/**
* \file geom_object.h
* \brief CGeomObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CGeomObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_GEOM_OBJECT_H
#define PIPELINE_GEOM_OBJECT_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CGeomObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CGeomObject
*/
class CGeomObject
{
protected:
// pointers
// ...
// instances
// ...
public:
CGeomObject();
virtual ~CGeomObject();
}; /* class CGeomObject */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_GEOM_OBJECT_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file modifier.cpp
* \brief CModifier
* \date 2012-08-22 08:59GMT
* \author Jan Boon (Kaetemi)
* CModifier
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "modifier.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CModifier::CModifier()
{
}
CModifier::~CModifier()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file modifier.h
* \brief CModifier
* \date 2012-08-22 08:59GMT
* \author Jan Boon (Kaetemi)
* CModifier
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_MODIFIER_H
#define PIPELINE_MODIFIER_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "base_object.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CModifier
* \date 2012-08-22 08:59GMT
* \author Jan Boon (Kaetemi)
* CModifier
*/
class CModifier : public CBaseObject
{
public:
CModifier();
virtual ~CModifier();
}; /* class CModifier */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_MODIFIER_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file mtl.cpp
* \brief CMtl
* \date 2012-08-22 08:54GMT
* \author Jan Boon (Kaetemi)
* CMtl
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "mtl.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CMtl::CMtl()
{
}
CMtl::~CMtl()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file mtl.h
* \brief CMtl
* \date 2012-08-22 08:54GMT
* \author Jan Boon (Kaetemi)
* CMtl
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_MTL_H
#define PIPELINE_MTL_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "mtl_base.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CMtl
* \date 2012-08-22 08:54GMT
* \author Jan Boon (Kaetemi)
* CMtl
*/
class CMtl : public CMtlBase
{
public:
CMtl();
virtual ~CMtl();
}; /* class CMtl */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_MTL_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file mtl_base.cpp
* \brief CMtlBase
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* CMtlBase
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "mtl_base.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CMtlBase::CMtlBase()
{
}
CMtlBase::~CMtlBase()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file mtl_base.h
* \brief CMtlBase
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* CMtlBase
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_MTL_BASE_H
#define PIPELINE_MTL_BASE_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "reference_target.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CMtlBase
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* CMtlBase
*/
class CMtlBase : public CReferenceTarget
{
public:
CMtlBase();
virtual ~CMtlBase();
}; /* class CMtlBase */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_MTL_BASE_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file multi_mtl.cpp
* \brief CMultiMtl
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CMultiMtl
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "multi_mtl.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CMultiMtl::CMultiMtl()
{
}
CMultiMtl::~CMultiMtl()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,67 @@
/**
* \file multi_mtl.h
* \brief CMultiMtl
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CMultiMtl
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_MULTI_MTL_H
#define PIPELINE_MULTI_MTL_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CMultiMtl
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CMultiMtl
*/
class CMultiMtl
{
protected:
// pointers
// ...
// instances
// ...
public:
CMultiMtl();
virtual ~CMultiMtl();
}; /* class CMultiMtl */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_MULTI_MTL_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file node.cpp
* \brief CNode
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CNode
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "node.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CNode::CNode()
{
}
CNode::~CNode()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file node.h
* \brief CNode
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CNode
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_NODE_H
#define PIPELINE_NODE_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "reference_target.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CNode
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CNode
*/
class CNode : public CReferenceTarget
{
public:
CNode();
virtual ~CNode();
}; /* class CNode */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_NODE_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file object.cpp
* \brief CObject
* \date 2012-08-22 09:13GMT
* \author Jan Boon (Kaetemi)
* CObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "object.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CObject::CObject()
{
}
CObject::~CObject()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file object.h
* \brief CObject
* \date 2012-08-22 09:13GMT
* \author Jan Boon (Kaetemi)
* CObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_OBJECT_H
#define PIPELINE_OBJECT_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "base_object.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CObject
* \date 2012-08-22 09:13GMT
* \author Jan Boon (Kaetemi)
* CObject
*/
class CObject : public CBaseObject
{
public:
CObject();
virtual ~CObject();
}; /* class CObject */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_OBJECT_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file param_block.cpp
* \brief CParamBlock
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CParamBlock
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "param_block.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CParamBlock::CParamBlock()
{
}
CParamBlock::~CParamBlock()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file param_block.h
* \brief CParamBlock
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CParamBlock
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_PARAM_BLOCK_H
#define PIPELINE_PARAM_BLOCK_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "reference_target.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CParamBlock
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CParamBlock
*/
class CParamBlock : public CReferenceTarget
{
public:
CParamBlock();
virtual ~CParamBlock();
}; /* class CParamBlock */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_PARAM_BLOCK_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file param_block_2.cpp
* \brief CParamBlock2
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CParamBlock2
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "param_block_2.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CParamBlock2::CParamBlock2()
{
}
CParamBlock2::~CParamBlock2()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file param_block_2.h
* \brief CParamBlock2
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CParamBlock2
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_PARAM_BLOCK_2_H
#define PIPELINE_PARAM_BLOCK_2_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "reference_target.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CParamBlock2
* \date 2012-08-22 08:57GMT
* \author Jan Boon (Kaetemi)
* CParamBlock2
*/
class CParamBlock2 : public CReferenceTarget
{
public:
CParamBlock2();
virtual ~CParamBlock2();
}; /* class CParamBlock2 */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_PARAM_BLOCK_2_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file patch_object.cpp
* \brief CPatchObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CPatchObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "patch_object.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CPatchObject::CPatchObject()
{
}
CPatchObject::~CPatchObject()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file patch_object.h
* \brief CPatchObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CPatchObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_PATCH_OBJECT_H
#define PIPELINE_PATCH_OBJECT_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "object.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CPatchObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CPatchObject
*/
class CPatchObject : public CObject
{
public:
CPatchObject();
virtual ~CPatchObject();
}; /* class CPatchObject */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_PATCH_OBJECT_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file poly_object.cpp
* \brief CPolyObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CPolyObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "poly_object.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CPolyObject::CPolyObject()
{
}
CPolyObject::~CPolyObject()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file poly_object.h
* \brief CPolyObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CPolyObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_POLY_OBJECT_H
#define PIPELINE_POLY_OBJECT_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "object.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CPolyObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CPolyObject
*/
class CPolyObject : public CObject
{
public:
CPolyObject();
virtual ~CPolyObject();
}; /* class CPolyObject */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_POLY_OBJECT_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file reference_maker.cpp
* \brief CReferenceMaker
* \date 2012-08-22 08:52GMT
* \author Jan Boon (Kaetemi)
* CReferenceMaker
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "reference_maker.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CReferenceMaker::CReferenceMaker()
{
}
CReferenceMaker::~CReferenceMaker()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file reference_maker.h
* \brief CReferenceMaker
* \date 2012-08-22 08:52GMT
* \author Jan Boon (Kaetemi)
* CReferenceMaker
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_REFERENCE_MAKER_H
#define PIPELINE_REFERENCE_MAKER_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "animatable.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CReferenceMaker
* \date 2012-08-22 08:52GMT
* \author Jan Boon (Kaetemi)
* This class implements references
*/
class CReferenceMaker : public CAnimatable
{
public:
CReferenceMaker();
virtual ~CReferenceMaker();
}; /* class CReferenceMaker */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_REFERENCE_MAKER_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file reference_target.cpp
* \brief CReferenceTarget
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* CReferenceTarget
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "reference_target.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CReferenceTarget::CReferenceTarget()
{
}
CReferenceTarget::~CReferenceTarget()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file reference_target.h
* \brief CReferenceTarget
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* CReferenceTarget
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_REFERENCE_TARGET_H
#define PIPELINE_REFERENCE_TARGET_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "reference_maker.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CReferenceTarget
* \date 2012-08-22 08:53GMT
* \author Jan Boon (Kaetemi)
* This is a dummy class
*/
class CReferenceTarget : public CReferenceMaker
{
public:
CReferenceTarget();
virtual ~CReferenceTarget();
}; /* class CReferenceTarget */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_REFERENCE_TARGET_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file std_mat.cpp
* \brief CStdMat
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CStdMat
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "std_mat.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CStdMat::CStdMat()
{
}
CStdMat::~CStdMat()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file std_mat.h
* \brief CStdMat
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CStdMat
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_STD_MAT_H
#define PIPELINE_STD_MAT_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "mtl.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CStdMat
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CStdMat
*/
class CStdMat : public CMtl
{
public:
CStdMat();
virtual ~CStdMat();
}; /* class CStdMat */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_STD_MAT_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file std_mat_2.cpp
* \brief CStdMat2
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CStdMat2
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "std_mat_2.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CStdMat2::CStdMat2()
{
}
CStdMat2::~CStdMat2()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,68 @@
/**
* \file std_mat_2.h
* \brief CStdMat2
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CStdMat2
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_STD_MAT_2_H
#define PIPELINE_STD_MAT_2_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "std_mat.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CStdMat2
* \date 2012-08-22 08:55GMT
* \author Jan Boon (Kaetemi)
* CStdMat2
*/
class CStdMat2 : public CStdMat
{
protected:
// pointers
// ...
// instances
// ...
public:
CStdMat2();
virtual ~CStdMat2();
}; /* class CStdMat2 */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_STD_MAT_2_H */
/* end of file */

@ -40,6 +40,8 @@ using namespace std;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
namespace STORAGE {
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
@ -467,6 +469,8 @@ IStorageObject *CAppDataEntry::createChunkById(uint16 id, bool container)
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
} /* namespace STORAGE */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */

@ -35,12 +35,14 @@
#include <nel/misc/class_id.h>
// Project includes
#include "../typedefs.h"
#include "../storage_object.h"
#include "../storage_value.h"
#include "../../typedefs.h"
#include "../../storage_object.h"
#include "../../storage_value.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
namespace STORAGE {
#define NLMAXFILE_APP_DATA_CHUNK_ID 0x2150
@ -169,6 +171,8 @@ private:
}; /* class CAppDataEntry */
} /* namespace STORAGE */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */

@ -0,0 +1,59 @@
/**
* \file super_class_unknown.cpp
* \brief CSuperClassUnknown
* \date 2012-08-22 08:59GMT
* \author Jan Boon (Kaetemi)
* CSuperClassUnknown
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "super_class_unknown.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CSuperClassUnknown::CSuperClassUnknown()
{
}
CSuperClassUnknown::~CSuperClassUnknown()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,67 @@
/**
* \file super_class_unknown.h
* \brief CSuperClassUnknown
* \date 2012-08-22 08:59GMT
* \author Jan Boon (Kaetemi)
* CSuperClassUnknown
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_SUPER_CLASS_UNKNOWN_H
#define PIPELINE_SUPER_CLASS_UNKNOWN_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CSuperClassUnknown
* \date 2012-08-22 08:59GMT
* \author Jan Boon (Kaetemi)
* CSuperClassUnknown
*/
class CSuperClassUnknown
{
protected:
// pointers
// ...
// instances
// ...
public:
CSuperClassUnknown();
virtual ~CSuperClassUnknown();
}; /* class CSuperClassUnknown */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_SUPER_CLASS_UNKNOWN_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file texmap.cpp
* \brief CTexmap
* \date 2012-08-22 08:56GMT
* \author Jan Boon (Kaetemi)
* CTexmap
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "texmap.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CTexmap::CTexmap()
{
}
CTexmap::~CTexmap()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,63 @@
/**
* \file texmap.h
* \brief CTexmap
* \date 2012-08-22 08:56GMT
* \author Jan Boon (Kaetemi)
* CTexmap
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_TEXMAP_H
#define PIPELINE_TEXMAP_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "mtl_base.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CTexmap
* \date 2012-08-22 08:56GMT
* \author Jan Boon (Kaetemi)
* CTexmap
*/
class CTexmap : public CMtlBase
{
public:
CTexmap();
virtual ~CTexmap();
}; /* class CTexmap */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_TEXMAP_H */
/* end of file */

@ -0,0 +1,59 @@
/**
* \file tri_object.cpp
* \brief CTriObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CTriObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#include <nel/misc/types_nl.h>
#include "tri_object.h"
// STL includes
// NeL includes
// #include <nel/misc/debug.h>
// Project includes
using namespace std;
// using namespace NLMISC;
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
CTriObject::CTriObject()
{
}
CTriObject::~CTriObject()
{
}
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
/* end of file */

@ -0,0 +1,64 @@
/**
* \file tri_object.h
* \brief CTriObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CTriObject
*/
/*
* 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
* <http://www.gnu.org/licenses/>.
*/
#ifndef PIPELINE_TRI_OBJECT_H
#define PIPELINE_TRI_OBJECT_H
#include <nel/misc/types_nl.h>
// STL includes
// NeL includes
// Project includes
#include "object.h"
namespace PIPELINE {
namespace MAX {
namespace BUILTIN {
/**
* \brief CTriObject
* \date 2012-08-22 08:58GMT
* \author Jan Boon (Kaetemi)
* CTriObject
*/
class CTriObject : public CObject
{
public:
CTriObject();
virtual ~CTriObject();
}; /* class CTriObject */
} /* namespace BUILTIN */
} /* namespace MAX */
} /* namespace PIPELINE */
#endif /* #ifndef PIPELINE_TRI_OBJECT_H */
/* end of file */

@ -37,7 +37,7 @@
// Project includes
// Temporary project includes
#include "builtin/app_data.h"
#include "builtin/storage/app_data.h"
using namespace std;
// using namespace NLMISC;
@ -76,7 +76,7 @@ CSceneClass::~CSceneClass()
std::string CSceneClass::getClassName()
{
return getClassDesc()->internalName();
return classDesc()->internalName();
}
void CSceneClass::toString(std::ostream &ostream, const std::string &pad)
@ -87,7 +87,7 @@ void CSceneClass::toString(std::ostream &ostream, const std::string &pad)
}
else
{
ostream << "(" << getClassName() << ": " << ucstring(getClassDesc()->displayName()).toUtf8() << ", " << getClassDesc()->classId().toString() << ", " << ucstring(getClassDesc()->dllPluginDesc()->internalName()).toUtf8() << ") [" << m_Chunks.size() << "] { ";
ostream << "(" << getClassName() << ": " << ucstring(classDesc()->displayName()).toUtf8() << ", " << classDesc()->classId().toString() << ", " << ucstring(classDesc()->dllPluginDesc()->internalName()).toUtf8() << ") [" << m_Chunks.size() << "] { ";
toStringLocal(ostream, pad);
ostream << "} ";
}
@ -125,7 +125,6 @@ void CSceneClass::clean()
{
if (it->second->isContainer())
{
nldebug("Cleaning orphan child");
static_cast<CStorageContainer *>(it->second)->clean();
}
}
@ -177,7 +176,7 @@ IStorageObject *CSceneClass::createChunkById(uint16 id, bool container)
switch (id)
{
case NLMAXFILE_APP_DATA_CHUNK_ID:
return new CAppData();
return new BUILTIN::STORAGE::CAppData();
}
return CStorageContainer::createChunkById(id, container);
}
@ -191,7 +190,7 @@ namespace {
static const CSceneClassDesc<CSceneClass> SceneClassDesc(static_cast<const IDllPluginDescInternal *>(&DllPluginDescBuiltin));
} /* anonymous namespace */
const ISceneClassDesc *CSceneClass::getClassDesc()
const ISceneClassDesc *CSceneClass::classDesc()
{
return static_cast<const ISceneClassDesc *>(&SceneClassDesc);
}

@ -59,7 +59,7 @@ public:
//! \name Inherited functions that are implemented by wrapping around other virtual functions in this class
//@{
virtual std::string getClassName(); // do not override, implemented using getClassDesc
virtual std::string getClassName(); // do not override, implemented using classDesc
virtual void toString(std::ostream &ostream, const std::string &pad = ""); // do not override, implemented using toStringLocal
//@}
@ -88,7 +88,7 @@ public:
/// Initialize this class from scratch, call the parent first
virtual void init();
/// Return the class description of the inheriting class
virtual const ISceneClassDesc *getClassDesc();
virtual const ISceneClassDesc *classDesc();
/// Create a readable representation of this class
virtual void toStringLocal(std::ostream &ostream, const std::string &pad = "") const;
//@}
@ -160,6 +160,41 @@ private:
}; /* class CSceneClassDesc */
/**
* \brief ISuperClassDesc
* \date 2012-08-22 09:42GMT
* \author Jan Boon (Kaetemi)
* ISuperClassDesc
*/
class ISuperClassDesc
{
public:
/// Create an unknown class that inherits from this superclass
virtual CSceneClass *createUnknown(const NLMISC::CClassId classId, const ucstring &displayName, const ucstring &dllFilename, const ucstring &dllDescription) const = 0;
/// Get an internal name associated with unknown classes of this superclass
virtual const char *internalNameUnknown() const = 0;
/// Return the class description that directly implements this superclass
virtual const ISceneClassDesc *classDesc() const = 0;
}; /* class ISceneClassDesc */
/**
* \brief CSuperClassDesc
* \date 2012-08-22 09:42GMT
* \author Jan Boon (Kaetemi)
* ISuperClassDesc
*/
template <typename T, typename TUnknown>
class CSuperClassDesc : public ISuperClassDesc
{
CSuperClassDesc(const ISceneClassDesc *classDesc) : m_ClassDesc(classDesc) { }
virtual CSceneClass *createUnknown(const NLMISC::CClassId classId, const ucstring &displayName, const ucstring &dllFilename, const ucstring &dllDescription) const { return static_cast<CSceneClass *>(new TUnknown(classId, displayName, dllFilename, dllDescription)); }
virtual const char *internalNameUnknown() const { return T::InternalNameUnknown; }
virtual const ISceneClassDesc *classDesc() const { return m_ClassDesc; }
private:
const ISceneClassDesc *m_ClassDesc;
}; /* class ISceneClassDesc */
} /* namespace MAX */
} /* namespace PIPELINE */

@ -51,16 +51,58 @@ CSceneClassRegistry::~CSceneClassRegistry()
}
//void CSceneClassRegistry::add(const NLMISC::CClassId, const ISceneClassDesc *desc);
//void CSceneClassRegistry::remove(const NLMISC::CClassId);
void CSceneClassRegistry::add(const ISceneClassDesc *desc)
{
if (m_ClassDescriptions.find(desc->classId()) != m_ClassDescriptions.end()) { nlerror("Already added this class to the registry"); return; }
m_ClassDescriptions[desc->classId()] = desc;
}
void CSceneClassRegistry::remove(const NLMISC::CClassId classId)
{
if (m_ClassDescriptions.find(classId) == m_ClassDescriptions.end()) { nlwarning("Try to remove class that is not found"); return; }
m_ClassDescriptions.erase(classId);
}
CSceneClass *CSceneClassRegistry::create(const NLMISC::CClassId classid) const
/// Add a superclass to the registry
void CSceneClassRegistry::add(const ISuperClassDesc *desc)
{
return NULL; // TODO
if (m_SuperClassDescriptions.find(desc->classDesc()->superClassId()) == m_SuperClassDescriptions.end()) { nlerror("Already added this superclass to the registry"); return; }
m_SuperClassDescriptions[desc->classDesc()->superClassId()] = desc;
}
//void CSceneClassRegistry::destroy(CSceneClass *sceneClass) const;
//const CSceneClassRegistry::ISceneClassDesc *describe(const NLMISC::CClassId classid) const;
/// Remove a superclass from the registry
void CSceneClassRegistry::remove(const TSClassId superClassId)
{
if (m_SuperClassDescriptions.find(superClassId) == m_SuperClassDescriptions.end()) { nlwarning("Try to remove superclass that is not found"); return; }
m_SuperClassDescriptions.erase(superClassId);
}
/// Create a class by class id
CSceneClass *CSceneClassRegistry::create(const NLMISC::CClassId classId) const
{
if (m_ClassDescriptions.find(classId) == m_ClassDescriptions.end()) { nldebug("Try to create class that does not exist"); return NULL; }
return m_ClassDescriptions.find(classId)->second->create();
}
/// Create an unknown class by superclass id
CSceneClass *CSceneClassRegistry::createUnknown(const TSClassId superClassId, const NLMISC::CClassId classId, const ucstring &displayName, const ucstring &dllFilename, const ucstring &dllDescription) const
{
if (m_ClassDescriptions.find(classId) == m_ClassDescriptions.end()) { nlwarning("Creating superclass that does not exist"); return NULL; }
return m_SuperClassDescriptions.find(classId)->second->createUnknown(classId, displayName, dllFilename, dllDescription);;
}
/// Destroy a class by pointer
void CSceneClassRegistry::destroy(CSceneClass *sceneClass) const
{
sceneClass->classDesc()->destroy(sceneClass);
}
/// Return the description of a class by class id
const ISceneClassDesc *CSceneClassRegistry::describe(const NLMISC::CClassId classId) const
{
if (m_ClassDescriptions.find(classId) == m_ClassDescriptions.end()) { nldebug("Try to describe class that does not exist"); return NULL; }
return m_ClassDescriptions.find(classId)->second;
}
} /* namespace MAX */
} /* namespace PIPELINE */

@ -51,11 +51,31 @@ public:
CSceneClassRegistry();
virtual ~CSceneClassRegistry();
void add(const NLMISC::CClassId, const ISceneClassDesc *desc);
void remove(const NLMISC::CClassId);
CSceneClass *create(const NLMISC::CClassId classid) const;
/// Add a class to the registry
void add(const ISceneClassDesc *desc);
/// Remove a class from the registry
void remove(const NLMISC::CClassId classId);
/// Add a superclass to the registry
void add(const ISuperClassDesc *desc);
/// Remove a superclass from the registry
void remove(const TSClassId superClassId);
/// Create a class by class id
CSceneClass *create(const NLMISC::CClassId classId) const;
/// Create an unknown class by superclass id
CSceneClass *createUnknown(const TSClassId superClassId, const NLMISC::CClassId classId, const ucstring &displayName, const ucstring &dllFilename, const ucstring &dllDescription) const;
/// Destroy a class by pointer
void destroy(CSceneClass *sceneClass) const;
const ISceneClassDesc *describe(const NLMISC::CClassId classid) const;
/// Return the description of a class by class id
const ISceneClassDesc *describe(const NLMISC::CClassId classId) const;
private:
std::map<NLMISC::CClassId, const ISceneClassDesc *> m_ClassDescriptions;
std::map<TSClassId, const ISuperClassDesc *> m_SuperClassDescriptions;
}; /* class CSceneClassRegistry */

@ -101,7 +101,7 @@ public:
virtual ~CSceneClassUnknown() { }
// inherited
virtual const ISceneClassDesc *getClassDesc() { return &m_Desc; }
virtual const ISceneClassDesc *classDesc() { return &m_Desc; }
private:
CSceneClassUnknownDesc m_Desc;

@ -28,10 +28,10 @@
#include "../max/scene_class_registry.h"
// Testing
#include "../max/builtin/app_data.h"
#include "../max/builtin/storage/app_data.h"
//static const char *filename = "/srv/work/database/interfaces/anims_max/cp_fy_hof_species.max";
static const char *filename = "/home/kaetemi/source/minimax/GE_Acc_MikotoBaniere.max";
static const char *filename = "/srv/work/database/interfaces/anims_max/cp_fy_hof_species.max";
//static const char *filename = "/home/kaetemi/source/minimax/GE_Acc_MikotoBaniere.max";
//static const char *filename = "/home/kaetemi/3dsMax/scenes/test2008.max";
//static const char *filename = "/home/kaetemi/3dsMax/scenes/teapot_test_scene.max";
static const char *streamname = "Scene";
@ -186,7 +186,7 @@ int main(int argc, char **argv)
for (PIPELINE::MAX::CStorageContainer::TStorageObjectConstIt subit = subc->chunks().begin(), subend = subc->chunks().end(); subit != subend; ++subit)
{
PIPELINE::MAX::IStorageObject *storageChunk = subit->second;
PIPELINE::MAX::CAppData *appData = dynamic_cast<PIPELINE::MAX::CAppData *>(storageChunk);
PIPELINE::MAX::BUILTIN::STORAGE::CAppData *appData = dynamic_cast<PIPELINE::MAX::BUILTIN::STORAGE::CAppData *>(storageChunk);
if (appData)
{
nlinfo("Found AppData");

Loading…
Cancel
Save