[commit] r1171 - trunk/GME/Meta
GMESRC Repository Notifications
gme-commit at list.isis.vanderbilt.edu
Fri Feb 11 14:51:53 CST 2011
Author: ksmyth
Date: Fri Feb 11 14:51:52 2011
New Revision: 1171
Log:
Fix GME-334: MgaMetaBase now has a COM pointer to the project. Cycles are broken on Close()
Modified:
trunk/GME/Meta/Meta.cpp
trunk/GME/Meta/MetaUtilities.h
trunk/GME/Meta/MgaMetaAspect.cpp
trunk/GME/Meta/MgaMetaAttribute.cpp
trunk/GME/Meta/MgaMetaBase.cpp
trunk/GME/Meta/MgaMetaBase.h
trunk/GME/Meta/MgaMetaConnJoint.cpp
trunk/GME/Meta/MgaMetaConnection.cpp
trunk/GME/Meta/MgaMetaFCO.cpp
trunk/GME/Meta/MgaMetaFolder.cpp
trunk/GME/Meta/MgaMetaModel.cpp
trunk/GME/Meta/MgaMetaPart.cpp
trunk/GME/Meta/MgaMetaPointerSpec.cpp
trunk/GME/Meta/MgaMetaReference.cpp
trunk/GME/Meta/MgaMetaRegNode.cpp
trunk/GME/Meta/MgaMetaSet.cpp
Modified: trunk/GME/Meta/Meta.cpp
==============================================================================
--- trunk/GME/Meta/Meta.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/Meta.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -113,7 +113,7 @@
void TraverseObject(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
me.Load();
@@ -187,7 +187,7 @@
void TraverseCollection(CMgaMetaProject *metaproject, CCoreObjectPtr &me, attrid_type attrid)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
coreobjects_type coreobjects;
Modified: trunk/GME/Meta/MetaUtilities.h
==============================================================================
--- trunk/GME/Meta/MetaUtilities.h Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MetaUtilities.h Fri Feb 11 14:51:52 2011 (r1171)
@@ -377,7 +377,7 @@
ASSERT( me != NULL );
CMgaMetaProject *metaproject = me->metaproject;
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
COMTRY
{
@@ -403,7 +403,7 @@
ASSERT( me != NULL );
CMgaMetaProject *metaproject = me->metaproject;
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
COMTRY
{
Modified: trunk/GME/Meta/MgaMetaAspect.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaAspect.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaAspect.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -13,7 +13,7 @@
if( role == NULL )
COMRETURN(E_POINTER);
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
COMTRY
{
@@ -38,7 +38,7 @@
void CMgaMetaAspect::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaBase::Traverse(metaproject, me);
Modified: trunk/GME/Meta/MgaMetaAttribute.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaAttribute.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaAttribute.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -87,7 +87,7 @@
void CMgaMetaAttribute::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaBase::Traverse(metaproject, me);
Modified: trunk/GME/Meta/MgaMetaBase.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaBase.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaBase.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -8,18 +8,17 @@
CMgaMetaBase::~CMgaMetaBase()
{
- if( metaproject != NULL )
+ if (metaprojectref != NULL)
metaproject->UnregisterMetaBase(metaref, this);
#ifdef _DEBUG
- metaproject = NULL;
metaref = 0;
#endif
}
HRESULT CMgaMetaBase::PutMetaRef(metaref_type p)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
if( p == metaref )
return S_OK;
@@ -33,7 +32,7 @@
void CMgaMetaBase::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
me.Load();
metaref_type metaref = me.GetLongValue(ATTRID_METAREF);
@@ -49,7 +48,7 @@
metaproject->RegisterMetaBase(metaref, base);
- base->metaproject = metaproject;
+ base->metaprojectref = metaproject;
base->metaref = metaref;
TraverseCollection(metaproject, me, ATTRID_REGNODES_COLL);
Modified: trunk/GME/Meta/MgaMetaBase.h
==============================================================================
--- trunk/GME/Meta/MgaMetaBase.h Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaBase.h Fri Feb 11 14:51:52 2011 (r1171)
@@ -2,13 +2,8 @@
#ifndef MGA_MGAMETABASE_H
#define MGA_MGAMETABASE_H
-#ifndef MGA_MGAMETAPROJECT_h
#include "MgaMetaProject.h"
-#endif
-
-#ifndef MGA_MGAMETAREGNODE_H
#include "MgaMetaRegNode.h"
-#endif
// --------------------------- CMgaMetaBase
@@ -17,7 +12,7 @@
public CMgaMetaRegNodes
{
public:
- CMgaMetaBase() : metaproject(NULL) { }
+ CMgaMetaBase() { }
~CMgaMetaBase();
public:
@@ -25,7 +20,11 @@
static void Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me);
- CMgaMetaProject *metaproject;
+ CComPtr<IMgaMetaProject> metaprojectref;
+ CMgaMetaProject* getMetaProject() {
+ return static_cast<CMgaMetaProject*>(static_cast<IMgaMetaProject*>(metaprojectref));
+ }
+ __declspec(property(get = getMetaProject)) CMgaMetaProject *metaproject;
metaref_type metaref;
};
Modified: trunk/GME/Meta/MgaMetaConnJoint.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaConnJoint.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaConnJoint.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -9,7 +9,7 @@
void CMgaMetaConnJoint::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
TraverseCollection(metaproject, me, ATTRID_PTRSPECS_COLL);
Modified: trunk/GME/Meta/MgaMetaConnection.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaConnection.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaConnection.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -12,7 +12,7 @@
COMTRY
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
jointpaths_type jointpaths;
metaproject->CreateJointPaths(paths, jointpaths);
@@ -48,7 +48,7 @@
{
CHECK_OUT(p);
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
COMTRY
{
@@ -69,7 +69,7 @@
void CMgaMetaConnection::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaFCO::Traverse(metaproject, me);
Modified: trunk/GME/Meta/MgaMetaFCO.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaFCO.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaFCO.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -119,7 +119,7 @@
void CMgaMetaFCO::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaBase::Traverse(metaproject, me);
Modified: trunk/GME/Meta/MgaMetaFolder.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaFolder.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaFolder.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -126,7 +126,7 @@
void CMgaMetaFolder::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaBase::Traverse(metaproject, me);
Modified: trunk/GME/Meta/MgaMetaModel.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaModel.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaModel.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -121,7 +121,7 @@
// prepare the jointpaths
jointpaths_type jointpaths;
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
metaproject->CreateJointPaths(paths, jointpaths);
// traverse the roles
@@ -168,7 +168,7 @@
// prepare the pathitems
pathitems_type pathitems;
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
metaproject->CreatePathItems(begin(path), end(path), pathitems);
// traverse the roles
@@ -215,7 +215,7 @@
// prepare the pathitems
pathitems_type pathitems;
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
metaproject->CreatePathItems(begin(path), end(path), pathitems);
// traverse the roles
@@ -302,7 +302,7 @@
if( kind == NULL )
COMRETURN(E_POINTER);
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
COMTRY
{
@@ -327,7 +327,7 @@
void CMgaMetaModel::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaFCO::Traverse(metaproject, me);
Modified: trunk/GME/Meta/MgaMetaPart.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaPart.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaPart.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -78,7 +78,7 @@
void CMgaMetaPart::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaBase::Traverse(metaproject, me);
Modified: trunk/GME/Meta/MgaMetaPointerSpec.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaPointerSpec.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaPointerSpec.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -28,7 +28,7 @@
void CMgaMetaPointerSpec::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
TraverseCollection(metaproject, me, ATTRID_PTRITEMS_COLL);
Modified: trunk/GME/Meta/MgaMetaReference.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaReference.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaReference.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -11,7 +11,7 @@
COMTRY
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
pathitems_type pathitems;
metaproject->CreatePathItems(begin(path), end(path), pathitems);
@@ -29,7 +29,7 @@
void CMgaMetaReference::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaFCO::Traverse(metaproject, me);
Modified: trunk/GME/Meta/MgaMetaRegNode.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaRegNode.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaRegNode.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -147,7 +147,7 @@
void CMgaMetaRegNode::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
TraverseCollection(metaproject, me, ATTRID_REGNODES_COLL);
Modified: trunk/GME/Meta/MgaMetaSet.cpp
==============================================================================
--- trunk/GME/Meta/MgaMetaSet.cpp Thu Feb 10 10:15:35 2011 (r1170)
+++ trunk/GME/Meta/MgaMetaSet.cpp Fri Feb 11 14:51:52 2011 (r1171)
@@ -11,7 +11,7 @@
COMTRY
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
pathitems_type pathitems;
metaproject->CreatePathItems(begin(path), end(path), pathitems);
@@ -29,7 +29,7 @@
void CMgaMetaSet::Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me)
{
- ASSERT( metaproject != NULL );
+ ASSERT( metaprojectref != NULL );
ASSERT( me != NULL );
CMgaMetaFCO::Traverse(metaproject, me);
More information about the gme-commit
mailing list