00001 /******************************************************************************* 00002 * Copyright (c) 2006 International Business Machines Corporation 00003 * All rights reserved. This program and the accompanying materials 00004 * are made available under the terms of the Common Public License v1.0 00005 * which accompanies this distribution, and is available at 00006 * http://www.opensource.org/licenses/cpl1.0.php 00007 * 00008 * Contributors: 00009 * Douglas Sprague, Joel Wheeler - initial API and implementation 00010 * 00011 *****************************************************************************/ 00012 00013 00014 #ifndef STILFACTORY_H 00015 #define STILFACTORY_H 00016 00017 #include "stilentity.h" 00018 00019 //--------------------------------------------------------------------------- 00028 //--------------------------------------------------------------------------- 00029 class STILFactory { 00030 00031 public: 00032 00033 // - Create a new entity of the named type 00034 static STILEntity* createEntity(const STILEntity::Type & t); 00035 00036 // - Create a new entity of the parameter type and (deep) copy the contents 00037 static STILEntity* cloneEntity(const STILEntity *); 00038 00039 }; 00040 00041 00042 #endif