[GME-commit] GMESRC/Paradigms/SF/BON2Interpreter BON2Component.h,1.4,1.5 SFBonExtension.cpp,1.1,1.2 SFBonExtension.h,1.1,1.2 SFBonUserExtension.cpp,1.2,1.3 SFInterpreterBON2Component.dsp,1.4,1.5

gme-commit at list.isis.vanderbilt.edu gme-commit at list.isis.vanderbilt.edu
Tue Mar 16 17:49:06 CST 2004


Update of /var/lib/gme/GMESRC/Paradigms/SF/BON2Interpreter
In directory braindrain:/tmp/cvs-serv13549

Modified Files:
	BON2Component.h SFBonExtension.cpp SFBonExtension.h 
	SFBonUserExtension.cpp SFInterpreterBON2Component.dsp 
Log Message:
SFInterpreter updated: BonExtender used to extend some classes.


CVS User: zolmol

Index: BON2Component.h
===================================================================
RCS file: /var/lib/gme/GMESRC/Paradigms/SF/BON2Interpreter/BON2Component.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** BON2Component.h	3 Feb 2004 10:53:05 -0000	1.4
--- BON2Component.h	16 Mar 2004 23:48:39 -0000	1.5
***************
*** 26,30 ****
  #include "Extensions.h"
  #include "BONImpl.h"
- #include "PrintDlg.h"
  #include <ComponentConfig.h>
  
--- 26,29 ----

Index: SFBonExtension.cpp
===================================================================
RCS file: /var/lib/gme/GMESRC/Paradigms/SF/BON2Interpreter/SFBonExtension.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** SFBonExtension.cpp	3 Feb 2004 09:35:08 -0000	1.1
--- SFBonExtension.cpp	16 Mar 2004 23:48:39 -0000	1.2
***************
*** 6,22 ****
  {
  
- IMPLEMENT_BONEXTENSION( SF_BON::Folder, "Folder" );
- IMPLEMENT_ABSTRACT_BONEXTENSION( SF_BON::ParameterBase );
- IMPLEMENT_ABSTRACT_BONEXTENSION( SF_BON::Signal );
- IMPLEMENT_BONEXTENSION( SF_BON::Param, "Param" );
- IMPLEMENT_BONEXTENSION( SF_BON::InputParam, "InputParam" );
- IMPLEMENT_BONEXTENSION( SF_BON::OutputParam, "OutputParam" );
- IMPLEMENT_BONEXTENSION( SF_BON::OutputSignal, "OutputSignal" );
- IMPLEMENT_BONEXTENSION( SF_BON::InputSignal, "InputSignal" );
- IMPLEMENT_BONEXTENSION( SF_BON::DataflowConn, "DataflowConn" );
- IMPLEMENT_BONEXTENSION( SF_BON::ParameterConn, "ParameterConn" );
  IMPLEMENT_ABSTRACT_BONEXTENSION( SF_BON::Processing );
  IMPLEMENT_BONEXTENSION( SF_BON::Compound, "Compound" );
  IMPLEMENT_BONEXTENSION( SF_BON::Primitive, "Primitive" );
  
  
--- 6,16 ----
  {
  
  IMPLEMENT_ABSTRACT_BONEXTENSION( SF_BON::Processing );
  IMPLEMENT_BONEXTENSION( SF_BON::Compound, "Compound" );
  IMPLEMENT_BONEXTENSION( SF_BON::Primitive, "Primitive" );
+ IMPLEMENT_BONEXTENSION( SF_BON::ParameterBase, " OutputParam" );
+ IMPLEMENT_BONEXTENSION( SF_BON::InputParam, "InputParam" );
+ IMPLEMENT_BONEXTENSION( SF_BON::Param, "Param" );
+ IMPLEMENT_BONEXTENSION( SF_BON::Signal, " InputSignal OutputSignal" );
  
  
***************
*** 26,249 ****
  {
  //*******************************************************************
! // // getter for kind "Processing" and its desc's
! //*******************************************************************
! std::set<Processing> FolderImpl::getProcessing()
! {
!   std::set<Processing> res;
!   const int len = 2;
!   std::set<BON::Object> l[ len];
!   l[0] = getChildObjects("Compound");
!   l[1] = getChildObjects("Primitive");
!   for( int j = 0; j < len; ++j)
!     for( std::set<BON::Object>::iterator i = l[j].begin(); i != l[j].end(); ++i)
!     {
!        Processing elem(*i);
!        ASSERT(elem);
!        res.insert(elem);
!     }
!   return res;
! }
! 
! 
! //*******************************************************************
! // // getter for kind "Compound"
  //*******************************************************************
! std::set<Compound> FolderImpl::getCompound()
  {
!   std::set<Compound> res;
!   std::set<BON::Object> l = getChildObjects("Compound");
!   for( std::set<BON::Object>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      Compound elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
  }
  
  
  //*******************************************************************
! // // getter for kind "Primitive"
  //*******************************************************************
! std::set<Primitive> FolderImpl::getPrimitive()
  {
!   std::set<Primitive> res;
!   std::set<BON::Object> l = getChildObjects("Primitive");
!   for( std::set<BON::Object>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      Primitive elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
  }
  
  
  //*******************************************************************
! // // getter for kind "Folder"
  //*******************************************************************
! std::set<Folder> FolderImpl::getFolder()
  {
!   std::set<Folder> res;
!   std::set<BON::Folder> l = getChildFolders();
!   for( std::set<BON::Folder>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      Folder elem(*i);
!      if (elem)
!        res.insert(elem);
!   }
!   return res;
  }
  
  
  //*******************************************************************
! // 
  //*******************************************************************
! std::set<ParameterConn> ParameterBaseImpl::getInParameterConnLinks()
  {
!   std::set<ParameterConn> result;
!   std::set<BON::Connection> conns = ConnectionEndImpl::getInConnLinks();
!   std::set<BON::Connection>::iterator it = conns.begin();
!   for( ; it != conns.end(); ++it)
!   {
!     ParameterConn c( *it);
!     if (c)
!       result.insert( c);
!   }
!   return result;
  }
  
  
  //*******************************************************************
! // 
  //*******************************************************************
! std::set<ParameterConn> ParameterBaseImpl::getOutParameterConnLinks()
  {
!   std::set<ParameterConn> result;
!   std::set<BON::Connection> conns = ConnectionEndImpl::getOutConnLinks();
!   std::set<BON::Connection>::iterator it = conns.begin();
!   for( ; it != conns.end(); ++it)
!   {
!     ParameterConn c( *it);
!     if (c)
!       result.insert( c);
!   }
!   return result;
  }
  
  
  //*******************************************************************
! // 
  //*******************************************************************
! std::set<ParameterConn> ParameterBaseImpl::getParameterConnLinks()
  {
!   std::set<ParameterConn> result;
!   std::set<BON::Connection> conns = ConnectionEndImpl::getConnLinks();
!   std::set<BON::Connection>::iterator it = conns.begin();
!   for( ; it != conns.end(); ++it)
!   {
!     ParameterConn c( *it);
!     if (c)
!       result.insert( c);
!   }
!   return result;
  }
  
  
  //*******************************************************************
! // returns dst ParameterBases
  //*******************************************************************
! std::multiset<ParameterBase> ParameterBaseImpl::getParameterConnDsts()
  {
!   std::multiset<ParameterBase> res;
!   {
!     std::multiset<BON::ConnectionEnd> out_ends = getOutConnEnds("ParameterConn");
!     for ( std::multiset<BON::ConnectionEnd>::iterator cit = out_ends.begin() ; cit != out_ends.end() ; ++cit )
!     {
!       ParameterBase dst( *cit );
!       ASSERT(dst);
!       res.insert( dst);
!     }
!   }
!   return res;
  }
  
  
  //*******************************************************************
! // returns src ParameterBases
  //*******************************************************************
! std::multiset<ParameterBase> ParameterBaseImpl::getParameterConnSrcs()
  {
!   std::multiset<ParameterBase> res;
!   {
!     std::multiset<BON::ConnectionEnd> in_ends = getInConnEnds("ParameterConn");
!     for ( std::multiset<BON::ConnectionEnd>::iterator cit = in_ends.begin() ; cit != in_ends.end() ; ++cit )
!     {
!       ParameterBase dst( *cit );
!       ASSERT(dst);
!       res.insert( dst);
!     }
!   }
!   return res;
  }
  
  
  //*******************************************************************
! // 
  //*******************************************************************
! long ParameterBaseImpl::getSize()
  {
!   return getAttribute("Size")->getIntegerValue();
  }
  
  
  //*******************************************************************
! // 
  //*******************************************************************
! ParameterBaseImpl::DataType_Type ParameterBaseImpl::getDataType()
  {
!   std::string val = getAttribute("DataType")->getStringValue();
! 
!   if ( val == "Integer") return Integer_DataType_Type;
!   else if ( val == "Double") return Double_DataType_Type;
!   else if ( val == "Character") return Character_DataType_Type;
!   else if ( val == "Pointer") return Pointer_DataType_Type;
!   else throw("None of the possible items");
  }
  
  
  //*******************************************************************
! // 
  //*******************************************************************
! std::set<DataflowConn> SignalImpl::getInDataflowConnLinks()
  {
!   std::set<DataflowConn> result;
!   std::set<BON::Connection> conns = ConnectionEndImpl::getInConnLinks();
!   std::set<BON::Connection>::iterator it = conns.begin();
!   for( ; it != conns.end(); ++it)
!   {
!     DataflowConn c( *it);
!     if (c)
!       result.insert( c);
!   }
!   return result;
  }
  
  
  //*******************************************************************
! // 
  //*******************************************************************
! std::set<DataflowConn> SignalImpl::getOutDataflowConnLinks()
  {
!   std::set<DataflowConn> result;
!   std::set<BON::Connection> conns = ConnectionEndImpl::getOutConnLinks();
!   std::set<BON::Connection>::iterator it = conns.begin();
!   for( ; it != conns.end(); ++it)
!   {
!     DataflowConn c( *it);
!     if (c)
!       result.insert( c);
!   }
!   return result;
  }
  
--- 20,236 ----
  {
  //*******************************************************************
! // getter for role "InputParameters" among "ParameterBase"s and its descendants
  //*******************************************************************
! std::set<InputParam> ProcessingImpl::getInputParameters()
  {
! 	std::set<InputParam> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("InputParameters");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		InputParam elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
  
  //*******************************************************************
! // getter for role "InputSignals" among "Signal"s and its descendants
  //*******************************************************************
! std::set<Signal> ProcessingImpl::getInputSignals()
  {
! 	std::set<Signal> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("InputSignals");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		Signal elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
  
  //*******************************************************************
! // getter for role "OutputParameters" among "ParameterBase"s and its descendants
  //*******************************************************************
! std::set<ParameterBase> ProcessingImpl::getOutputParameters()
  {
! 	std::set<ParameterBase> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("OutputParameters");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		ParameterBase elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
  
  //*******************************************************************
! // getter for role "OutputSignals" among "Signal"s and its descendants
  //*******************************************************************
! std::set<Signal> ProcessingImpl::getOutputSignals()
  {
! 	std::set<Signal> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("OutputSignals");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		Signal elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
  
  //*******************************************************************
! // getter for role "PC" among "ParameterConn"s
  //*******************************************************************
! std::set<BON::Connection> ProcessingImpl::getPC()
  {
! 	std::set<BON::Connection> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("PC");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		BON::Connection elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
  
  //*******************************************************************
! // getter for role "Parameters" among "ParameterBase"s and its descendants
  //*******************************************************************
! std::set<Param> ProcessingImpl::getParameters()
  {
! 	std::set<Param> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("Parameters");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		Param elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
  
  //*******************************************************************
! // aggregated getter for role "eters" among "ParameterBase"s and its descendants
  //*******************************************************************
! std::set<ParameterBase> ProcessingImpl::geteters()
  {
! 	std::set<ParameterBase> res;
! 	const int len = 3;
! 	std::set<BON::FCO> roles_vec[ len];
! 	roles_vec[0] = getChildFCOsAs("InputParameters");
! 	roles_vec[1] = getChildFCOsAs("OutputParameters");
! 	roles_vec[2] = getChildFCOsAs("Parameters");
! 	for( int k = 0; k < len; ++k)
! 		for( std::set<BON::FCO>::iterator i = roles_vec[k].begin(); i != roles_vec[k].end(); ++i)
! 		{
! 			ParameterBase elem(*i);
! 			ASSERT(elem);
! 			res.insert(elem);
! 		}
! 	return res;
  }
  
  
  //*******************************************************************
! // aggregated getter for role "s" among "Signal"s and its descendants
  //*******************************************************************
! std::set<Signal> ProcessingImpl::gets()
  {
! 	std::set<Signal> res;
! 	const int len = 2;
! 	std::set<BON::FCO> roles_vec[ len];
! 	roles_vec[0] = getChildFCOsAs("InputSignals");
! 	roles_vec[1] = getChildFCOsAs("OutputSignals");
! 	for( int k = 0; k < len; ++k)
! 		for( std::set<BON::FCO>::iterator i = roles_vec[k].begin(); i != roles_vec[k].end(); ++i)
! 		{
! 			Signal elem(*i);
! 			ASSERT(elem);
! 			res.insert(elem);
! 		}
! 	return res;
  }
  
  
  //*******************************************************************
! // getter for role "CompoundParts" among "Processing"s and its descendants
  //*******************************************************************
! std::set<Compound> CompoundImpl::getCompoundParts()
  {
! 	std::set<Compound> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("CompoundParts");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		Compound elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
  
  //*******************************************************************
! // getter for role "DFC" among "DataflowConn"s
  //*******************************************************************
! std::set<BON::Connection> CompoundImpl::getDFC()
  {
! 	std::set<BON::Connection> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("DFC");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		BON::Connection elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
  
  //*******************************************************************
! // aggregated getter for role "Parts" among "Processing"s and its descendants
  //*******************************************************************
! std::set<Processing> CompoundImpl::getParts()
  {
! 	std::set<Processing> res;
! 	const int len = 2;
! 	std::set<BON::FCO> roles_vec[ len];
! 	roles_vec[0] = getChildFCOsAs("CompoundParts");
! 	roles_vec[1] = getChildFCOsAs("PrimitiveParts");
! 	for( int k = 0; k < len; ++k)
! 		for( std::set<BON::FCO>::iterator i = roles_vec[k].begin(); i != roles_vec[k].end(); ++i)
! 		{
! 			Processing elem(*i);
! 			ASSERT(elem);
! 			res.insert(elem);
! 		}
! 	return res;
  }
  
  
  //*******************************************************************
! // getter for role "PrimitiveParts" among "Processing"s and its descendants
  //*******************************************************************
! std::set<Primitive> CompoundImpl::getPrimitiveParts()
  {
! 	std::set<Primitive> res;
! 	std::set<BON::FCO> roles = getChildFCOsAs("PrimitiveParts");
! 	for( std::set<BON::FCO>::iterator i = roles.begin(); i != roles.end(); ++i)
! 	{
! 		Primitive elem(*i);
! 		ASSERT(elem);
! 		res.insert(elem);
! 	}
! 	return res;
  }
  
***************
*** 252,305 ****
  // 
  //*******************************************************************
! std::set<DataflowConn> SignalImpl::getDataflowConnLinks()
! {
!   std::set<DataflowConn> result;
!   std::set<BON::Connection> conns = ConnectionEndImpl::getConnLinks();
!   std::set<BON::Connection>::iterator it = conns.begin();
!   for( ; it != conns.end(); ++it)
!   {
!     DataflowConn c( *it);
!     if (c)
!       result.insert( c);
!   }
!   return result;
! }
! 
! 
! //*******************************************************************
! // returns dst Signals
! //*******************************************************************
! std::multiset<Signal> SignalImpl::getDataflowConnDsts()
  {
!   std::multiset<Signal> res;
!   {
!     std::multiset<BON::ConnectionEnd> out_ends = getOutConnEnds("DataflowConn");
!     for ( std::multiset<BON::ConnectionEnd>::iterator cit = out_ends.begin() ; cit != out_ends.end() ; ++cit )
!     {
!       Signal dst( *cit );
!       ASSERT(dst);
!       res.insert( dst);
!     }
!   }
!   return res;
! }
! 
  
! //*******************************************************************
! // returns src Signals
! //*******************************************************************
! std::multiset<Signal> SignalImpl::getDataflowConnSrcs()
! {
!   std::multiset<Signal> res;
!   {
!     std::multiset<BON::ConnectionEnd> in_ends = getInConnEnds("DataflowConn");
!     for ( std::multiset<BON::ConnectionEnd>::iterator cit = in_ends.begin() ; cit != in_ends.end() ; ++cit )
!     {
!       Signal dst( *cit );
!       ASSERT(dst);
!       res.insert( dst);
!     }
!   }
!   return res;
  }
  
--- 239,249 ----
  // 
  //*******************************************************************
! PrimitiveImpl::Firing_Type PrimitiveImpl::getFiring()
  {
! 	std::string val = FCOImpl::getAttribute("Firing")->getStringValue();
  
! 	if ( val == "IFALL") return IFALL_Firing_Type;
! 	else if ( val == "IFANY") return IFANY_Firing_Type;
! 	else throw("None of the possible items");
  }
  
***************
*** 308,314 ****
  // 
  //*******************************************************************
! bool ParamImpl::isGlobal()
  {
!   return getAttribute("Global")->getBooleanValue();
  }
  
--- 252,258 ----
  // 
  //*******************************************************************
! long PrimitiveImpl::getPriority()
  {
! 	return FCOImpl::getAttribute("Priority")->getIntegerValue();
  }
  
***************
*** 317,600 ****
  // 
  //*******************************************************************
! std::string ParamImpl::getInitValue()
! {
!   return getAttribute("InitValue")->getStringValue();
! }
! 
! 
! //*******************************************************************
! // getSrc() return value is a ConnectionEnd casted to Signal
! //*******************************************************************
! Signal DataflowConnImpl::getSrc()
! {
!   BON::ConnectionEnd ce = ConnectionImpl::getSrc();
!   Signal sp( ce);
!   if ( sp)
! 	  return sp;
! 
!   Signal empty;
!   return empty;
! }
! 
! 
! //*******************************************************************
! // getDst() return value is a ConnectionEnd casted to Signal
! //*******************************************************************
! Signal DataflowConnImpl::getDst()
! {
!   BON::ConnectionEnd ce = ConnectionImpl::getDst();
!   Signal sp( ce);
!   if ( sp)
! 	  return sp;
! 
!   Signal empty;
!   return empty;
! }
! 
! 
! //*******************************************************************
! // getSrc() return value is a ConnectionEnd casted to ParameterBase
! //*******************************************************************
! ParameterBase ParameterConnImpl::getSrc()
! {
!   BON::ConnectionEnd ce = ConnectionImpl::getSrc();
!   ParameterBase sp( ce);
!   if ( sp)
! 	  return sp;
! 
!   ParameterBase empty;
!   return empty;
! }
! 
! 
! //*******************************************************************
! // getDst() return value is a ConnectionEnd casted to ParameterBase
! //*******************************************************************
! ParameterBase ParameterConnImpl::getDst()
! {
!   BON::ConnectionEnd ce = ConnectionImpl::getDst();
!   ParameterBase sp( ce);
!   if ( sp)
! 	  return sp;
! 
!   ParameterBase empty;
!   return empty;
! }
! 
! 
! //*******************************************************************
! // getter for role "s" among Signal and its desc's
! //*******************************************************************
! std::set<Signal> ProcessingImpl::gets()
! {
!   std::set<Signal> res;
!   const int len = 2;
!   std::set<BON::FCO> l[ len];
!   l[0] = getChildFCOsAs("OutputSignals");
!   l[1] = getChildFCOsAs("InputSignals");
!   for( int j = 0; j < len; ++j)
!     for( std::set<BON::FCO>::iterator i = l[j].begin(); i != l[j].end(); ++i)
!     {
!        Signal elem(*i);
!        ASSERT(elem);
!        res.insert(elem);
!     }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "OutputSignals" among Signal and its desc's
! //*******************************************************************
! std::set<OutputSignal> ProcessingImpl::getOutputSignals()
! {
!   std::set<OutputSignal> res;
!   std::set<BON::FCO> l = getChildFCOsAs("OutputSignals");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      OutputSignal elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "InputSignals" among Signal and its desc's
! //*******************************************************************
! std::set<InputSignal> ProcessingImpl::getInputSignals()
! {
!   std::set<InputSignal> res;
!   std::set<BON::FCO> l = getChildFCOsAs("InputSignals");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      InputSignal elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "PC" among ParameterConn
! //*******************************************************************
! std::set<ParameterConn> ProcessingImpl::getPC()
! {
!   std::set<ParameterConn> res;
!   std::set<BON::FCO> l = getChildFCOsAs("PC");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      ParameterConn elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "eters" among ParameterBase and its desc's
! //*******************************************************************
! std::set<ParameterBase> ProcessingImpl::geteters()
! {
!   std::set<ParameterBase> res;
!   const int len = 3;
!   std::set<BON::FCO> l[ len];
!   l[0] = getChildFCOsAs("Parameters");
!   l[1] = getChildFCOsAs("InputParameters");
!   l[2] = getChildFCOsAs("OutputParameters");
!   for( int j = 0; j < len; ++j)
!     for( std::set<BON::FCO>::iterator i = l[j].begin(); i != l[j].end(); ++i)
!     {
!        ParameterBase elem(*i);
!        ASSERT(elem);
!        res.insert(elem);
!     }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "Parameters" among ParameterBase and its desc's
! //*******************************************************************
! std::set<Param> ProcessingImpl::getParameters()
! {
!   std::set<Param> res;
!   std::set<BON::FCO> l = getChildFCOsAs("Parameters");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      Param elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "InputParameters" among ParameterBase and its desc's
! //*******************************************************************
! std::set<InputParam> ProcessingImpl::getInputParameters()
! {
!   std::set<InputParam> res;
!   std::set<BON::FCO> l = getChildFCOsAs("InputParameters");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      InputParam elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "OutputParameters" among ParameterBase and its desc's
! //*******************************************************************
! std::set<OutputParam> ProcessingImpl::getOutputParameters()
! {
!   std::set<OutputParam> res;
!   std::set<BON::FCO> l = getChildFCOsAs("OutputParameters");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      OutputParam elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "DFC" among DataflowConn
! //*******************************************************************
! std::set<DataflowConn> CompoundImpl::getDFC()
! {
!   std::set<DataflowConn> res;
!   std::set<BON::FCO> l = getChildFCOsAs("DFC");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      DataflowConn elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
! }
! 
! 
! //*******************************************************************
! // getter for role "Parts" among Processing and its desc's
! //*******************************************************************
! std::set<Processing> CompoundImpl::getParts()
  {
!   std::set<Processing> res;
!   const int len = 2;
!   std::set<BON::FCO> l[ len];
!   l[0] = getChildFCOsAs("CompoundParts");
!   l[1] = getChildFCOsAs("PrimitiveParts");
!   for( int j = 0; j < len; ++j)
!     for( std::set<BON::FCO>::iterator i = l[j].begin(); i != l[j].end(); ++i)
!     {
!        Processing elem(*i);
!        ASSERT(elem);
!        res.insert(elem);
!     }
!   return res;
  }
  
  
  //*******************************************************************
! // getter for role "CompoundParts" among Processing and its desc's
  //*******************************************************************
! std::set<Compound> CompoundImpl::getCompoundParts()
  {
!   std::set<Compound> res;
!   std::set<BON::FCO> l = getChildFCOsAs("CompoundParts");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      Compound elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
! }
! 
  
! //*******************************************************************
! // getter for role "PrimitiveParts" among Processing and its desc's
! //*******************************************************************
! std::set<Primitive> CompoundImpl::getPrimitiveParts()
! {
!   std::set<Primitive> res;
!   std::set<BON::FCO> l = getChildFCOsAs("PrimitiveParts");
!   for( std::set<BON::FCO>::iterator i = l.begin(); i != l.end(); ++i)
!   {
!      Primitive elem(*i);
!      ASSERT(elem);
!      res.insert(elem);
!   }
!   return res;
  }
  
--- 261,282 ----
  // 
  //*******************************************************************
! std::string PrimitiveImpl::getScript()
  {
! 	return FCOImpl::getAttribute("Script")->getStringValue();
  }
  
  
  //*******************************************************************
! // 
  //*******************************************************************
! ParameterBaseImpl::DataType_Type ParameterBaseImpl::getDataType()
  {
! 	std::string val = FCOImpl::getAttribute("DataType")->getStringValue();
  
! 	if ( val == "Integer") return Integer_DataType_Type;
! 	else if ( val == "Double") return Double_DataType_Type;
! 	else if ( val == "Character") return Character_DataType_Type;
! 	else if ( val == "Pointer") return Pointer_DataType_Type;
! 	else throw("None of the possible items");
  }
  
***************
*** 603,609 ****
  // 
  //*******************************************************************
! std::string PrimitiveImpl::getScript()
  {
!   return getAttribute("Script")->getStringValue();
  }
  
--- 285,291 ----
  // 
  //*******************************************************************
! long ParameterBaseImpl::getSize()
  {
! 	return FCOImpl::getAttribute("Size")->getIntegerValue();
  }
  
***************
*** 612,622 ****
  // 
  //*******************************************************************
! PrimitiveImpl::Firing_Type PrimitiveImpl::getFiring()
  {
!   std::string val = getAttribute("Firing")->getStringValue();
! 
!   if ( val == "IFALL") return IFALL_Firing_Type;
!   else if ( val == "IFANY") return IFANY_Firing_Type;
!   else throw("None of the possible items");
  }
  
--- 294,300 ----
  // 
  //*******************************************************************
! std::string ParamImpl::getInitValue()
  {
! 	return FCOImpl::getAttribute("InitValue")->getStringValue();
  }
  
***************
*** 625,631 ****
  // 
  //*******************************************************************
! long PrimitiveImpl::getPriority()
  {
!   return getAttribute("Priority")->getIntegerValue();
  }
  
--- 303,309 ----
  // 
  //*******************************************************************
! bool ParamImpl::isGlobal()
  {
! 	return FCOImpl::getAttribute("Global")->getBooleanValue();
  }
  

Index: SFBonExtension.h
===================================================================
RCS file: /var/lib/gme/GMESRC/Paradigms/SF/BON2Interpreter/SFBonExtension.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** SFBonExtension.h	3 Feb 2004 09:35:08 -0000	1.1
--- SFBonExtension.h	16 Mar 2004 23:48:39 -0000	1.2
***************
*** 7,35 ****
  
  ///BUP
! // add your include files here
  ///EUP
  
  namespace SF_BON
  {
- class FolderImpl;
- DECLARE_BONEXTENSION( BON::Folder, FolderImpl, Folder );
- class ParameterBaseImpl;
- DECLARE_ABSTRACT_BONEXTENSION( BON::Atom, ParameterBaseImpl, ParameterBase );
- class SignalImpl;
- DECLARE_ABSTRACT_BONEXTENSION( BON::Atom, SignalImpl, Signal );
- class ParamImpl;
- DECLARE_BONEXTENSION( ParameterBase, ParamImpl, Param );
- class InputParamImpl;
- DECLARE_BONEXTENSION( ParameterBase, InputParamImpl, InputParam );
- class OutputParamImpl;
- DECLARE_BONEXTENSION( ParameterBase, OutputParamImpl, OutputParam );
- class OutputSignalImpl;
- DECLARE_BONEXTENSION( Signal, OutputSignalImpl, OutputSignal );
- class InputSignalImpl;
- DECLARE_BONEXTENSION( Signal, InputSignalImpl, InputSignal );
- class DataflowConnImpl;
- DECLARE_BONEXTENSION( BON::Connection, DataflowConnImpl, DataflowConn );
- class ParameterConnImpl;
- DECLARE_BONEXTENSION( BON::Connection, ParameterConnImpl, ParameterConn );
  class ProcessingImpl;
  DECLARE_ABSTRACT_BONEXTENSION( BON::Model, ProcessingImpl, Processing );
--- 7,15 ----
  
  ///BUP
! // add your class definitions here
  ///EUP
  
  namespace SF_BON
  {
  class ProcessingImpl;
  DECLARE_ABSTRACT_BONEXTENSION( BON::Model, ProcessingImpl, Processing );
***************
*** 38,175 ****
  class PrimitiveImpl;
  DECLARE_BONEXTENSION( Processing, PrimitiveImpl, Primitive );
! 
  
  typedef std::map<std::string, Primitive> PrimitiveTable;
  
  //*******************************************************************
! // FolderImpl class
  //*******************************************************************
! class FolderImpl :
!   public /*Ex*/ BON::FolderImpl
  {
  public:
!   //
!   // kind and subfolder getters
!   virtual std::set<Processing>	getProcessing();
!   virtual std::set<Compound>	getCompound();
!   virtual std::set<Primitive>	getPrimitive();
!   virtual std::set<Folder>	getFolder();
! 
!   ///BUP
  
!   ///EUP
  };
  
  
  //*******************************************************************
! // ParameterBaseImpl abstract class
  //*******************************************************************
! class ParameterBaseImpl :
!   virtual public /*Ex*/ BON::AtomImpl 
  {
  public:
!   virtual bool isAbstract() { return true; } // it is an abstract class, it will no be instantiated
!   typedef enum
!   {
!     Integer_DataType_Type,
!     Double_DataType_Type,
!     Character_DataType_Type,
!     Pointer_DataType_Type
!   } DataType_Type;
!   //
!   // connectionEnd getters
!   virtual std::set<ParameterConn>	getInParameterConnLinks();
!   virtual std::set<ParameterConn>	getOutParameterConnLinks();
!   virtual std::set<ParameterConn>	getParameterConnLinks();
!   virtual std::multiset<ParameterBase>	getParameterConnDsts();
!   virtual std::multiset<ParameterBase>	getParameterConnSrcs();
!   //
!   // attribute getters
!   virtual long	getSize();
!   virtual ParameterBaseImpl::DataType_Type	getDataType();
  
!   ///BUP
  	public :
! 		int size;
! 		virtual void initialize();
!   ///EUP
  };
  
  
  //*******************************************************************
! // SignalImpl abstract class
  //*******************************************************************
! class SignalImpl :
!   virtual public /*Ex*/ BON::AtomImpl 
  {
  public:
!   virtual bool isAbstract() { return true; } // it is an abstract class, it will no be instantiated
!   //
!   // connectionEnd getters
!   virtual std::set<DataflowConn>	getInDataflowConnLinks();
!   virtual std::set<DataflowConn>	getOutDataflowConnLinks();
!   virtual std::set<DataflowConn>	getDataflowConnLinks();
!   virtual std::multiset<Signal>	getDataflowConnDsts();
!   virtual std::multiset<Signal>	getDataflowConnSrcs();
  
!   ///BUP
! 	friend class PrimitiveImpl;
  	public :
! 		virtual void initialize() { port = 0; }
! 	protected:
! 		std::set<Signal> connections;
! 		int yloc;
! 		int port;
! 	public:
! 		void addConnection(Signal signal)		{ connections.insert(signal); }
! 		void incrementPort()					{ port++; }
! 		void setLocation();
!   ///EUP
  };
  
  
  //*******************************************************************
! // ParamImpl class
  //*******************************************************************
! class ParamImpl :
!   public /*RG*/ ParameterBaseImpl 
  {
  public:
!   virtual bool isAbstract() { return false; } // it is not an abstract class
!   //
!   // attribute getters
!   virtual bool	isGlobal();
!   virtual std::string	getInitValue();
! 
!   ///BUP
! 	friend class PrimitiveImpl;
! 	public :
! 		std::string longName;
! 		bool listed;
! 		static std::set<Param> instances;
  
  	public :
! 		void addToList();
! 		void writeContextDef(FILE *fpt,const std::string &fieldName);
! 		void writeGlobal(FILE *fpt,bool ext = true);
! 		void writeContextInit(FILE *fpt,std::string &actorName,const std::string &fieldName);
! 
  		virtual void initialize();
! 
! 		static void writeGlobals(FILE *fpt,bool ext = true);
!   ///EUP
  };
  
  
  //*******************************************************************
! // InputParamImpl class
  //*******************************************************************
  class InputParamImpl :
!   public /*RG*/ ParameterBaseImpl 
  {
  public:
-   virtual bool isAbstract() { return false; } // it is not an abstract class
  
!   ///BUP
  	friend class PrimitiveImpl;
  
--- 18,166 ----
  class PrimitiveImpl;
  DECLARE_BONEXTENSION( Processing, PrimitiveImpl, Primitive );
! class ParameterBaseImpl;
! DECLARE_BONEXTENSION( BON::Atom, ParameterBaseImpl, ParameterBase );
! class InputParamImpl;
! DECLARE_BONEXTENSION( ParameterBase, InputParamImpl, InputParam );
! class ParamImpl;
! DECLARE_BONEXTENSION( ParameterBase, ParamImpl, Param );
! class SignalImpl;
! DECLARE_BONEXTENSION( BON::Atom, SignalImpl, Signal );
  
  typedef std::map<std::string, Primitive> PrimitiveTable;
  
  //*******************************************************************
! //   C  L  A  S  S   ProcessingImpl
  //*******************************************************************
! class ProcessingImpl :
!   virtual public BON::ModelImpl 
  {
  public:
! 	//
! 	// kind and role getters
! 	virtual std::set<InputParam>            getInputParameters();
! 	virtual std::set<Signal>                getInputSignals();
! 	virtual std::set<ParameterBase>         getOutputParameters();
! 	virtual std::set<Signal>                getOutputSignals();
! 	virtual std::set<BON::Connection>       getPC();
! 	virtual std::set<Param>                 getParameters();
! 	virtual std::set<ParameterBase>         geteters();
! 	virtual std::set<Signal>                gets();
  
! 	///BUP
! 	public :
! 		void initialize() {}
! 		virtual void traverse(std::set<Primitive> &primitives) {}
! 	///EUP
  };
  
  
  //*******************************************************************
! //   C  L  A  S  S   CompoundImpl
  //*******************************************************************
! class CompoundImpl :
!   public ProcessingImpl 
  {
  public:
! 	//
! 	// kind and role getters
! 	virtual std::set<Compound>              getCompoundParts();
! 	virtual std::set<BON::Connection>       getDFC();
! 	virtual std::set<Processing>            getParts();
! 	virtual std::set<Primitive>             getPrimitiveParts();
  
! 	///BUP
  	public :
! 		void initialize();
! 	virtual void traverse(std::set<Primitive> &primitives);
! 	///EUP
  };
  
  
  //*******************************************************************
! //   C  L  A  S  S   PrimitiveImpl
  //*******************************************************************
! class PrimitiveImpl :
!   public ProcessingImpl 
  {
  public:
! 	typedef enum
! 	{
! 		IFALL_Firing_Type,
! 		IFANY_Firing_Type
! 	} Firing_Type;
! 	//
! 	// attribute getters
! 	virtual PrimitiveImpl::Firing_Type      getFiring();
! 	virtual long        getPriority();
! 	virtual std::string getScript();
  
! 	///BUP
! 
! 	private :
! 		int id;
! 		int outputPortNo;
! 		int inputPortNo;
! 		std::string actorName;
! 
! 		std::set<Param> parameters;
! 		std::set<InputParam> inputParameters;
! 		static PrimitiveTable contextTable;
  	public :
! 		void initialize();
! 		void setActorName();
! 		std::string getActorName() { return actorName; }
! 		void setPorts(const std::set<BON::FCO> &ports);
! 		void writeActorCreate(FILE *fpt);
! 		void writeActorConnect(FILE *fpt);
! 		void writeContextDef(FILE *fpt);
! 		void writeContextCreate(FILE *fpt,bool ext = true);
! 		void writeSetContext(FILE *fpt);
! 
! 		static void writeContextDefs(FILE *fpt);
! 		static void writeScriptRegs(FILE *fpt);
! 		static void writeScriptProto(FILE *fpt);
! 	
! 		virtual void traverse(std::set<Primitive> &primitives);
! 
! 	///EUP
  };
  
  
  //*******************************************************************
! //   C  L  A  S  S   ParameterBaseImpl
  //*******************************************************************
! class ParameterBaseImpl :
!   virtual public BON::AtomImpl 
  {
  public:
! 	typedef enum
! 	{
! 		Integer_DataType_Type,
! 		Double_DataType_Type,
! 		Character_DataType_Type,
! 		Pointer_DataType_Type
! 	} DataType_Type;
! 	//
! 	// attribute getters
! 	virtual ParameterBaseImpl::DataType_Type          getDataType();
! 	virtual long        getSize();
  
+ 	///BUP
  	public :
! 		int size;
  		virtual void initialize();
! 	///EUP
  };
  
  
  //*******************************************************************
! //   C  L  A  S  S   InputParamImpl
  //*******************************************************************
  class InputParamImpl :
!   public ParameterBaseImpl 
  {
  public:
  
! 	///BUP
  	friend class PrimitiveImpl;
  
***************
*** 178,362 ****
  	public :
  		virtual void initialize();
!   ///EUP
! };
! 
! 
! //*******************************************************************
! // OutputParamImpl class
! //*******************************************************************
! class OutputParamImpl :
!   public /*RG*/ ParameterBaseImpl 
! {
! public:
!   virtual bool isAbstract() { return false; } // it is not an abstract class
! 
!   ///BUP
! 
!   ///EUP
! };
! 
! 
! //*******************************************************************
! // OutputSignalImpl class
! //*******************************************************************
! class OutputSignalImpl :
!   public /*RG*/ SignalImpl 
! {
! public:
!   virtual bool isAbstract() { return false; } // it is not an abstract class
! 
!   ///BUP
!   ///EUP
! };
! 
! 
! //*******************************************************************
! // InputSignalImpl class
! //*******************************************************************
! class InputSignalImpl :
!   public /*RG*/ SignalImpl 
! {
! public:
!   virtual bool isAbstract() { return false; } // it is not an abstract class
! 
!   ///BUP
!   ///EUP
! };
! 
! 
! //*******************************************************************
! // DataflowConnImpl class
! //*******************************************************************
! class DataflowConnImpl :
!   virtual public /*Ex*/ BON::ConnectionImpl 
! {
! public:
!   virtual bool isAbstract() { return false; } // it is not an abstract class
!   //
!   // connectionEnd getters
!   virtual Signal	getSrc();
!   virtual Signal	getDst();
! 
!   ///BUP
!   ///EUP
! };
! 
! 
! //*******************************************************************
! // ParameterConnImpl class
! //*******************************************************************
! class ParameterConnImpl :
!   virtual public /*Ex*/ BON::ConnectionImpl 
! {
! public:
!   virtual bool isAbstract() { return false; } // it is not an abstract class
!   //
!   // connectionEnd getters
!   virtual ParameterBase	getSrc();
!   virtual ParameterBase	getDst();
! 
!   ///BUP
!   ///EUP
  };
  
  
  //*******************************************************************
! // ProcessingImpl abstract class
  //*******************************************************************
! class ProcessingImpl :
!   virtual public /*Ex*/ BON::ModelImpl 
  {
  public:
!   virtual bool isAbstract() { return true; } // it is an abstract class, it will no be instantiated
!   //
!   // kind and role getters
!   virtual std::set<Signal>	gets();
!   virtual std::set<OutputSignal>	getOutputSignals();
!   virtual std::set<InputSignal>	getInputSignals();
!   virtual std::set<ParameterConn>	getPC();
!   virtual std::set<ParameterBase>	geteters();
!   virtual std::set<Param>	getParameters();
!   virtual std::set<InputParam>	getInputParameters();
!   virtual std::set<OutputParam>	getOutputParameters();
  
!   ///BUP
  	public :
! 		void initialize() {}
! 		virtual void traverse(std::set<Primitive> &primitives) {}
!   ///EUP
! };
  
  
! //*******************************************************************
! // CompoundImpl class
! //*******************************************************************
! class CompoundImpl :
!   public /*RG*/ ProcessingImpl 
! {
! public:
!   virtual bool isAbstract() { return false; } // it is not an abstract class
!   //
!   // kind and role getters
!   virtual std::set<DataflowConn>	getDFC();
!   virtual std::set<Processing>	getParts();
!   virtual std::set<Compound>	getCompoundParts();
!   virtual std::set<Primitive>	getPrimitiveParts();
  
!   ///BUP
! 	public :
! 		void initialize();
! 	virtual void traverse(std::set<Primitive> &primitives);
!   ///EUP
  };
  
  
  //*******************************************************************
! // PrimitiveImpl class
  //*******************************************************************
! class PrimitiveImpl :
!   public /*RG*/ ProcessingImpl 
  {
  public:
-   virtual bool isAbstract() { return false; } // it is not an abstract class
-   typedef enum
-   {
-     IFALL_Firing_Type,
-     IFANY_Firing_Type
-   } Firing_Type;
-   //
-   // attribute getters
-   virtual std::string	getScript();
-   virtual PrimitiveImpl::Firing_Type	getFiring();
-   virtual long	getPriority();
  
!   ///BUP
! 
! 	private :
! 		int id;
! 		int outputPortNo;
! 		int inputPortNo;
! 		std::string actorName;
! 
! 		std::set<Param> parameters;
! 		std::set<InputParam> inputParameters;
! 		static PrimitiveTable contextTable;
  	public :
! 		void initialize();
! 		void setActorName();
! 		std::string getActorName() { return actorName; }
! 		void setPorts(const std::set<BON::FCO> &ports);
! 		void writeActorCreate(FILE *fpt);
! 		void writeActorConnect(FILE *fpt);
! 		void writeContextDef(FILE *fpt);
! 		void writeContextCreate(FILE *fpt,bool ext = true);
! 		void writeSetContext(FILE *fpt);
! 
! 		static void writeContextDefs(FILE *fpt);
! 		static void writeScriptRegs(FILE *fpt);
! 		static void writeScriptProto(FILE *fpt);
! 	
! 		virtual void traverse(std::set<Primitive> &primitives);
! 
!   ///EUP
  };
  
--- 169,229 ----
  	public :
  		virtual void initialize();
! 	///EUP
  };
  
  
  //*******************************************************************
! //   C  L  A  S  S   ParamImpl
  //*******************************************************************
! class ParamImpl :
!   public ParameterBaseImpl 
  {
  public:
! 	//
! 	// attribute getters
! 	virtual std::string getInitValue();
! 	virtual bool        isGlobal();
  
! 	///BUP
! 	friend class PrimitiveImpl;
  	public :
! 		std::string longName;
! 		bool listed;
! 		static std::set<Param> instances;
  
+ 	public :
+ 		void addToList();
+ 		void writeContextDef(FILE *fpt,const std::string &fieldName);
+ 		void writeGlobal(FILE *fpt,bool ext = true);
+ 		void writeContextInit(FILE *fpt,std::string &actorName,const std::string &fieldName);
  
! 		virtual void initialize();
  
! 		static void writeGlobals(FILE *fpt,bool ext = true);
! 	///EUP
  };
  
  
  //*******************************************************************
! //   C  L  A  S  S   SignalImpl
  //*******************************************************************
! class SignalImpl :
!   virtual public BON::AtomImpl 
  {
  public:
  
! 	///BUP
! 	friend class PrimitiveImpl;
  	public :
! 		virtual void initialize() { port = 0; }
! 	protected:
! 		std::set<Signal> connections;
! 		int yloc;
! 		int port;
! 	public:
! 		void addConnection(Signal signal)		{ connections.insert(signal); }
! 		void incrementPort()					{ port++; }
! 		void setLocation();
! 	///EUP
  };
  

Index: SFBonUserExtension.cpp
===================================================================
RCS file: /var/lib/gme/GMESRC/Paradigms/SF/BON2Interpreter/SFBonUserExtension.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SFBonUserExtension.cpp	3 Feb 2004 10:53:05 -0000	1.2
--- SFBonUserExtension.cpp	16 Mar 2004 23:48:39 -0000	1.3
***************
*** 165,171 ****
  	void PrimitiveImpl::writeActorConnect(FILE *fpt)
  	{
! 		std::set<OutputSignal> list = getOutputSignals();
  		outputPortNo = list.size();
! 		for ( std::set<OutputSignal>::iterator it = list.begin() ; it != list.end() ; it++ ) {
  			Signal signal( *it );
  			for ( std::set<Signal>::iterator sit = signal->connections.begin() ; sit != signal->connections.end() ; sit++ ) {
--- 165,171 ----
  	void PrimitiveImpl::writeActorConnect(FILE *fpt)
  	{
! 		std::set<Signal> list = getOutputSignals();
  		outputPortNo = list.size();
! 		for ( std::set<Signal>::iterator it = list.begin() ; it != list.end() ; it++ ) {
  			Signal signal( *it );
  			for ( std::set<Signal>::iterator sit = signal->connections.begin() ; sit != signal->connections.end() ; sit++ ) {

Index: SFInterpreterBON2Component.dsp
===================================================================
RCS file: /var/lib/gme/GMESRC/Paradigms/SF/BON2Interpreter/SFInterpreterBON2Component.dsp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** SFInterpreterBON2Component.dsp	3 Feb 2004 09:35:08 -0000	1.4
--- SFInterpreterBON2Component.dsp	16 Mar 2004 23:48:39 -0000	1.5
***************
*** 223,230 ****
  # Begin Source File
  
- SOURCE=.\PrintDlg.cpp
- # End Source File
- # Begin Source File
- 
  SOURCE=.\SFBonExtension.cpp
  # End Source File
--- 223,226 ----
***************
*** 306,309 ****
--- 302,309 ----
  
  SOURCE=.\Resource.h
+ # End Source File
+ # Begin Source File
+ 
+ SOURCE=.\SFBonExtension.h
  # End Source File
  # Begin Source File



More information about the GME-commit mailing list