Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

stilsignalgroup.h

Go to the documentation of this file.
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 STILSignalGroup_H
00014 #define STILSignalGroup_H
00015 
00016 
00017 #include "stilsignalblock.h"    // STIL SignalBlock base class
00018 #include "stilsigrefexpr.h"     // STIL sigref_expr class
00019 
00020 //---------------------------------------------------------------------------
00027 //---------------------------------------------------------------------------
00028 class STILSignalGroup : public STILSignalBlock {
00029 
00030   // - Global std::ostream << operator as friend to output STILSignalGroup object
00031   friend std::ostream& operator<<( std::ostream &os, const STILSignalGroup &);
00032 
00033   // - Public members
00034   public:
00035 
00036     // - Default Constructor
00037     STILSignalGroup();
00038 
00039     // - Copy Constructor
00040     STILSignalGroup(const STILSignalGroup &);
00041 
00042     // - Destructor
00043     virtual ~STILSignalGroup();
00044 
00045     // - Assignment Operator
00046     STILSignalGroup & operator=(const STILSignalGroup &);
00047 
00048     // - Initialize this STILSignalGroup object.
00049     void        init();
00050 
00051     // - Write out this object to a given FILE
00052     virtual void write(FILE * pOutFile, LONG indentation=0) const;
00053 
00054 
00055 
00056     // - Member functions to set/get a signal expression
00057     void              setSigRefExpr(const STILSigRefExpr &) ;
00058     STILSigRefExpr *  getSigRefExpr();
00059 
00060   // Private members
00061   private:
00062 
00063     // Store as
00064     STILSigRefExpr              m_sigRefExpr;
00065 
00066 
00067 }; // end STILSignalGroup class
00068 
00069 
00070 // Inline functions
00071 //--------------------------------------------------------------------------
00079 //--------------------------------------------------------------------------
00080 inline void              STILSignalGroup::setSigRefExpr(const STILSigRefExpr & e) {
00081   m_sigRefExpr = e;
00082 }
00083 
00084 //--------------------------------------------------------------------------
00092 //--------------------------------------------------------------------------
00093 inline STILSigRefExpr *  STILSignalGroup::getSigRefExpr() { return &m_sigRefExpr; }
00094 
00095 #endif

This page last updated on 6 Jul 2007

SourceForge.net Logo