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

stilwaveformitem.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 STILSubWaveformItem_H
00014 #define STILSubWaveformItem_H
00015 
00016 
00017 #include "stilcom.h"               // Common library
00018 #include "stilcomstr.h"
00019 #include "stilwaveformevent.h"
00020 #include "stiltimingwaveformref.h"
00021 #include "stilwfcs.h"
00022 
00023 #include <list>
00024 
00025 //---------------------------------------------------------------------------
00049 //---------------------------------------------------------------------------
00050 class STILWaveformItem : public STILBlock {
00051 
00052   // - Public members
00053   public:
00054     // - Default constructor
00055     STILWaveformItem();
00056 
00057     // - Copy Constructor
00058     STILWaveformItem(const STILWaveformItem &);
00059 
00060     // - Destructor
00061     virtual ~STILWaveformItem();
00062 
00063     // - Assignment operator
00064     STILWaveformItem & operator=(const STILWaveformItem &);
00065 
00066     // - Initialize/reset this object
00067     void init();
00068 
00069     // - Write this object out to a file
00070     virtual void write(FILE * pOutFile, LONG indentation=0) const;
00071 
00072 
00073     // - Set/Get the waveform character list
00074     void setWFCList(const STILWFCS w);
00075     STILWFCS getWFCList() const;
00076 
00077     // - Set/Get the resource tag for this waveformitem (1450.3 extension)
00078     void setResourceTag(const sstring & tag);
00079     const sstring & getResourceTag() const;
00080 
00081     // - Add an inherit waveform
00082     void addInheritWaveform(const STILTimingWaveformRef &);
00083 
00084     // - Add a waveform event
00085     void addWaveformEvent(const STILWaveformEvent &);
00086 
00087   // - Private members
00088   private:
00089     // Update the linked list of entity ptrs
00090     void updateEntityList();
00091 
00092     // Reference to inherited waveform table
00093     std::list<STILTimingWaveformRef> m_inhWFTList;
00094 
00095     // The WFC/WFCList
00096     STILWFCS m_WFCS;
00097 
00098     // List of waveform events
00099     std::list<STILWaveformEvent> m_WEList;
00100 
00101     // The 1450.3 resource tag
00102     sstring m_resourceTag;
00103 
00104 };
00105 
00106 //--------------------------------------------------------------------------
00114 //-------------------------------------------------------------------------
00115 inline     void STILWaveformItem::setWFCList(const STILWFCS w) { m_WFCS = w;    }
00116 
00117 //--------------------------------------------------------------------------
00125 //-------------------------------------------------------------------------
00126 inline     STILWFCS STILWaveformItem::getWFCList() const { return m_WFCS; }
00127 
00128 //--------------------------------------------------------------------------
00136 //-------------------------------------------------------------------------
00137 inline     const sstring & STILWaveformItem::getResourceTag() const { return m_resourceTag; }
00138 
00139 #endif

This page last updated on 6 Jul 2007

SourceForge.net Logo