#include "object_factory_impl.hpp" #include "node_type.hpp" namespace xios { #define macro(U) \ template shared_ptr CObjectFactory::GetObject(const StdString & id); \ template shared_ptr CObjectFactory::GetObject(const StdString& context,const StdString & id); \ template shared_ptr CObjectFactory::GetObject(const U * const object); \ template int CObjectFactory::GetObjectNum(void); \ template int CObjectFactory::GetObjectIdNum(void); \ template const std::vector >& CObjectFactory::GetObjectVector(const StdString & context ); \ template bool CObjectFactory::HasObject(const StdString & id); \ template bool CObjectFactory::HasObject(const StdString& context,const StdString & id); \ template boost::shared_ptr CObjectFactory::CreateObject(const StdString & id ); \ template StdString CObjectFactory::GenUId(void); macro(CField) macro(CFile) macro(CGrid) macro(CAxis) macro(CDomain) macro(CContext) macro(CCalendarWrapper) macro(CVariable) macro(CTransformation) macro(CFieldGroup) macro(CFileGroup) macro(CGridGroup) macro(CAxisGroup) macro(CDomainGroup) macro(CContextGroup) macro(CVariableGroup) macro(CTransformationGroup) }