[GME-commit] GMESRC/SDK/BON BONImpl.cpp,1.27,1.28 BONImpl.h,1.15,1.16

gme-commit at list.isis.vanderbilt.edu gme-commit at list.isis.vanderbilt.edu
Thu Sep 8 20:10:00 CDT 2005


Update of /project/gme-repository/GMESRC/SDK/BON
In directory escher:/tmp/cvs-serv648

Modified Files:
	BONImpl.cpp BONImpl.h 
Log Message:
Fixing the bug when invoking getParent() and then inquiring its TypeInhObject object, that being Null.
ModelImpl::attachI method (ReferenceImpl, ...) didn't included the TypeInhObj object related functionality.


CVS User: Zoltan Molnar, ISIS (zolmol)

Index: BONImpl.h
===================================================================
RCS file: /project/gme-repository/GMESRC/SDK/BON/BONImpl.h,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** BONImpl.h	8 Aug 2005 15:49:13 -0000	1.15
--- BONImpl.h	8 Sep 2005 19:09:47 -0000	1.16
***************
*** 676,679 ****
--- 676,680 ----
  			FCOImpl();
  			static FCOImpl* 	attachI( IMgaFCO* spFCO, ProjectImpl* pProject = NULL, const MON::Object& meta = MON::Object() );
+ 			static void         attachIPost( FCOImpl* pFCO );
  			void				doInitialize( ProjectImpl* pProject );
  		public :

Index: BONImpl.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/SDK/BON/BONImpl.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -d -r1.27 -r1.28
*** BONImpl.cpp	8 Aug 2005 15:49:13 -0000	1.27
--- BONImpl.cpp	8 Sep 2005 19:09:47 -0000	1.28
***************
*** 2937,2941 ****
  			}
  		}
! 		if ( ! pFCO->m_pTIObject && pFCO->getStatus() == OST_Exists ) {
  			if ( pFCO->isInstance() )
  				pFCO->m_pTIObject = new InstanceImpl( pFCO );
--- 2937,2954 ----
  			}
  		}
! 		// attachIPost( pFCO); // ZolMol: will be called by the special attachI's like: ModelImpl::attachI
! 		return pFCO;
! 	}
! 	
! 	// mod by Zolmol:
! 	// FCOImpl::attachIPost method factored out from FCOImpl::attachI
! 	// @called: from the attachI method of ModelImpl, AtomImpl, ReferenceImpl, 
! 	//          ConnectionImpl, SetImpl classes
! 	// @reason: in case of a model if FCOImpl::attachI is called then ModelImpl::attachI 
! 	//          is called for sure, but if ModelImpl::attachI is called it does not mean
! 	//          it has been called from FCOImpl::attachI
! 	void FCOImpl::attachIPost( FCOImpl* pFCO )
! 	{
! 		if ( pFCO && ! pFCO->m_pTIObject && pFCO->getStatus() == OST_Exists ) {
  			if ( pFCO->isInstance() )
  				pFCO->m_pTIObject = new InstanceImpl( pFCO );
***************
*** 2943,2947 ****
  				pFCO->m_pTIObject = new TypeImpl( pFCO );
  		}
- 		return pFCO;
  	}
  
--- 2956,2959 ----
***************
*** 4202,4206 ****
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		return dynamic_cast<AtomImpl*>( pObject );
  	}
  
--- 4214,4221 ----
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 
! 		AtomImpl* ai = dynamic_cast<AtomImpl*>( pObject );
! 		attachIPost( ai);
! 		return ai;
  	}
  
***************
*** 4342,4346 ****
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		return dynamic_cast<ModelImpl*>( pObject );
  	}
  
--- 4357,4364 ----
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		
! 		ModelImpl* mi = dynamic_cast<ModelImpl*>( pObject );
! 		attachIPost( mi);
! 		return mi;
  	}
  
***************
*** 4917,4921 ****
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		return dynamic_cast<SetImpl*>( pObject );
  	}
  
--- 4935,4942 ----
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		
! 		SetImpl* si = dynamic_cast<SetImpl*>( pObject );
! 		attachIPost( si);
! 		return si;
  	}
  
***************
*** 5294,5298 ****
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		return dynamic_cast<ReferenceImpl*>( pObject );
  	}
  
--- 5315,5322 ----
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		
! 		ReferenceImpl* ri = dynamic_cast<ReferenceImpl*>( pObject );
! 		attachIPost( ri);
! 		return ri;
  	}
  
***************
*** 5705,5709 ****
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		return dynamic_cast<ConnectionImpl*>( pObject );
  	}
  
--- 5729,5736 ----
  		dynamic_cast<FCOImpl*>( pObject )->doInitialize( pProject );
  		pObject->initialize();
! 		
! 		ConnectionImpl* ci = dynamic_cast<ConnectionImpl*>( pObject );
! 		attachIPost( ci);
! 		return ci;
  	}
  



More information about the GME-commit mailing list