[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