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 #ifndef STILCategory_H 00014 #define STILCategory_H 00015 00016 #include "stilcom.h" // Common 00017 #include "stilcomstr.h" 00018 00019 #include "stilblock.h" // STIL Block common base class 00020 00021 //--------------------------------------------------------------------------- 00031 //--------------------------------------------------------------------------- 00032 class STILCategory : public STILBlock { 00033 00034 // - Global std::ostream << operator as friend to output STILCategory object 00035 friend std::ostream& operator<<( std::ostream &os, const STILCategory &); 00036 00037 public: 00038 00039 // - Default Constructor 00040 STILCategory(); 00041 00042 // - Copy Constructor 00043 STILCategory(const STILCategory &); 00044 00045 // - Destructor which frees storage associated to a STILCategory object 00046 virtual ~STILCategory(); 00047 00048 // - Assignment operator 00049 STILCategory & operator=(const STILCategory &); 00050 00051 // - Member function to initialize an object (default is global domain name) 00052 //void init(const sstring& domain=""); //dont know if this is used 00053 //***try using this init for now: (for Spec class, anyway...) 00054 void init(); //***set it up, say that it's storing a category 00055 00056 // - Member function to write the object 00057 virtual void write(FILE * pOutFile, LONG indentation=0) const; 00058 00059 00060 private: 00061 00062 00063 }; // end STILCategory class 00064 00065 00066 #endif 00067