IIR_BlockStatement.hh

Go to the documentation of this file.
00001 
00002 #ifndef IIR_BLOCK_STATEMENT_HH
00003 #define IIR_BLOCK_STATEMENT_HH
00004 
00005 // Copyright (c) 1996-1999 The University of Cincinnati.  
00006 // All rights reserved.
00007 
00008 // UC MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF 
00009 // THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
00010 // TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
00011 // PARTICULAR PURPOSE, OR NON-INFRINGEMENT.  UC SHALL NOT BE LIABLE
00012 // FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING,
00013 // RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
00014 // DERIVATIVES.
00015 
00016 // By using or copying this Software, Licensee agrees to abide by the
00017 // intellectual property laws, and all other applicable laws of the
00018 // U.S., and the terms of this license.
00019 
00020 
00021 // You may modify, distribute, and use the software contained in this package
00022 // under the terms of the "GNU LIBRARY GENERAL PUBLIC LICENSE" version 2,
00023 // June 1991. A copy of this license agreement can be found in the file
00024 // "LGPL", distributed with this archive.
00025 
00026 // Authors: Philip A. Wilsey    phil.wilsey@uc.edu
00027 //          Dale E. Martin      dmartin@cliftonlabs.com
00028 
00029 //---------------------------------------------------------------------------
00030 
00031 #include "IIR_ConcurrentStatement.hh"
00032 
00033 class IIR_ArchitectureStatementList;
00034 class IIR_AssociationList;
00035 class IIR_DeclarationList;
00036 class IIR_GenericList;
00037 class IIR_PortList;
00038 class IIR_SignalDeclaration;
00039 
00040 class IIR_BlockStatement : public virtual IIR_ConcurrentStatement{
00041 
00042 public:
00043   virtual ~IIR_BlockStatement() {}
00044 
00045   // List accessor(s)
00046   virtual IIR_GenericList                       *get_generic_clause() = 0;
00047   virtual IIR_AssociationList                   *get_generic_map_aspect() = 0;
00048   virtual IIR_PortList                          *get_port_clause() = 0;
00049   virtual IIR_AssociationList                   *get_port_map_aspect() = 0;
00050   virtual IIR_DeclarationList                   *get_block_declarative_part() = 0;
00051   virtual IIR_ArchitectureStatementList         *get_block_statement_part() = 0;
00052   virtual void                                  set_generic_clause(IIR_GenericList *) = 0;
00053   virtual void                                  set_generic_map_aspect(IIR_AssociationList *) = 0;
00054   virtual void                                  set_port_clause(IIR_PortList *) = 0;
00055   virtual void                                  set_port_map_aspect(IIR_AssociationList *) = 0;
00056   virtual void                                  set_block_declarative_part(IIR_DeclarationList *) = 0;
00057   virtual void                                  set_block_statement_part(IIR_ArchitectureStatementList *) = 0;
00058 
00059   virtual void set_guard_expression( IIR *guard_expression ) = 0;
00060   virtual IIR *get_guard_expression() = 0;
00061 
00062   virtual IIR_SignalDeclaration         *get_implicit_guard_signal( ) = 0;
00063   virtual void                          set_implicit_guard_signal( IIR_SignalDeclaration * ) = 0;
00064 };
00065 #endif

Generated on Fri Mar 31 11:04:13 2006 for Savant by  doxygen 1.4.6