00001 /* -*- mode: c++ -*- 00002 * 00003 * HippoPlot DataRepFactory class interface 00004 * 00005 * Copyright (C) 2001-2003 The Board of Trustees of The Leland 00006 * Stanford Junior University. All Rights Reserved. 00007 * 00008 * $Id: DataRepFactory_8h-source.html,v 1.40 2008/03/24 19:27:28 pfkeb Exp $ 00009 * 00010 */ 00011 00012 #ifndef _DataRepFactory_H_ 00013 #define _DataRepFactory_H_ 00014 00015 #include "pattern/Factory.h" 00016 00017 namespace hippodraw { 00018 class DataRep; 00019 00025 class MDL_HIPPOPLOT_API DataRepFactory 00026 : public Factory < hippodraw::DataRep > 00027 { 00028 00029 private: 00030 00032 static DataRepFactory * s_instance; 00033 00035 DataRepFactory ( const DataRepFactory & ); 00036 00038 void initialize (); 00039 00040 protected: 00041 00044 DataRepFactory ( ); 00045 00046 public: 00047 00050 ~DataRepFactory (); 00051 00053 static DataRepFactory * instance (); 00054 00055 }; 00056 00057 } // namespace hippodraw 00058 00059 #endif // _DataRepFactory_H_