[cig-commits] r5014 - in long/3D/Gale/trunk/src/PICellerator: . Apps/BuoyancyBenchmark/tests/AnalyticPressure Apps/RayleighTaylor/tests/AnalyticBlock Apps/RayleighTaylor/tests/AnalyticColumn MaterialPoints/src MaterialPoints/tests MaterialPoints/tests/plugins PopulationControl/src PopulationControl/tests/plugins Utils/src Voronoi/src Voronoi/tests/plugins Weights/src Weights/tests/plugins plugins/Application plugins/CalculateParticleDisplacement plugins/Output/MaterialCentroid src

walter at geodynamics.org walter at geodynamics.org
Sat Oct 14 11:07:05 PDT 2006


Author: walter
Date: 2006-10-14 11:07:03 -0700 (Sat, 14 Oct 2006)
New Revision: 5014

Modified:
   long/3D/Gale/trunk/src/PICellerator/
   long/3D/Gale/trunk/src/PICellerator/Apps/BuoyancyBenchmark/tests/AnalyticPressure/AnalyticPressure.c
   long/3D/Gale/trunk/src/PICellerator/Apps/RayleighTaylor/tests/AnalyticBlock/AnalyticBlock.c
   long/3D/Gale/trunk/src/PICellerator/Apps/RayleighTaylor/tests/AnalyticColumn/AnalyticColumn.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/BackgroundParticleLayout.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/BackgroundParticleLayout.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/CoincidentMapper.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/CoincidentMapper.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Context.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Context.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/GaussMapper.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/GaussMapper.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointMapper.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointMapper.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointsSwarm.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointsSwarm.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ManyToOneMapper.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ManyToOneMapper.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MappedParticleLayout.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MappedParticleLayout.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Material.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Material.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialFeVariable.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialFeVariable.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialPointsSwarm.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialPointsSwarm.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/OneToOneMapper.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/OneToOneMapper.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ParticleFeVariable.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ParticleFeVariable.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/PeriodicBoundariesManager.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/PeriodicBoundariesManager.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvector.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvector.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorD.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorD.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorW.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorW.h
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/plugins/testAdvection.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/plugins/testMaterialFeVariable.c
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/testPeriodicBCs.c
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiRemove.c
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiRemove.h
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiSplitting.c
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiSplitting.h
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/EscapedRoutine.c
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/EscapedRoutine.h
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/RemovalRoutine.c
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/RemovalRoutine.h
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/ReseedSplitting.c
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/ReseedSplitting.h
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SplittingRoutine.c
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SplittingRoutine.h
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/tests/plugins/testDiscrepancy.c
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/tests/plugins/testParticleCoords.c
   long/3D/Gale/trunk/src/PICellerator/Utils/src/BuoyancyForceTerm.c
   long/3D/Gale/trunk/src/PICellerator/Utils/src/BuoyancyForceTerm.h
   long/3D/Gale/trunk/src/PICellerator/Utils/src/MaterialSwarmVariable.c
   long/3D/Gale/trunk/src/PICellerator/Utils/src/MaterialSwarmVariable.h
   long/3D/Gale/trunk/src/PICellerator/Voronoi/src/AdaptiveVoronoi.c
   long/3D/Gale/trunk/src/PICellerator/Voronoi/src/AdaptiveVoronoi.h
   long/3D/Gale/trunk/src/PICellerator/Voronoi/src/CellularAutomataVoronoi.c
   long/3D/Gale/trunk/src/PICellerator/Voronoi/src/CellularAutomataVoronoi.h
   long/3D/Gale/trunk/src/PICellerator/Voronoi/src/DiscreteVoronoi.c
   long/3D/Gale/trunk/src/PICellerator/Voronoi/src/DiscreteVoronoi.h
   long/3D/Gale/trunk/src/PICellerator/Voronoi/tests/plugins/testDiscreteVoronoi.c
   long/3D/Gale/trunk/src/PICellerator/Weights/src/ConstantWeights.c
   long/3D/Gale/trunk/src/PICellerator/Weights/src/ConstantWeights.h
   long/3D/Gale/trunk/src/PICellerator/Weights/src/DiscreteVoronoiWeights.c
   long/3D/Gale/trunk/src/PICellerator/Weights/src/DiscreteVoronoiWeights.h
   long/3D/Gale/trunk/src/PICellerator/Weights/src/IterativeWeights.c
   long/3D/Gale/trunk/src/PICellerator/Weights/src/IterativeWeights.h
   long/3D/Gale/trunk/src/PICellerator/Weights/src/MomentBalanceWeights.c
   long/3D/Gale/trunk/src/PICellerator/Weights/src/MomentBalanceWeights.h
   long/3D/Gale/trunk/src/PICellerator/Weights/src/VolumeWeights.c
   long/3D/Gale/trunk/src/PICellerator/Weights/src/VolumeWeights.h
   long/3D/Gale/trunk/src/PICellerator/Weights/src/WeightsCalculator.c
   long/3D/Gale/trunk/src/PICellerator/Weights/src/WeightsCalculator.h
   long/3D/Gale/trunk/src/PICellerator/Weights/tests/plugins/testElementIntegral.c
   long/3D/Gale/trunk/src/PICellerator/plugins/Application/Application.c
   long/3D/Gale/trunk/src/PICellerator/plugins/CalculateParticleDisplacement/CalculateParticleDisplacement.c
   long/3D/Gale/trunk/src/PICellerator/plugins/Output/MaterialCentroid/MaterialCentroid.c
   long/3D/Gale/trunk/src/PICellerator/src/main.c
Log:
 r503 at earth:  boo | 2006-10-14 11:02:56 -0700
  r502 at earth (orig r374):  SteveQuenette | 2006-10-12 01:59:41 -0700
  STGERMAIN INTERFACE CHANGE
  * *_Construct now takes a third argument "void* data"
  * This code re-affirms a "Context" as a "Component" with its interfaces (the phases) implemented as entry points.
     * Entry point "IC" renamed to "Initialise"
        * Entry point "Run" renamed to "Execute"
        * All the code in main.c to construct a context is taken out and moved into the context itself: i.e. a context now constructs itself!
  
 



Property changes on: long/3D/Gale/trunk/src/PICellerator
___________________________________________________________________
Name: svk:merge
   - 00de75e2-39f1-0310-8538-9683d00a49cc:/trunk:373
aee11096-cf10-0410-a191-eea5772ba81f:/cig:493
   + 00de75e2-39f1-0310-8538-9683d00a49cc:/trunk:374
aee11096-cf10-0410-a191-eea5772ba81f:/cig:503

Modified: long/3D/Gale/trunk/src/PICellerator/Apps/BuoyancyBenchmark/tests/AnalyticPressure/AnalyticPressure.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Apps/BuoyancyBenchmark/tests/AnalyticPressure/AnalyticPressure.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Apps/BuoyancyBenchmark/tests/AnalyticPressure/AnalyticPressure.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -72,15 +72,15 @@
 }
 
 	
-void _AnalyticPressure_Construct( void* analyticSolution, Stg_ComponentFactory* cf ) {
+void _AnalyticPressure_Construct( void* analyticSolution, Stg_ComponentFactory* cf, void* data ) {
 	AnalyticPressure*        self           = (AnalyticPressure*)analyticSolution;
 	FeVariable*              pressureField;
 
 	/* Construct Parent */
-	_AnalyticSolution_Construct( self, cf );
+	_AnalyticSolution_Construct( self, cf, data );
 
 	/* Create Analytic Fields */
-	pressureField = Stg_ComponentFactory_ConstructByName( cf, "PressureField", FeVariable, True );
+	pressureField = Stg_ComponentFactory_ConstructByName( cf, "PressureField", FeVariable, True, data ); 
 	AnalyticSolution_CreateAnalyticField( self, pressureField, _AnalyticPressure_PressureFunction );
 	
 	self->density  = Stg_ComponentFactory_GetDouble( cf, "layer", "density", 0.0 );

Modified: long/3D/Gale/trunk/src/PICellerator/Apps/RayleighTaylor/tests/AnalyticBlock/AnalyticBlock.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Apps/RayleighTaylor/tests/AnalyticBlock/AnalyticBlock.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Apps/RayleighTaylor/tests/AnalyticBlock/AnalyticBlock.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -1717,19 +1717,19 @@
 
 }
 
-void _AnalyticBlock_Construct( void* analyticSolution, Stg_ComponentFactory* cf ) {
+void _AnalyticBlock_Construct( void* analyticSolution, Stg_ComponentFactory* cf, void* data ) {
 	AnalyticBlock*           self           = (AnalyticBlock*)analyticSolution;
 	FeVariable*              velocityField;
 	FeVariable*              pressureField;
 
 	/* Construct Parent */
-	_AnalyticSolution_Construct( self, cf );
+	_AnalyticSolution_Construct( self, cf, data );
 
 	/* Create Analytic Fields */
-	velocityField = Stg_ComponentFactory_ConstructByName( cf, "VelocityField", FeVariable, True );
+	velocityField = Stg_ComponentFactory_ConstructByName( cf, "VelocityField", FeVariable, True, data ); 
 	AnalyticSolution_CreateAnalyticField( self, velocityField, _AnalyticBlock_VelocityFunction );
 
-	pressureField = Stg_ComponentFactory_ConstructByName( cf, "PressureField", FeVariable, True );
+	pressureField = Stg_ComponentFactory_ConstructByName( cf, "PressureField", FeVariable, True, data ); 
 	AnalyticSolution_CreateAnalyticField( self, pressureField, _AnalyticBlock_PressureFunction );
 
 	self->startBlockX = Stg_ComponentFactory_GetRootDictDouble( cf, "startBlockX", 0.0 );

Modified: long/3D/Gale/trunk/src/PICellerator/Apps/RayleighTaylor/tests/AnalyticColumn/AnalyticColumn.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Apps/RayleighTaylor/tests/AnalyticColumn/AnalyticColumn.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Apps/RayleighTaylor/tests/AnalyticColumn/AnalyticColumn.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -291,19 +291,19 @@
 }
 
 	
-void _AnalyticColumn_Construct( void* analyticSolution, Stg_ComponentFactory* cf ) {
+void _AnalyticColumn_Construct( void* analyticSolution, Stg_ComponentFactory* cf, void* data ) {
 	AnalyticColumn*          self           = (AnalyticColumn*)analyticSolution;
 	FeVariable*              velocityField;
 	FeVariable*              pressureField;
 
 	/* Construct Parent */
-	_AnalyticSolution_Construct( self, cf );
+	_AnalyticSolution_Construct( self, cf, data );
 
 	/* Create Analytic Fields */
-	velocityField = Stg_ComponentFactory_ConstructByName( cf, "VelocityField", FeVariable, True );
+	velocityField = Stg_ComponentFactory_ConstructByName( cf, "VelocityField", FeVariable, True, data ); 
 	AnalyticSolution_CreateAnalyticField( self, velocityField, _AnalyticColumn_VelocityFunction );
 
-	pressureField = Stg_ComponentFactory_ConstructByName( cf, "PressureField", FeVariable, True );
+	pressureField = Stg_ComponentFactory_ConstructByName( cf, "PressureField", FeVariable, True, data ); 
 	AnalyticSolution_CreateAnalyticField( self, pressureField, _AnalyticColumn_PressureFunction );
 
 	self->dim          = Stg_ComponentFactory_GetRootDictUnsignedInt( cf, "dim", 0 );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/BackgroundParticleLayout.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/BackgroundParticleLayout.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/BackgroundParticleLayout.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -143,7 +143,7 @@
 			_BackgroundParticleLayout_Print,
 			_BackgroundParticleLayout_Copy,
 			_BackgroundParticleLayout_DefaultNew,
-			_BackgroundParticleLayout_Constructor,
+			_BackgroundParticleLayout_Construct,
 			_BackgroundParticleLayout_Build,
 			_BackgroundParticleLayout_Initialise,
 			_BackgroundParticleLayout_Execute,
@@ -155,10 +155,10 @@
 			GlobalCoordSystem,
 			False );
 }
-void  _BackgroundParticleLayout_Constructor( void* component, Stg_ComponentFactory* cf ) 
-{
+void  _BackgroundParticleLayout_Construct( void* component, Stg_ComponentFactory* cf, void* data )  {
 	_BackgroundParticleLayout_Init( component, GlobalCoordSystem, False );
 }
+
 void  _BackgroundParticleLayout_Build( void* component, void* data ) {}
 void  _BackgroundParticleLayout_Initialise( void* component, void* data ) {}
 void  _BackgroundParticleLayout_Execute( void* component, void* data ) {}

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/BackgroundParticleLayout.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/BackgroundParticleLayout.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/BackgroundParticleLayout.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -45,7 +45,7 @@
 	void* _BackgroundParticleLayout_Copy( void* particleLayout, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 
 	void* _BackgroundParticleLayout_DefaultNew( Name name );
-	void  _BackgroundParticleLayout_Constructor( void* component, Stg_ComponentFactory* cf );
+	void  _BackgroundParticleLayout_Construct( void* component, Stg_ComponentFactory* cf, void* data );
 	void  _BackgroundParticleLayout_Build( void* component, void* data );
 	void  _BackgroundParticleLayout_Initialise( void* component, void* data );
 	void  _BackgroundParticleLayout_Execute( void* component, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/CoincidentMapper.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/CoincidentMapper.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/CoincidentMapper.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -152,8 +152,8 @@
 			NULL );
 }
 
-void _CoincidentMapper_Construct( void* mapper, Stg_ComponentFactory* cf ) {
-	_OneToOneMapper_Construct( mapper, cf );
+void _CoincidentMapper_Construct( void* mapper, Stg_ComponentFactory* cf, void* data ) {
+	_OneToOneMapper_Construct( mapper, cf, data );
 }
 
 void _CoincidentMapper_Build( void* mapper, void* cf ) {

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/CoincidentMapper.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/CoincidentMapper.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/CoincidentMapper.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -98,7 +98,7 @@
 	void* _CoincidentMapper_Copy( void* mapper, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _CoincidentMapper_DefaultNew( Name name );
-	void _CoincidentMapper_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _CoincidentMapper_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _CoincidentMapper_Build( void* mapper, void* data ) ;
 	void _CoincidentMapper_Initialise( void* mapper, void* data ) ;
 	void _CoincidentMapper_Execute( void* mapper, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Context.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Context.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Context.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -63,7 +63,7 @@
 		_PICelleratorContext_Print,
 		NULL, 
 		_PICelleratorContext_DefaultNew,
-		_PICelleratorContext_ComponentConstruct,
+		_AbstractContext_Construct,
 		_AbstractContext_Build,
 		_AbstractContext_Initialise,
 		_AbstractContext_Execute,
@@ -91,7 +91,7 @@
 		_PICelleratorContext_Print,
 		NULL, 
 		_PICelleratorContext_DefaultNew,
-		_PICelleratorContext_ComponentConstruct,
+		_AbstractContext_Construct,
 		_AbstractContext_Build,
 		_AbstractContext_Initialise,
 		_AbstractContext_Execute,
@@ -224,15 +224,9 @@
 		Material_New( "backgroundMaterial", everywhereShape, self->dictionary, self->materials_Register );
 	}
 }
-	
 
-
-void _PICelleratorContext_ComponentConstruct( void* context, Stg_ComponentFactory *cf ){
-	PICelleratorContext*      self         = (PICelleratorContext*) context;
+void _PICelleratorContext_Construct( void* context, Stg_ComponentFactory *cf, void* data ){
+	PICelleratorContext* self = (PICelleratorContext*) context;
 	
-	_FiniteElementContext_ComponentConstruct( self, cf );
-	_PICelleratorContext_Init( self );
-	
+	_PICelleratorContext_Init( self );	
 }
-	
-

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Context.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Context.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Context.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -118,7 +118,7 @@
 	/* Set the dt */
 	void _PICelleratorContext_SetDt( void* context, double dt );
 
-	void _PICelleratorContext_ComponentConstruct( void* context, Stg_ComponentFactory *cf );
+	void _PICelleratorContext_Construct( void* context, Stg_ComponentFactory* cf, void* data );
 	
 	/* Public functions -----------------------------------------------------------------------------------------------*/
 	void PICelleratorContext_CreateDefaultMaterial( void* context ) ;

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/GaussMapper.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/GaussMapper.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/GaussMapper.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -124,10 +124,10 @@
 			NULL );
 }
 
-void _GaussMapper_Construct( void* mapper, Stg_ComponentFactory* cf ) {
+void _GaussMapper_Construct( void* mapper, Stg_ComponentFactory* cf, void* data ) {
 	GaussMapper* self = (GaussMapper*)mapper;
 	
-	_OneToOneMapper_Construct( mapper, cf );
+	_OneToOneMapper_Construct( mapper, cf, data );
 
 	/* Validate assumptions on the layouts the swarms use */
 	

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/GaussMapper.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/GaussMapper.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/GaussMapper.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -77,7 +77,7 @@
 	void* _GaussMapper_Copy( void* mapper, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _GaussMapper_DefaultNew( Name name );
-	void _GaussMapper_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _GaussMapper_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _GaussMapper_Build( void* mapper, void* data ) ;
 	void _GaussMapper_Initialise( void* mapper, void* data ) ;
 	void _GaussMapper_Execute( void* mapper, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointMapper.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointMapper.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointMapper.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -138,7 +138,7 @@
 	return newCopy;
 }
 
-void _IntegrationPointMapper_Construct( void* mapper, Stg_ComponentFactory* cf ) {
+void _IntegrationPointMapper_Construct( void* mapper, Stg_ComponentFactory* cf, void* data ) {
 	IntegrationPointMapper* self = (IntegrationPointMapper*)mapper;
 
 	IntegrationPointsSwarm* integrationSwarm;
@@ -148,7 +148,8 @@
 				self->name, 
 				IntegrationPointsSwarm_Type, 
 				IntegrationPointsSwarm,
-				True  );
+				True,
+				data  );
 	
 	_IntegrationPointMapper_Init( self, integrationSwarm );
 }

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointMapper.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointMapper.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointMapper.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -125,7 +125,7 @@
 		(IntegrationPointMapper*) Stg_Class_Copy( self, NULL, True, NULL, NULL )
 	void* _IntegrationPointMapper_Copy( void* mapper, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
-	void _IntegrationPointMapper_Construct( void* mapper, Stg_ComponentFactory* cf ) ;
+void _IntegrationPointMapper_Construct( void* mapper, Stg_ComponentFactory* cf, void* data ) ;
 	void _IntegrationPointMapper_Build( void* mapper, void* data ) ;
 	void _IntegrationPointMapper_Initialise( void* mapper, void* data ) ;
 	void _IntegrationPointMapper_Execute( void* mapper, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointsSwarm.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointsSwarm.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointsSwarm.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -266,7 +266,7 @@
 }
 
 
-void _IntegrationPointsSwarm_Construct( void* integrationPoints, Stg_ComponentFactory* cf ) {
+void _IntegrationPointsSwarm_Construct( void* integrationPoints, Stg_ComponentFactory* cf, void* data ) {
 	IntegrationPointsSwarm*	        self          = (IntegrationPointsSwarm*) integrationPoints;
 	FiniteElement_Mesh*             mesh;
 	TimeIntegrator*                 timeIntegrator;
@@ -276,12 +276,12 @@
 	Bool                            recalculateWeights;
 
 	/* This will also call _Swarm_Init */
-	_Swarm_Construct( self, cf );
+	_Swarm_Construct( self, cf, data );
 
-	mesh           = Stg_ComponentFactory_ConstructByKey( cf, self->name, "FiniteElement_Mesh", FiniteElement_Mesh, True );
-	timeIntegrator = Stg_ComponentFactory_ConstructByKey( cf, self->name, "TimeIntegrator", TimeIntegrator, True );
-	weights        = Stg_ComponentFactory_ConstructByKey( cf, self->name, "WeightsCalculator", WeightsCalculator, False );
-	mapper         = Stg_ComponentFactory_ConstructByKey( cf, self->name, "IntegrationPointMapper", IntegrationPointMapper, True );
+	mesh           = Stg_ComponentFactory_ConstructByKey( cf, self->name, "FiniteElement_Mesh", FiniteElement_Mesh, True, data );
+	timeIntegrator = Stg_ComponentFactory_ConstructByKey( cf, self->name, "TimeIntegrator", TimeIntegrator, True, data );
+	weights        = Stg_ComponentFactory_ConstructByKey( cf, self->name, "WeightsCalculator", WeightsCalculator, False, data );
+	mapper         = Stg_ComponentFactory_ConstructByKey( cf, self->name, "IntegrationPointMapper", IntegrationPointMapper, True, data );
 	recalculateWeights = Stg_ComponentFactory_GetBool( cf, self->name, "recalculateWeights", True );
 
 	Journal_Firewall (

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointsSwarm.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointsSwarm.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/IntegrationPointsSwarm.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -121,7 +121,7 @@
 	void* _IntegrationPointsSwarm_Copy( void* integrationPoints, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _IntegrationPointsSwarm_DefaultNew( Name name ) ;
-	void _IntegrationPointsSwarm_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _IntegrationPointsSwarm_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _IntegrationPointsSwarm_Build( void* integrationPoints, void* data ) ;
 	void _IntegrationPointsSwarm_Initialise( void* integrationPoints, void* data ) ;
 	void _IntegrationPointsSwarm_Execute( void* integrationPoints, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ManyToOneMapper.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ManyToOneMapper.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ManyToOneMapper.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -168,13 +168,13 @@
 	return newCopy;
 }
 
-void _ManyToOneMapper_Construct( void* mapper, Stg_ComponentFactory* cf ) {
+void _ManyToOneMapper_Construct( void* mapper, Stg_ComponentFactory* cf, void* data ) {
 	ManyToOneMapper* self = (ManyToOneMapper*)mapper;
 
 	MaterialPointsSwarm** materialSwarms;
 	int i;
 	
-	_IntegrationPointMapper_Construct( self, cf );
+	_IntegrationPointMapper_Construct( self, cf, data );
 
 	materialSwarms = (MaterialPointsSwarm**)Stg_ComponentFactory_ConstructByList( 
 					cf, 
@@ -183,7 +183,7 @@
 					Stg_ComponentFactory_Unlimited, 
 					IntegrationPointsSwarm,
 					True,
-					&(self->materialSwarmCount) );
+					&(self->materialSwarmCount), data );
 
 	Journal_Firewall( 
 		self->materialSwarmCount < 1,

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ManyToOneMapper.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ManyToOneMapper.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ManyToOneMapper.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -106,7 +106,7 @@
 	void* _ManyToOneMapper_Copy( void* mapper, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _ManyToOneMapper_DefaultNew( Name name );
-	void _ManyToOneMapper_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _ManyToOneMapper_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _ManyToOneMapper_Build( void* mapper, void* data ) ;
 	void _ManyToOneMapper_Initialise( void* mapper, void* data ) ;
 	void _ManyToOneMapper_Execute( void* mapper, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MappedParticleLayout.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MappedParticleLayout.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MappedParticleLayout.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -144,7 +144,7 @@
 			_MappedParticleLayout_Print,
 			_MappedParticleLayout_Copy,
 			_MappedParticleLayout_DefaultNew,
-			_MappedParticleLayout_Constructor,
+			_MappedParticleLayout_Construct,
 			_MappedParticleLayout_Build,
 			_MappedParticleLayout_Initialise,
 			_MappedParticleLayout_Execute,
@@ -156,7 +156,7 @@
 			LocalCoordSystem,
 			False );
 }
-void  _MappedParticleLayout_Constructor( void* component, Stg_ComponentFactory* cf ) {}
+void  _MappedParticleLayout_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {}
 void  _MappedParticleLayout_Build( void* component, void* data ) {}
 void  _MappedParticleLayout_Initialise( void* component, void* data ) {}
 void  _MappedParticleLayout_Execute( void* component, void* data ) {}

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MappedParticleLayout.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MappedParticleLayout.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MappedParticleLayout.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -45,7 +45,7 @@
 	void* _MappedParticleLayout_Copy( void* particleLayout, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 
 	void* _MappedParticleLayout_DefaultNew( Name name );
-	void  _MappedParticleLayout_Constructor( void* component, Stg_ComponentFactory* cf );
+	void  _MappedParticleLayout_Construct( void* component, Stg_ComponentFactory* cf, void* data );
 	void  _MappedParticleLayout_Build( void* component, void* data );
 	void  _MappedParticleLayout_Initialise( void* component, void* data );
 	void  _MappedParticleLayout_Execute( void* component, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Material.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Material.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Material.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -185,14 +185,14 @@
 			name );
 }
 
-void _Material_Construct( void* material, Stg_ComponentFactory* cf ) {
+void _Material_Construct( void* material, Stg_ComponentFactory* cf, void* data ) {
 	Material*             self               = (Material*) material;
 	Dictionary*           materialDictionary;
 	Stg_Shape*            shape;
 	Materials_Register*   materials_Register;
 
 	materialDictionary = Dictionary_GetDictionary( cf->componentDict, self->name );
-	shape =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "Shape", Stg_Shape,  True  ) ;
+	shape =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "Shape", Stg_Shape,  True, data  ) ;
 	materials_Register = Stg_ObjectList_Get( cf->registerRegister, "Materials_Register" );
 
 	_Material_Init( self, shape, materialDictionary, materials_Register );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Material.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Material.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/Material.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -91,7 +91,7 @@
 	void* _Material_Copy( void* material, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap ) ;
 
 	void* _Material_DefaultNew( Name name );
-	void _Material_Construct( void* material, Stg_ComponentFactory* cf );
+	void _Material_Construct( void* material, Stg_ComponentFactory* cf, void* data );
 	void _Material_Build( void* material, void* data );
 	void _Material_Initialise( void* material, void* data );
 	void _Material_Execute( void* material, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialFeVariable.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialFeVariable.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialFeVariable.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -196,16 +196,16 @@
 		name );
 }
 
-void _MaterialFeVariable_Construct( void* materialFeVariable, Stg_ComponentFactory* cf ){
+void _MaterialFeVariable_Construct( void* materialFeVariable, Stg_ComponentFactory* cf, void* data ){
 	MaterialFeVariable*   self              = (MaterialFeVariable*) materialFeVariable;
 	Material*             material;
 	
-	material = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Material", Material, True );
+	material = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Material", Material, True, data );
 
 	/* Construct Parent */
-	_ParticleFeVariable_Construct( self, cf );
+	_ParticleFeVariable_Construct( self, cf, data );
 
-	_FieldVariable_Construct( self, cf );
+	_FieldVariable_Construct( self, cf, data );
 	_MaterialFeVariable_Init( self, material );
 }
 

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialFeVariable.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialFeVariable.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialFeVariable.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -87,7 +87,7 @@
 	void _MaterialFeVariable_Print( void* variable, Stream* stream );
 	void* _MaterialFeVariable_Copy( void* feVariable, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 
-	void _MaterialFeVariable_Construct( void* variable, Stg_ComponentFactory* cf );
+	void _MaterialFeVariable_Construct( void* variable, Stg_ComponentFactory* cf, void* data );
 	void _MaterialFeVariable_Build( void* variable, void* data );
 	void _MaterialFeVariable_Initialise( void* variable, void* data );
 	void _MaterialFeVariable_Execute( void* variable, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialPointsSwarm.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialPointsSwarm.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialPointsSwarm.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -219,7 +219,7 @@
 }
 
 
-void _MaterialPointsSwarm_Construct( void* swarm, Stg_ComponentFactory* cf ) {
+void _MaterialPointsSwarm_Construct( void* swarm, Stg_ComponentFactory* cf, void* data ) {
 	MaterialPointsSwarm*	        self          = (MaterialPointsSwarm*) swarm;
 	FiniteElement_Mesh*             mesh;
 	RemovalRoutine*                 removalRoutine;
@@ -228,13 +228,13 @@
 	Material*                       material;
 	Materials_Register*             materials_Register;
 
-	_Swarm_Construct( self, cf );
+	_Swarm_Construct( self, cf, data );
 
-	mesh             = Stg_ComponentFactory_ConstructByKey( cf, self->name, "FiniteElement_Mesh", FiniteElement_Mesh, True );
-	removalRoutine   = Stg_ComponentFactory_ConstructByKey( cf, self->name, "RemovalRoutine",     RemovalRoutine,     False );
-	splittingRoutine = Stg_ComponentFactory_ConstructByKey( cf, self->name, "SplittingRoutine",   SplittingRoutine,   False );
-	escapedRoutine   = Stg_ComponentFactory_ConstructByKey( cf, self->name, "EscapedRoutine",     EscapedRoutine,     False );
-	material         = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Material",           Material,           False );
+	mesh             = Stg_ComponentFactory_ConstructByKey( cf, self->name, "FiniteElement_Mesh", FiniteElement_Mesh, True, data );
+	removalRoutine   = Stg_ComponentFactory_ConstructByKey( cf, self->name, "RemovalRoutine",     RemovalRoutine,     False, data );
+	splittingRoutine = Stg_ComponentFactory_ConstructByKey( cf, self->name, "SplittingRoutine",   SplittingRoutine,   False, data );
+	escapedRoutine   = Stg_ComponentFactory_ConstructByKey( cf, self->name, "EscapedRoutine",     EscapedRoutine,     False, data );
+	material         = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Material",           Material,           False, data );
 
 	materials_Register = Stg_ObjectList_Get( cf->registerRegister, "Materials_Register" );
 	assert( materials_Register );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialPointsSwarm.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialPointsSwarm.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/MaterialPointsSwarm.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -111,7 +111,7 @@
 	void* _MaterialPointsSwarm_Copy( void* swarm, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _MaterialPointsSwarm_DefaultNew( Name name ) ;
-	void _MaterialPointsSwarm_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _MaterialPointsSwarm_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _MaterialPointsSwarm_Build( void* swarm, void* data ) ;
 	void _MaterialPointsSwarm_Initialise( void* swarm, void* data ) ;
 	void _MaterialPointsSwarm_Execute( void* swarm, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/OneToOneMapper.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/OneToOneMapper.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/OneToOneMapper.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -138,18 +138,19 @@
 	return newCopy;
 }
 
-void _OneToOneMapper_Construct( void* mapper, Stg_ComponentFactory* cf ) {
+void _OneToOneMapper_Construct( void* mapper, Stg_ComponentFactory* cf, void* data ) {
 	OneToOneMapper* self = (OneToOneMapper*)mapper;
 	MaterialPointsSwarm* materialSwarm;
 	
-	_IntegrationPointMapper_Construct( self, cf );
+	_IntegrationPointMapper_Construct( self, cf, data );
 
 	materialSwarm = Stg_ComponentFactory_ConstructByKey( 
 				cf, 
 				self->name, 
 				MaterialPointsSwarm_Type, 
 				MaterialPointsSwarm,  
-				True  );
+				True,
+				data  );
 
 	_OneToOneMapper_Init( self, self->integrationSwarm, materialSwarm );
 

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/OneToOneMapper.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/OneToOneMapper.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/OneToOneMapper.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -103,7 +103,7 @@
 		(OneToOneMapper*) Stg_Class_Copy( self, NULL, True, NULL, NULL )
 	void* _OneToOneMapper_Copy( void* mapper, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
-	void _OneToOneMapper_Construct( void* shape, Stg_ComponentFactory* cf );
+	void _OneToOneMapper_Construct( void* shape, Stg_ComponentFactory* cf, void* data );
 	void _OneToOneMapper_Build( void* mapper, void* data ) ;
 	void _OneToOneMapper_Initialise( void* mapper, void* data );
 	void _OneToOneMapper_Execute( void* mapper, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ParticleFeVariable.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ParticleFeVariable.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ParticleFeVariable.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -190,18 +190,18 @@
 	return NULL;
 }
 
-void _ParticleFeVariable_Construct( void* materialFeVariable, Stg_ComponentFactory* cf ){
+void _ParticleFeVariable_Construct( void* materialFeVariable, Stg_ComponentFactory* cf, void* data ){
 	ParticleFeVariable*     self            = (ParticleFeVariable*) materialFeVariable;
 	IntegrationPointsSwarm* swarm;
 	FiniteElementContext*   context;
 	FiniteElement_Mesh*     mesh;
 
-	swarm = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Swarm", IntegrationPointsSwarm, True );
-	context = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Context", FiniteElementContext, True );
-	mesh = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Mesh", FiniteElement_Mesh, True );
+	swarm = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Swarm", IntegrationPointsSwarm, True, data );
+	context = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Context", FiniteElementContext, True, data );
+	mesh = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Mesh", FiniteElement_Mesh, True, data );
 
 	/* Construct Parent */
-	_FieldVariable_Construct( self, cf );
+	_FieldVariable_Construct( self, cf, data );
 	_FeVariable_Init( (FeVariable*)self, mesh, NULL, NULL, NULL, NULL, NULL, NULL,
 		StgFEM_Native_ImportExportType, StgFEM_Native_ImportExportType );
 	_ParticleFeVariable_Init( self, swarm, context );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ParticleFeVariable.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ParticleFeVariable.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/ParticleFeVariable.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -104,7 +104,7 @@
 	void _ParticleFeVariable_Print( void* variable, Stream* stream );
 	void* _ParticleFeVariable_Copy( void* feVariable, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 
-	void _ParticleFeVariable_Construct( void* variable, Stg_ComponentFactory* cf );
+	void _ParticleFeVariable_Construct( void* variable, Stg_ComponentFactory* cf, void* data );
 	void _ParticleFeVariable_Build( void* variable, void* data );
 	void _ParticleFeVariable_Initialise( void* variable, void* data );
 	void _ParticleFeVariable_Execute( void* variable, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/PeriodicBoundariesManager.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/PeriodicBoundariesManager.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/PeriodicBoundariesManager.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -174,15 +174,15 @@
 }
 
 
-void _PeriodicBoundariesManager_Construct( void* periodicBCsManager, Stg_ComponentFactory* cf ) {
+void _PeriodicBoundariesManager_Construct( void* periodicBCsManager, Stg_ComponentFactory* cf, void* data ) {
 	PeriodicBoundariesManager*	self = (PeriodicBoundariesManager*)periodicBCsManager;
 	Dictionary*			dictionary = NULL;
 	BlockGeometry*                  geometry = NULL;
 	Swarm*                          swarm = NULL;
 
 	dictionary = Dictionary_GetDictionary( cf->componentDict, self->name );
-	geometry =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "Geometry", BlockGeometry,  True  ) ;
-	swarm =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "Swarm", Swarm,  True  ) ;
+	geometry =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "Geometry", BlockGeometry,  True, data  ) ;
+	swarm =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "Swarm", Swarm,  True, data  ) ;
 
 	_PeriodicBoundariesManager_Init( self, geometry, swarm, dictionary );
 }

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/PeriodicBoundariesManager.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/PeriodicBoundariesManager.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/PeriodicBoundariesManager.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -111,7 +111,7 @@
 		Swarm*            swarm,
 		Dictionary*       dictionary );
 		
-	void _PeriodicBoundariesManager_Construct( void* periodicBCsManager, Stg_ComponentFactory* cf );
+	void _PeriodicBoundariesManager_Construct( void* periodicBCsManager, Stg_ComponentFactory* cf, void* data );
 	
 	void _PeriodicBoundariesManager_Delete( void* context );
 

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvector.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvector.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvector.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -218,17 +218,17 @@
 }
 
 
-void _SwarmAdvector_Construct( void* swarmAdvector, Stg_ComponentFactory* cf ) {
+void _SwarmAdvector_Construct( void* swarmAdvector, Stg_ComponentFactory* cf, void* data ) {
 	SwarmAdvector*	            self          = (SwarmAdvector*) swarmAdvector;
 	FeVariable*                 velocityField;
 	MaterialPointsSwarm*        swarm;
 	PeriodicBoundariesManager*  periodicBCsManager;
 
-	_TimeIntegratee_Construct( self, cf );
+	_TimeIntegratee_Construct( self, cf, data );
 
-	velocityField    =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "VelocityField", FeVariable,  True  ) ;
-	swarm            =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "Swarm", MaterialPointsSwarm,          True  ) ;
-	periodicBCsManager = Stg_ComponentFactory_ConstructByKey( cf, self->name, "PeriodicBCsManager", PeriodicBoundariesManager, False );
+	velocityField      = Stg_ComponentFactory_ConstructByKey( cf, self->name, "VelocityField", FeVariable,  True, data );
+	swarm              = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Swarm",  MaterialPointsSwarm, True, data );
+	periodicBCsManager = Stg_ComponentFactory_ConstructByKey( cf, self->name, "PeriodicBCsManager", PeriodicBoundariesManager, False, data );
 
 	_SwarmAdvector_Init( self, velocityField, swarm, periodicBCsManager );
 }

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvector.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvector.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvector.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -110,7 +110,7 @@
 	void* _SwarmAdvector_Copy( void* materialSwarm, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _SwarmAdvector_DefaultNew( Name name ) ;
-	void _SwarmAdvector_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _SwarmAdvector_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _SwarmAdvector_Build( void* materialSwarm, void* data ) ;
 	void _SwarmAdvector_Initialise( void* materialSwarm, void* data ) ;
 	void _SwarmAdvector_Execute( void* materialSwarm, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorD.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorD.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorD.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -187,10 +187,10 @@
 }
 
 
-void _SwarmAdvectorD_Construct( void* swarmAdvector, Stg_ComponentFactory* cf ) {
+void _SwarmAdvectorD_Construct( void* swarmAdvector, Stg_ComponentFactory* cf, void* data ) {
 	SwarmAdvectorD*	            self          = (SwarmAdvectorD*) swarmAdvector;
 
-	_SwarmAdvector_Construct( self, cf );
+	_SwarmAdvector_Construct( self, cf, data );
 	/* Everything constructed by parent already */
 	_SwarmAdvectorD_Init( self );
 }

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorD.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorD.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorD.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -104,7 +104,7 @@
 	void* _SwarmAdvectorD_Copy( void* materialSwarm, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _SwarmAdvectorD_DefaultNew( Name name ) ;
-	void _SwarmAdvectorD_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _SwarmAdvectorD_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _SwarmAdvectorD_Build( void* materialSwarm, void* data ) ;
 	void _SwarmAdvectorD_Initialise( void* materialSwarm, void* data ) ;
 	void _SwarmAdvectorD_Execute( void* materialSwarm, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorW.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorW.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorW.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -187,10 +187,10 @@
 }
 
 
-void _SwarmAdvectorW_Construct( void* swarmAdvector, Stg_ComponentFactory* cf ) {
+void _SwarmAdvectorW_Construct( void* swarmAdvector, Stg_ComponentFactory* cf, void* data ) {
 	SwarmAdvectorW*	            self          = (SwarmAdvectorW*) swarmAdvector;
 
-	_SwarmAdvector_Construct( self, cf );
+	_SwarmAdvector_Construct( self, cf, data );
 	/* Everything constructed by parent already */
 	_SwarmAdvectorW_Init( self );
 }

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorW.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorW.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SwarmAdvectorW.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -104,7 +104,7 @@
 	void* _SwarmAdvectorW_Copy( void* materialSwarm, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _SwarmAdvectorW_DefaultNew( Name name ) ;
-	void _SwarmAdvectorW_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+	void _SwarmAdvectorW_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _SwarmAdvectorW_Build( void* materialSwarm, void* data ) ;
 	void _SwarmAdvectorW_Initialise( void* materialSwarm, void* data ) ;
 	void _SwarmAdvectorW_Execute( void* materialSwarm, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/plugins/testAdvection.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/plugins/testAdvection.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/plugins/testAdvection.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -147,14 +147,14 @@
 }
 
 
-void _testAdvection_Construct( void* component, Stg_ComponentFactory* data ) {
+void _testAdvection_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {
 	DiscretisationContext* context;
 	Stream*           stream               = Journal_Register( Info_Type, CURR_MODULE_NAME );
 
-	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( data, "context", DiscretisationContext, True );
+	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( cf, "context", DiscretisationContext, True, data ); 
 
 	ContextEP_Append( context, AbstractContext_EP_ConstructExtensions, construct );
-	ContextEP_Append( context, AbstractContext_EP_IC, storeOriginalPos );
+	ContextEP_Append( context, AbstractContext_EP_Initialise, storeOriginalPos );
 	ContextEP_Prepend( context, AbstractContext_EP_Step, check );
 	EP_AppendClassHook( Context_GetEntryPoint( context, FiniteElementContext_EP_CalcDt ), dt, context );
 

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/plugins/testMaterialFeVariable.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/plugins/testMaterialFeVariable.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/plugins/testMaterialFeVariable.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -92,9 +92,9 @@
 	__Codelet
 } testMaterialFeVariable;
 
-void _testMaterialFeVariable_Construct( void* component, Stg_ComponentFactory* cf ) {
+void _testMaterialFeVariable_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {
 	PICelleratorContext* context;
-	context = (PICelleratorContext*)Stg_ComponentFactory_ConstructByName( cf, "context", PICelleratorContext, True );
+	context = (PICelleratorContext*)Stg_ComponentFactory_ConstructByName( cf, "context", PICelleratorContext, True, data ); 
 	ContextEP_Prepend( context, AbstractContext_EP_Dump, testMaterialFeVariable_Check );
 }
 

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/testPeriodicBCs.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/testPeriodicBCs.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/tests/testPeriodicBCs.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -94,7 +94,6 @@
 	BlockGeometry*			blockGeom;
 	EntryPoint_Register*		epRegister;
 	PeriodicBoundariesManager*	perBCsManager;
-	Stream*				perBCsManagerStream;
 	Index                           decompDims;
 	
 	/* Initialise MPI, get world info */

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiRemove.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiRemove.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiRemove.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -133,13 +133,13 @@
 }
 
 
-void _DiscreteVoronoiRemove_Construct( void* discreteVoronoiRemove, Stg_ComponentFactory* cf ) {
+void _DiscreteVoronoiRemove_Construct( void* discreteVoronoiRemove, Stg_ComponentFactory* cf, void* data ) {
 	DiscreteVoronoiRemove*	     self            = (DiscreteVoronoiRemove*) discreteVoronoiRemove;
 	DiscreteVoronoi*             discreteVoronoi;
 
-	_RemovalRoutine_Construct( self, cf );
+	_RemovalRoutine_Construct( self, cf, data );
 
-	discreteVoronoi =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "DiscreteVoronoi", DiscreteVoronoi,  True  ) ;
+	discreteVoronoi =  Stg_ComponentFactory_ConstructByKey( cf, self->name, "DiscreteVoronoi", DiscreteVoronoi, True, data );
 	_DiscreteVoronoiRemove_Init( self, discreteVoronoi );
 }
 

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiRemove.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiRemove.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiRemove.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -87,7 +87,7 @@
 		Name                                    name );
 
 	void* _DiscreteVoronoiRemove_DefaultNew( Name name ) ;
-	void _DiscreteVoronoiRemove_Construct( void* discreteVoronoiRemove, Stg_ComponentFactory* cf ) ;
+void _DiscreteVoronoiRemove_Construct( void* discreteVoronoiRemove, Stg_ComponentFactory* cf, void* data ) ;
 	void _DiscreteVoronoiRemove_Build( void* discreteVoronoiRemove, void* data ) ;
 	void _DiscreteVoronoiRemove_Initialise( void* discreteVoronoiRemove, void* data ) ;
 		

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiSplitting.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiSplitting.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiSplitting.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -133,13 +133,13 @@
 }
 
 
-void _DiscreteVoronoiSplitting_Construct( void* discreteVoronoiSplitting, Stg_ComponentFactory* cf ) {
+void _DiscreteVoronoiSplitting_Construct( void* discreteVoronoiSplitting, Stg_ComponentFactory* cf, void* data ) {
 	DiscreteVoronoiSplitting*	     self            = (DiscreteVoronoiSplitting*) discreteVoronoiSplitting;
 	DiscreteVoronoi*             discreteVoronoi;
 
-	_SplittingRoutine_Construct( self, cf );
+	_SplittingRoutine_Construct( self, cf, data );
 
-	discreteVoronoi =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "DiscreteVoronoi", DiscreteVoronoi,  True  ) ;
+	discreteVoronoi =  Stg_ComponentFactory_ConstructByKey( cf, self->name, "DiscreteVoronoi", DiscreteVoronoi, True, data ) ;
 	_DiscreteVoronoiSplitting_Init( self, discreteVoronoi );
 }
 

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiSplitting.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiSplitting.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/DiscreteVoronoiSplitting.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -87,7 +87,7 @@
 		Name                                    name );
 
 	void* _DiscreteVoronoiSplitting_DefaultNew( Name name ) ;
-	void _DiscreteVoronoiSplitting_Construct( void* discreteVoronoiSplitting, Stg_ComponentFactory* cf ) ;
+void _DiscreteVoronoiSplitting_Construct( void* discreteVoronoiSplitting, Stg_ComponentFactory* cf, void* data ) ;
 	void _DiscreteVoronoiSplitting_Build( void* discreteVoronoiSplitting, void* data ) ;
 	void _DiscreteVoronoiSplitting_Initialise( void* discreteVoronoiSplitting, void* data ) ;
 		

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/EscapedRoutine.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/EscapedRoutine.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/EscapedRoutine.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -161,7 +161,7 @@
 	return (void*)newEscapedRoutine;
 }
 
-void _EscapedRoutine_Construct( void* escapedRoutine, Stg_ComponentFactory* cf ) {
+void _EscapedRoutine_Construct( void* escapedRoutine, Stg_ComponentFactory* cf, void* data ) {
 	EscapedRoutine*	     self          = (EscapedRoutine*) escapedRoutine;
 	Dimension_Index      dim;
 	Particle_Index       particlesToRemoveDelta;

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/EscapedRoutine.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/EscapedRoutine.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/EscapedRoutine.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -104,7 +104,7 @@
 		(EscapedRoutine*) Stg_Class_Copy( self, NULL, True, NULL, NULL )
 	void* _EscapedRoutine_Copy( void* escapedRoutine, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
-	void _EscapedRoutine_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _EscapedRoutine_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _EscapedRoutine_Build( void* escapedRoutine, void* data ) ;
 	void _EscapedRoutine_Initialise( void* escapedRoutine, void* data ) ;
 	void _EscapedRoutine_Execute( void* escapedRoutine, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/RemovalRoutine.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/RemovalRoutine.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/RemovalRoutine.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -148,7 +148,7 @@
 	return (void*)newRemovalRoutine;
 }
 
-void _RemovalRoutine_Construct( void* removalRoutine, Stg_ComponentFactory* cf ) {
+void _RemovalRoutine_Construct( void* removalRoutine, Stg_ComponentFactory* cf, void* data ) {
 	RemovalRoutine*	     self          = (RemovalRoutine*) removalRoutine;
 	Dimension_Index      dim;
 	Particle_InCellIndex idealParticleCount;

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/RemovalRoutine.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/RemovalRoutine.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/RemovalRoutine.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -110,7 +110,7 @@
 		(RemovalRoutine*) Stg_Class_Copy( self, NULL, True, NULL, NULL )
 	void* _RemovalRoutine_Copy( void* removalRoutine, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
-	void _RemovalRoutine_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _RemovalRoutine_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _RemovalRoutine_Build( void* removalRoutine, void* data ) ;
 	void _RemovalRoutine_Initialise( void* removalRoutine, void* data ) ;
 	void _RemovalRoutine_Execute( void* removalRoutine, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/ReseedSplitting.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/ReseedSplitting.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/ReseedSplitting.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -143,11 +143,11 @@
 }
 
 
-void _ReseedSplitting_Construct( void* reseedSplitting, Stg_ComponentFactory* cf ) {
+void _ReseedSplitting_Construct( void* reseedSplitting, Stg_ComponentFactory* cf, void* data ) {
 	ReseedSplitting*	     self            = (ReseedSplitting*) reseedSplitting;
 	Index                    baseNum;
 
-	_SplittingRoutine_Construct( self, cf );
+	_SplittingRoutine_Construct( self, cf, data );
 
 	baseNum = Stg_ComponentFactory_GetUnsignedInt( cf, self->name, "baseNum", 
 			(Index) pow( (double) self->idealParticleCount, 1.0/(double)(self->dim) ) );

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/ReseedSplitting.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/ReseedSplitting.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/ReseedSplitting.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -89,7 +89,7 @@
 		Name                                    name );
 
 	void* _ReseedSplitting_DefaultNew( Name name ) ;
-	void _ReseedSplitting_Construct( void* reseedSplitting, Stg_ComponentFactory* cf ) ;
+void _ReseedSplitting_Construct( void* reseedSplitting, Stg_ComponentFactory* cf, void* data ) ;
 		
 
 	/*---------------------------------------------------------------------------------------------------------------------

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SplittingRoutine.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SplittingRoutine.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SplittingRoutine.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -152,7 +152,7 @@
 	return (void*)newSplittingRoutine;
 }
 
-void _SplittingRoutine_Construct( void* splittingRoutine, Stg_ComponentFactory* cf ) {
+void _SplittingRoutine_Construct( void* splittingRoutine, Stg_ComponentFactory* cf, void* data ) {
 	SplittingRoutine*	 self          = (SplittingRoutine*) splittingRoutine;
 	Dimension_Index      dim;
 	Particle_InCellIndex idealParticleCount;

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SplittingRoutine.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SplittingRoutine.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SplittingRoutine.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -100,7 +100,7 @@
 		(SplittingRoutine*) Stg_Class_Copy( self, NULL, True, NULL, NULL )
 	void* _SplittingRoutine_Copy( void* splittingRoutine, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
-	void _SplittingRoutine_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _SplittingRoutine_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _SplittingRoutine_Build( void* splittingRoutine, void* data ) ;
 	void _SplittingRoutine_Initialise( void* splittingRoutine, void* data ) ;
 	void _SplittingRoutine_Execute( void* splittingRoutine, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/tests/plugins/testDiscrepancy.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/tests/plugins/testDiscrepancy.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/tests/plugins/testDiscrepancy.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -139,15 +139,24 @@
 
 
 void testDiscrepancy_Function( DiscretisationContext* context ) {
-	Swarm*            swarm = Stg_ComponentFactory_ConstructByName( context->CF, "swarm", Swarm, True );
-	SplittingRoutine* splittingRoutine = Stg_ComponentFactory_ConstructByName( context->CF, "splittingRoutine", SplittingRoutine, False );
-	RemovalRoutine*   removalRoutine = Stg_ComponentFactory_ConstructByName( context->CF, "removalRoutine", RemovalRoutine, False );
 	Stream*           stream = Journal_Register( Info_Type, CURR_MODULE_NAME );
 	double            discrepancy;
 	double            maxDiscrepancy;
 	Particle_Index    globalParticleCount;
+	Swarm*            swarm            = Stg_ComponentFactory_ConstructByName( context->CF, "swarm", Swarm, True, 0 );
+	SplittingRoutine* splittingRoutine = Stg_ComponentFactory_ConstructByName( 
+						context->CF, 
+						"splittingRoutine", 
+						SplittingRoutine, 
+						False, 
+						0 );
+	RemovalRoutine*   removalRoutine   = Stg_ComponentFactory_ConstructByName( 
+						context->CF, 
+						"removalRoutine", 
+						RemovalRoutine, 
+						False, 
+						0 );
 
-
 	/* Output before population control */
 	discrepancy = Swarm_AverageDiscrepancy( swarm );
 	MPI_Allreduce( &swarm->particleLocalCount, &globalParticleCount, 1, MPI_UNSIGNED, MPI_MAX, swarm->comm );
@@ -188,10 +197,10 @@
 	__Codelet
 } testDiscrepancy;
 
-void _testDiscrepancy_Construct( void* component, Stg_ComponentFactory* cf ) {
+void _testDiscrepancy_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {
 	DiscretisationContext* context;
-	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( cf, "context", DiscretisationContext, True );
-	ContextEP_Append( context, AbstractContext_EP_IC, testDiscrepancy_Function );
+	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( cf, "context", DiscretisationContext, True, data ); 
+	ContextEP_Append( context, AbstractContext_EP_Initialise, testDiscrepancy_Function );
 }
 
 void* _testDiscrepancy_Default_New( Name name ) {

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/tests/plugins/testParticleCoords.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/tests/plugins/testParticleCoords.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/tests/plugins/testParticleCoords.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -74,9 +74,9 @@
 	Swarm_PrintParticleCoords( swarm, stream );
 }
 	
-void _testParticleCoords_Construct( void* component, Stg_ComponentFactory* data ) {
+void _testParticleCoords_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {
 	DiscretisationContext* context;
-	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( data, "context", DiscretisationContext, True );
+	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( cf, "context", DiscretisationContext, True, data ); 
 	
 	ContextEP_Append( context, AbstractContext_EP_Dump, PICellerator_testParticleCoords );
 }

Modified: long/3D/Gale/trunk/src/PICellerator/Utils/src/BuoyancyForceTerm.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Utils/src/BuoyancyForceTerm.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Utils/src/BuoyancyForceTerm.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -197,7 +197,7 @@
 		name );
 }
 
-void _BuoyancyForceTerm_Construct( void* forceTerm, Stg_ComponentFactory* cf ) {
+void _BuoyancyForceTerm_Construct( void* forceTerm, Stg_ComponentFactory* cf, void* data ) {
 	BuoyancyForceTerm*          self             = (BuoyancyForceTerm*)forceTerm;
 	FeVariable*                 temperatureField;
 	double                      gravity;
@@ -205,9 +205,9 @@
 	Materials_Register*         materials_Register;
 
 	/* Construct Parent */
-	_ForceTerm_Construct( self, cf );
+	_ForceTerm_Construct( self, cf, data );
 
-	temperatureField = Stg_ComponentFactory_ConstructByKey( cf, self->name, "TemperatureField", FeVariable, False ) ;
+	temperatureField = Stg_ComponentFactory_ConstructByKey( cf, self->name, "TemperatureField", FeVariable, False, data ) ;
 	gravity          = Stg_ComponentFactory_GetDouble( cf, self->name, "gravity", 0.0 );
 	adjust           = Stg_ComponentFactory_GetBool( cf, self->name, "adjust", False );
 

Modified: long/3D/Gale/trunk/src/PICellerator/Utils/src/BuoyancyForceTerm.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Utils/src/BuoyancyForceTerm.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Utils/src/BuoyancyForceTerm.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -116,7 +116,7 @@
 	void _BuoyancyForceTerm_Print( void* forceTerm, Stream* stream );
 
 	void* _BuoyancyForceTerm_DefaultNew( Name name ) ;
-	void _BuoyancyForceTerm_Construct( void* forceTerm, Stg_ComponentFactory* cf ) ;
+void _BuoyancyForceTerm_Construct( void* forceTerm, Stg_ComponentFactory* cf, void* data ) ;
 	void _BuoyancyForceTerm_Build( void* forceTerm, void* data ) ;
 	void _BuoyancyForceTerm_Initialise( void* forceTerm, void* data ) ;
 	void _BuoyancyForceTerm_Execute( void* forceTerm, void* data ) ;

Modified: long/3D/Gale/trunk/src/PICellerator/Utils/src/MaterialSwarmVariable.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Utils/src/MaterialSwarmVariable.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Utils/src/MaterialSwarmVariable.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -186,12 +186,12 @@
 		name );
 }
 
-void _MaterialSwarmVariable_Construct( void* swarmVariable, Stg_ComponentFactory* cf ) {
+void _MaterialSwarmVariable_Construct( void* swarmVariable, Stg_ComponentFactory* cf, void* data ) {
 	MaterialSwarmVariable*      self             = (MaterialSwarmVariable*)swarmVariable;
 	Materials_Register*         materials_Register;
 
 	/* Construct Parent */
-	_SwarmVariable_Construct( self, cf );
+	_SwarmVariable_Construct( self, cf, data );
 
 	materials_Register = Stg_ObjectList_Get( cf->registerRegister, "Materials_Register" );
 	assert( materials_Register );

Modified: long/3D/Gale/trunk/src/PICellerator/Utils/src/MaterialSwarmVariable.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Utils/src/MaterialSwarmVariable.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Utils/src/MaterialSwarmVariable.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -96,7 +96,7 @@
 	void _MaterialSwarmVariable_Print( void* swarmVariable, Stream* stream );
 
 	void* _MaterialSwarmVariable_DefaultNew( Name name ) ;
-	void _MaterialSwarmVariable_Construct( void* swarmVariable, Stg_ComponentFactory* cf ) ;
+void _MaterialSwarmVariable_Construct( void* swarmVariable, Stg_ComponentFactory* cf, void* data ) ;
 	void _MaterialSwarmVariable_Build( void* swarmVariable, void* data ) ;
 	void _MaterialSwarmVariable_Initialise( void* swarmVariable, void* data ) ;
 	void _MaterialSwarmVariable_Execute( void* swarmVariable, void* data ) ;

Modified: long/3D/Gale/trunk/src/PICellerator/Voronoi/src/AdaptiveVoronoi.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Voronoi/src/AdaptiveVoronoi.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Voronoi/src/AdaptiveVoronoi.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -213,11 +213,11 @@
 }
 
 
-void _AdaptiveVoronoi_Construct( void* adaptiveVoronoi, Stg_ComponentFactory* cf ) {
+void _AdaptiveVoronoi_Construct( void* adaptiveVoronoi, Stg_ComponentFactory* cf, void* data ) {
 	AdaptiveVoronoi*	     self          = (AdaptiveVoronoi*) adaptiveVoronoi;
 	Iteration_Index          maxIterations;
 
-	_DiscreteVoronoi_Construct( self, cf );
+	_DiscreteVoronoi_Construct( self, cf, data );
 
 	maxIterations = Stg_ComponentFactory_GetUnsignedInt( cf, self->name, "maxIterations", 3 );
 	

Modified: long/3D/Gale/trunk/src/PICellerator/Voronoi/src/AdaptiveVoronoi.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Voronoi/src/AdaptiveVoronoi.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Voronoi/src/AdaptiveVoronoi.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -132,7 +132,7 @@
 	void* _AdaptiveVoronoi_Copy( void* adaptiveVoronoi, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _AdaptiveVoronoi_DefaultNew( Name name ) ;
-	void _AdaptiveVoronoi_Construct( void* adaptiveVoronoi, Stg_ComponentFactory* cf ) ;
+	void _AdaptiveVoronoi_Construct( void* adaptiveVoronoi, Stg_ComponentFactory* cf, void* data ) ;
 	void _AdaptiveVoronoi_Build( void* adaptiveVoronoi, void* data ) ;
 	void _AdaptiveVoronoi_Initialise( void* adaptiveVoronoi, void* data ) ;
 	void _AdaptiveVoronoi_Execute( void* adaptiveVoronoi, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/Voronoi/src/CellularAutomataVoronoi.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Voronoi/src/CellularAutomataVoronoi.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Voronoi/src/CellularAutomataVoronoi.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -196,12 +196,12 @@
 }
 
 
-void _CellularAutomataVoronoi_Construct( void* cellularAutomataVoronoi, Stg_ComponentFactory* cf ) {
+void _CellularAutomataVoronoi_Construct( void* cellularAutomataVoronoi, Stg_ComponentFactory* cf, void* data ) {
 	CellularAutomataVoronoi*	     self          = (CellularAutomataVoronoi*) cellularAutomataVoronoi;
 	unsigned int                     defaultResolution;
 	IJK                              resolution;
 
-	_DiscreteVoronoi_Construct( self, cf );
+	_DiscreteVoronoi_Construct( self, cf, data );
 
 	defaultResolution = Stg_ComponentFactory_GetUnsignedInt( cf, self->name, "resolution", 10 );
 	resolution[ I_AXIS ] = Stg_ComponentFactory_GetUnsignedInt( cf, self->name, "resolutionX", defaultResolution );

Modified: long/3D/Gale/trunk/src/PICellerator/Voronoi/src/CellularAutomataVoronoi.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Voronoi/src/CellularAutomataVoronoi.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Voronoi/src/CellularAutomataVoronoi.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -134,7 +134,7 @@
 	void* _CellularAutomataVoronoi_Copy( void* cellularAutomataVoronoi, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _CellularAutomataVoronoi_DefaultNew( Name name ) ;
-	void _CellularAutomataVoronoi_Construct( void* cellularAutomataVoronoi, Stg_ComponentFactory* cf ) ;
+void _CellularAutomataVoronoi_Construct( void* cellularAutomataVoronoi, Stg_ComponentFactory* cf, void* data ) ;
 	void _CellularAutomataVoronoi_Build( void* cellularAutomataVoronoi, void* data ) ;
 	void _CellularAutomataVoronoi_Initialise( void* cellularAutomataVoronoi, void* data ) ;
 	void _CellularAutomataVoronoi_Execute( void* cellularAutomataVoronoi, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/Voronoi/src/DiscreteVoronoi.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Voronoi/src/DiscreteVoronoi.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Voronoi/src/DiscreteVoronoi.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -154,7 +154,7 @@
 
 
 
-void _DiscreteVoronoi_Construct( void* discreteVoronoi, Stg_ComponentFactory* cf ) {
+void _DiscreteVoronoi_Construct( void* discreteVoronoi, Stg_ComponentFactory* cf, void* data ) {
 	DiscreteVoronoi*	 self          = (DiscreteVoronoi*) discreteVoronoi;
 	Dimension_Index      dim;
 

Modified: long/3D/Gale/trunk/src/PICellerator/Voronoi/src/DiscreteVoronoi.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Voronoi/src/DiscreteVoronoi.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Voronoi/src/DiscreteVoronoi.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -120,7 +120,7 @@
 		(DiscreteVoronoi*) Stg_Class_Copy( self, NULL, True, NULL, NULL )
 	void* _DiscreteVoronoi_Copy( void* discreteVoronoi, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
-	void _DiscreteVoronoi_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _DiscreteVoronoi_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _DiscreteVoronoi_Build( void* discreteVoronoi, void* data ) ;
 	void _DiscreteVoronoi_Initialise( void* discreteVoronoi, void* data ) ;
 	void _DiscreteVoronoi_Execute( void* discreteVoronoi, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/Voronoi/tests/plugins/testDiscreteVoronoi.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Voronoi/tests/plugins/testDiscreteVoronoi.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Voronoi/tests/plugins/testDiscreteVoronoi.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -120,10 +120,10 @@
 }
 	
 
-void _testDiscreteVoronoi_Construct( void* component, Stg_ComponentFactory* data ) {
+void _testDiscreteVoronoi_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {
 	DiscretisationContext* context;
-	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( data, "context", DiscretisationContext, True );
-	ContextEP_ReplaceAll( context, AbstractContext_EP_Run, PICellerator_testDiscreteVoronoi );
+	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( cf, "context", DiscretisationContext, True, data );
+	ContextEP_ReplaceAll( context, AbstractContext_EP_Execute, PICellerator_testDiscreteVoronoi );
 }
 
 

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/ConstantWeights.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/ConstantWeights.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/ConstantWeights.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -173,10 +173,10 @@
 }
 
 
-void _ConstantWeights_Construct( void* constantWeights, Stg_ComponentFactory* cf ) {
+void _ConstantWeights_Construct( void* constantWeights, Stg_ComponentFactory* cf, void* data ) {
 	ConstantWeights*	     self          = (ConstantWeights*) constantWeights;
 
-	_WeightsCalculator_Construct( self, cf );
+	_WeightsCalculator_Construct( self, cf, data );
 	
 	_ConstantWeights_Init( self );
 }

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/ConstantWeights.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/ConstantWeights.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/ConstantWeights.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -99,7 +99,7 @@
 	void* _ConstantWeights_Copy( void* constantWeights, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _ConstantWeights_DefaultNew( Name name ) ;
-	void _ConstantWeights_Construct( void* constantWeights, Stg_ComponentFactory* cf ) ;
+void _ConstantWeights_Construct( void* constantWeights, Stg_ComponentFactory* cf, void* data ) ;
 	void _ConstantWeights_Build( void* constantWeights, void* data ) ;
 	void _ConstantWeights_Initialise( void* constantWeights, void* data ) ;
 	void _ConstantWeights_Execute( void* constantWeights, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/DiscreteVoronoiWeights.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/DiscreteVoronoiWeights.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/DiscreteVoronoiWeights.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -133,13 +133,13 @@
 }
 
 
-void _DiscreteVoronoiWeights_Construct( void* discreteVoronoiWeights, Stg_ComponentFactory* cf ) {
+void _DiscreteVoronoiWeights_Construct( void* discreteVoronoiWeights, Stg_ComponentFactory* cf, void* data ) {
 	DiscreteVoronoiWeights*	     self            = (DiscreteVoronoiWeights*) discreteVoronoiWeights;
 	DiscreteVoronoi*             discreteVoronoi;
 
-	_WeightsCalculator_Construct( self, cf );
+	_WeightsCalculator_Construct( self, cf, data );
 
-	discreteVoronoi =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "DiscreteVoronoi", DiscreteVoronoi,  True  ) ;
+	discreteVoronoi =  Stg_ComponentFactory_ConstructByKey( cf, self->name, "DiscreteVoronoi", DiscreteVoronoi, True, data ) ;
 	_DiscreteVoronoiWeights_Init( self, discreteVoronoi );
 }
 

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/DiscreteVoronoiWeights.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/DiscreteVoronoiWeights.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/DiscreteVoronoiWeights.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -87,7 +87,7 @@
 		Name                                  name );
 
 	void* _DiscreteVoronoiWeights_DefaultNew( Name name ) ;
-	void _DiscreteVoronoiWeights_Construct( void* discreteVoronoiWeights, Stg_ComponentFactory* cf ) ;
+void _DiscreteVoronoiWeights_Construct( void* discreteVoronoiWeights, Stg_ComponentFactory* cf, void* data ) ;
 	void _DiscreteVoronoiWeights_Build( void* discreteVoronoiWeights, void* data ) ;
 	void _DiscreteVoronoiWeights_Initialise( void* discreteVoronoiWeights, void* data ) ;
 		

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/IterativeWeights.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/IterativeWeights.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/IterativeWeights.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -181,16 +181,16 @@
 }
 
 
-void _IterativeWeights_Construct( void* iterativeWeights, Stg_ComponentFactory* cf ) {
+void _IterativeWeights_Construct( void* iterativeWeights, Stg_ComponentFactory* cf, void* data ) {
 	IterativeWeights*	     self          = (IterativeWeights*) iterativeWeights;
 	WeightsCalculator*       initialWeights;
 	Iteration_Index          maxIterations;
 	double                   tolerance;
 	double                   alpha;
 	
-	_ConstantWeights_Construct( self, cf );
+	_ConstantWeights_Construct( self, cf, data );
 
-	initialWeights =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "InitialWeights", WeightsCalculator,  False  ) ;
+	initialWeights =  Stg_ComponentFactory_ConstructByKey( cf, self->name, "InitialWeights", WeightsCalculator, False, data ) ;
 
 	maxIterations = Stg_ComponentFactory_GetUnsignedInt( cf, self->name, "maxIterations", 10 );
 	tolerance     = Stg_ComponentFactory_GetDouble( cf, self->name, "tolerance", 0.01 );

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/IterativeWeights.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/IterativeWeights.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/IterativeWeights.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -99,7 +99,7 @@
 	void* _IterativeWeights_Copy( void* iterativeWeights, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _IterativeWeights_DefaultNew( Name name ) ;
-	void _IterativeWeights_Construct( void* iterativeWeights, Stg_ComponentFactory* cf ) ;
+void _IterativeWeights_Construct( void* iterativeWeights, Stg_ComponentFactory* cf, void* data ) ;
 	void _IterativeWeights_Build( void* iterativeWeights, void* data ) ;
 	void _IterativeWeights_Initialise( void* iterativeWeights, void* data ) ;
 	void _IterativeWeights_Execute( void* iterativeWeights, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/MomentBalanceWeights.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/MomentBalanceWeights.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/MomentBalanceWeights.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -187,13 +187,13 @@
 			name );
 }
 
-void _MomentBalanceWeights_Construct( void* momentBalanceWeights, Stg_ComponentFactory* cf ) {
+void _MomentBalanceWeights_Construct( void* momentBalanceWeights, Stg_ComponentFactory* cf, void* data ) {
 	MomentBalanceWeights*	     self          = (MomentBalanceWeights*) momentBalanceWeights;
 	WeightsCalculator*           backupWeights;
 
-	_WeightsCalculator_Construct( self, cf );
+	_WeightsCalculator_Construct( self, cf, data );
 	
-	backupWeights =  Stg_ComponentFactory_ConstructByKey(  cf,  self->name,  "BackupWeights", WeightsCalculator,  False  ) ;
+	backupWeights =  Stg_ComponentFactory_ConstructByKey( cf, self->name, "BackupWeights", WeightsCalculator, False, data );
 
 	_MomentBalanceWeights_Init( self, backupWeights );
 }

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/MomentBalanceWeights.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/MomentBalanceWeights.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/MomentBalanceWeights.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -98,7 +98,7 @@
 	void* _MomentBalanceWeights_Copy( void* momentBalanceWeights, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _MomentBalanceWeights_DefaultNew( Name name ) ;
-	void _MomentBalanceWeights_Construct( void* momentBalanceWeights, Stg_ComponentFactory* cf ) ;
+void _MomentBalanceWeights_Construct( void* momentBalanceWeights, Stg_ComponentFactory* cf, void* data ) ;
 	void _MomentBalanceWeights_Build( void* momentBalanceWeights, void* data ) ;
 	void _MomentBalanceWeights_Initialise( void* momentBalanceWeights, void* data ) ;
 	void _MomentBalanceWeights_Execute( void* momentBalanceWeights, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/VolumeWeights.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/VolumeWeights.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/VolumeWeights.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -155,15 +155,15 @@
 }
 
 
-void _VolumeWeights_Construct( void* weights, Stg_ComponentFactory* cf ) {
+void _VolumeWeights_Construct( void* weights, Stg_ComponentFactory* cf, void* data ) {
 	VolumeWeights*	     self          = (VolumeWeights*) weights;
 	Stg_Shape*           shape;
 	FiniteElement_Mesh*  mesh;
 
-	_WeightsCalculator_Construct( self, cf );
+	_WeightsCalculator_Construct( self, cf, data );
 
-	shape = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Shape", Stg_Shape, True );
-	mesh  = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Mesh", FiniteElement_Mesh, True );
+	shape = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Shape", Stg_Shape, True, data );
+	mesh  = Stg_ComponentFactory_ConstructByKey( cf, self->name, "Mesh", FiniteElement_Mesh, True, data );
 /*
 	Journal_Firewall(
 			Stg_Class_IsInstance( shape, Sphere_Type ),

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/VolumeWeights.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/VolumeWeights.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/VolumeWeights.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -77,7 +77,7 @@
 	void* _VolumeWeights_Copy( void* weights, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
 	void* _VolumeWeights_DefaultNew( Name name ) ;
-	void _VolumeWeights_Construct( void* weights, Stg_ComponentFactory* cf ) ;
+void _VolumeWeights_Construct( void* weights, Stg_ComponentFactory* cf, void* data ) ;
 	void _VolumeWeights_Build( void* weights, void* data ) ;
 	void _VolumeWeights_Initialise( void* weights, void* data ) ;
 	void _VolumeWeights_Execute( void* weights, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/WeightsCalculator.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/WeightsCalculator.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/WeightsCalculator.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -150,7 +150,7 @@
 
 
 
-void _WeightsCalculator_Construct( void* weightsCalculator, Stg_ComponentFactory* cf ) {
+void _WeightsCalculator_Construct( void* weightsCalculator, Stg_ComponentFactory* cf, void* data ) {
 	WeightsCalculator*	 self          = (WeightsCalculator*) weightsCalculator;
 	Dimension_Index      dim;
 

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/WeightsCalculator.h
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/WeightsCalculator.h	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/WeightsCalculator.h	2006-10-14 18:07:03 UTC (rev 5014)
@@ -101,7 +101,7 @@
 		(WeightsCalculator*) Stg_Class_Copy( self, NULL, True, NULL, NULL )
 	void* _WeightsCalculator_Copy( void* weightsCalculator, void* dest, Bool deep, Name nameExt, PtrMap* ptrMap );
 	
-	void _WeightsCalculator_Construct( void* shape, Stg_ComponentFactory* cf ) ;
+void _WeightsCalculator_Construct( void* shape, Stg_ComponentFactory* cf, void* data ) ;
 	void _WeightsCalculator_Build( void* weightsCalculator, void* data ) ;
 	void _WeightsCalculator_Initialise( void* weightsCalculator, void* data ) ;
 	void _WeightsCalculator_Execute( void* weightsCalculator, void* data );

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/tests/plugins/testElementIntegral.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/tests/plugins/testElementIntegral.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/tests/plugins/testElementIntegral.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -202,11 +202,11 @@
 }
 	
 	
-void _testElementIntegral_Construct( void* component, Stg_ComponentFactory* data ) {
+void _testElementIntegral_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {
 	DiscretisationContext* context;
-	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( data, "context", DiscretisationContext, True );
+	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( cf, "context", DiscretisationContext, True, data ); 
 
-	ContextEP_ReplaceAll( context, AbstractContext_EP_Run, PICellerator_testElementIntegral );
+	ContextEP_ReplaceAll( context, AbstractContext_EP_Execute, PICellerator_testElementIntegral );
 }
 
 

Modified: long/3D/Gale/trunk/src/PICellerator/plugins/Application/Application.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/plugins/Application/Application.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/plugins/Application/Application.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -59,7 +59,7 @@
 //char EP_APPLICATIONS_FINALISE[] = "StGermain_EP_ApplicationsFinalise";
 const Type PICellerator_Application_Type = "PICellerator_Application";
 
-void _PICellerator_Application_Construct( void* component, Stg_ComponentFactory* cf ) 
+void _PICellerator_Application_Construct( void* component, Stg_ComponentFactory* cf, void* data ) 
  {
 	AbstractContext* currAbstractContext;
 	PICelleratorContext* context = NULL;
@@ -70,7 +70,7 @@
 
 	//Get the existing abstract context, as defined by StGermain.
 	//Get it up here, so the communicator can be used for messages.
-	prevContext = (AbstractContext*)Stg_ComponentFactory_ConstructByName( cf, "context", AbstractContext, True );
+	prevContext = (AbstractContext*)Stg_ComponentFactory_ConstructByName( cf, "context", AbstractContext, True, data ); 
 
 	/* Ensures copyright info always come first in output */
 	MPI_Barrier( prevContext->communicator ); 

Modified: long/3D/Gale/trunk/src/PICellerator/plugins/CalculateParticleDisplacement/CalculateParticleDisplacement.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/plugins/CalculateParticleDisplacement/CalculateParticleDisplacement.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/plugins/CalculateParticleDisplacement/CalculateParticleDisplacement.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -54,16 +54,16 @@
 
 const Type PICellerator_CalculateParticleDisplacement_Type = "PICellerator_CalculateParticleDisplacement";
 
-void _PICellerator_CalculateParticleDisplacement_Construct( void* component, Stg_ComponentFactory* data ) {
+void _PICellerator_CalculateParticleDisplacement_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {
 	CalculateParticleDisplacementPlugin*  self = (CalculateParticleDisplacementPlugin*)component;
 	DiscretisationContext*                context;
 	MaterialPointsSwarm*                  materialPointsSwarm;
 	StandardParticle                      particle;
 	ParticleDisplacementInfo*             particleExt;
 	
-	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( data, "context", DiscretisationContext, True );
+	context = (DiscretisationContext*)Stg_ComponentFactory_ConstructByName( cf, "context", DiscretisationContext, True, data );
 
-	ContextEP_Append( context, AbstractContext_EP_IC, _PICellerator_CalculateParticleDisplacement_StoreOriginalPos );
+	ContextEP_Append( context, AbstractContext_EP_Initialise, _PICellerator_CalculateParticleDisplacement_StoreOriginalPos );
 	ContextEP_Append( context, AbstractContext_EP_Step, _PICellerator_CalculateParticleDisplacement_UpdateDisplacement );
 
 	/* Extend particle with original pos */

Modified: long/3D/Gale/trunk/src/PICellerator/plugins/Output/MaterialCentroid/MaterialCentroid.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/plugins/Output/MaterialCentroid/MaterialCentroid.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/plugins/Output/MaterialCentroid/MaterialCentroid.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -94,11 +94,11 @@
 }
 
 
-void _PICellerator_MaterialCentroid_Construct( void* component, Stg_ComponentFactory* data ) {
+void _PICellerator_MaterialCentroid_Construct( void* component, Stg_ComponentFactory* cf, void* data ) {
 
 	AbstractContext* context;
 
-	context = Stg_ComponentFactory_ConstructByName( data, "context", AbstractContext, True );
+	context = Stg_ComponentFactory_ConstructByName( cf, "context", AbstractContext, True, data ); 
 	ContextEP_Append( context, AbstractContext_EP_FrequentOutput, MaterialCentroid );
 }
 

Modified: long/3D/Gale/trunk/src/PICellerator/src/main.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/src/main.c	2006-10-14 18:02:19 UTC (rev 5013)
+++ long/3D/Gale/trunk/src/PICellerator/src/main.c	2006-10-14 18:07:03 UTC (rev 5014)
@@ -60,7 +60,6 @@
 	MPI_Comm             CommWorld;
 	int                  rank;
 	int                  numProcessors;
-	Dictionary*		     componentDict;
 	Dictionary*          dictionary;
 	XML_IO_Handler*      ioHandler;
 	int	                 tmp         =  0;
@@ -103,35 +102,9 @@
 
 	/* Construction phase -----------------------------------------------------------------------------------------------*/
 	context = PICelleratorContext_New( "context", 0, 0, CommWorld, dictionary );
-
-	componentDict = Dictionary_GetDictionary( dictionary, "components" );
-	if ( componentDict == NULL ) {
-		componentDict = Dictionary_New();
-	}
+	Stg_Component_Construct( context, 0 /* dummy */, &context, True );
 	
-	context->CF = Stg_ComponentFactory_New( dictionary, componentDict, context->register_Register );
-
-	/*check components dictionary for double entries */
-	CheckDictionaryKeys(componentDict, errMessage);
-	
-	LiveComponentRegister_Add( context->CF->LCRegister, (Stg_Component*) context );
-	PluginsManager_Load( context->plugins, context, dictionary, 0, NULL, NULL );
-		
-	Stg_ComponentFactory_CreateComponents( context->CF );
-	Stg_ComponentFactory_ConstructComponents( context->CF );
-	PluginsManager_ConstructPlugins( context->plugins, context->CF );
-	
-	KeyCall( context, context->constructExtensionsK, EntryPoint_VoidPtr_CallCast* )( KeyHandle(context,context->constructExtensionsK), context );
-	
-	if( rank == 0 ) 
-		Context_PrintConcise( context, context->verbose );
-
-	if ( True == Dictionary_GetBool_WithDefault( dictionary, "showJournalStatus", False ) ) {
-		Journal_PrintConcise();	
-	}	
-
 	/* Building phase ---------------------------------------------------------------------------------------------------*/
-	//KeyCall( context, context->buildK, EntryPoint_VoidPtr_CallCast* )( KeyHandle(context,context->buildK), context );
 	Stg_Component_Build( context, 0 /* dummy */, False );
 	
 	/* Initialisaton phase ----------------------------------------------------------------------------------------------*/



More information about the cig-commits mailing list