00001 /* -*- mode: c++ -*- 00002 * 00003 * HippoPlot PlotterFactory class interface 00004 * 00005 * Copyright (C) 2002, 2003 The Board of Trustees of The Leland Stanford 00006 * Junior University. All Rights Reserved. 00007 * 00008 * $Id: PlotterFactory_8h-source.html,v 1.40 2008/03/24 19:27:33 pfkeb Exp $ 00009 * 00010 */ 00011 00012 #ifndef _PlotterFactory_H_ 00013 #define _PlotterFactory_H_ 00014 00015 #include "pattern/Factory.h" 00016 00017 namespace hippodraw { 00018 00019 class PlotterBase; 00020 00024 class MDL_HIPPOPLOT_API PlotterFactory : public Factory < PlotterBase > 00025 { 00026 00027 private: 00028 00030 static PlotterFactory * s_instance; 00031 00033 PlotterFactory ( const PlotterFactory & ); 00034 00037 PlotterFactory ( ); 00038 00040 void initialize (); 00041 00042 public: 00043 00045 static PlotterFactory * instance (); 00046 00047 }; 00048 00049 } // namespace hippodraw 00050 00051 #endif // _PlotterFactory_H_