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

stilvectoritem.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 STILVectorItem_H
00014 #define STILVectorItem_H
00015 
00016 #include "stilcomstr.h"
00017 
00018 #include "stilblock.h"         // STIL Block Interface (base class)
00019 #include "stilsigrefexpr.h"    // STIL Signal Reference Expression Interface
00020 #include "stilwfcs.h"
00021 
00022 
00023 //---------------------------------------------------------------------------
00029 //---------------------------------------------------------------------------
00030 class STILVectorItem : public STILBlock {
00031 
00032   // - Public members
00033   public:
00034 
00035     // - Default Constructor
00036     STILVectorItem();
00037 
00038     // - Copy Constructor
00039     STILVectorItem(const STILVectorItem &);
00040 
00041     // - Destructor
00042     virtual ~STILVectorItem();
00043 
00044     // - Assignment operator
00045     STILVectorItem & operator=(const STILVectorItem &);
00046 
00047     // - Initialize this STILVectorItem object.
00048     void init();
00049 
00050     // - Write out this object to a given FILE
00051     virtual void write(FILE * pOutFile, LONG indentation=0) const;
00052 
00053 
00054     // - Set/Get the SigRefExpr attribute
00055     void                     setSigRefExpr(const STILSigRefExpr &);
00056     const STILSigRefExpr *   getSigRefExpr() const ;
00057 
00058     // - Set/Get the WFCS attribute
00059     void           setWFCS(const STILWFCS &);
00060     const STILWFCS * getWFCS() const;
00061 
00062     // *****************************************************************
00063     // ************************** NOTE *********************************
00064     // *****************************************************************
00065     //   Only support cyclized data initially.  Eventually support
00066     //   multi-bit and non-cyclized data
00067     // *****************************************************************
00068 
00069   // Private members
00070   private:
00071 
00072     STILSigRefExpr    m_sigRefExpr;  // Signal Reference Expression
00073     STILWFCS          m_WFCS;        // Waveform Character String
00074 
00075 
00076 }; // end STILVectorItem class
00077 
00078 
00079 // Inline functions
00080 //--------------------------------------------------------------------------
00088 //--------------------------------------------------------------------------
00089 inline void STILVectorItem::setSigRefExpr(const STILSigRefExpr & sre) {
00090   m_sigRefExpr = sre;
00091 }
00092 
00093 //--------------------------------------------------------------------------
00101 //--------------------------------------------------------------------------
00102 inline const STILSigRefExpr * STILVectorItem::getSigRefExpr() const {
00103   return &m_sigRefExpr;
00104 }
00105 
00106 //--------------------------------------------------------------------------
00114 //--------------------------------------------------------------------------
00115 inline void STILVectorItem::setWFCS(const STILWFCS & w) {
00116   m_WFCS = w;
00117 }
00118 
00119 //--------------------------------------------------------------------------
00127 //--------------------------------------------------------------------------
00128 inline const STILWFCS * STILVectorItem::getWFCS() const {
00129   return &m_WFCS;
00130 }
00131 
00132 
00133 #endif

This page last updated on 6 Jul 2007

SourceForge.net Logo