Changeset 5737


Ignore:
Timestamp:
09/09/10 16:49:06 (15 years ago)
Author:
Mathieu Morlighem
Message:

Added Hooked object as class fields

Location:
issm/trunk/src/c/objects/Loads
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/objects/Loads/Numericalflux.cpp

    r5624 r5737  
    2424        this->parameters=NULL;
    2525        this->helement=NULL;
     26        this->element=NULL;
    2627        this->hnodes=NULL;
     28        this->nodes=NULL;
    2729}
    2830/*}}}*/
     
    123125        //this->parameters: we still can't point to it, it may not even exist. Configure will handle this.
    124126        this->parameters=NULL;
     127        this->element=NULL;
     128        this->nodes=NULL;
    125129}
    126130/*}}}*/
     
    248252        /*parameters: may not exist even yet, so let Configure handle it: */
    249253        this->parameters=NULL;
     254        this->element=NULL;
     255        this->nodes=NULL;
    250256
    251257        /*return: */
     
    284290        numericalflux->helement=(Hook*)this->helement->copy();
    285291
     292        /*corresponding fields*/
     293        numericalflux->nodes  =(Node**)numericalflux->hnodes->deliverp();
     294        numericalflux->element=(Element*)numericalflux->helement->delivers();
     295
    286296        return numericalflux;
    287 
    288297}
    289298/*}}}*/
     
    298307        helement->configure(elementsin);
    299308
     309        /*Initialize hooked fields*/
     310        this->nodes  =(Node**)hnodes->deliverp();
     311        this->element=(Element*)helement->delivers();
     312
    300313        /*point parameters to real dataset: */
    301314        this->parameters=parametersin;
     
    382395
    383396        /* local declarations */
    384         int             i,j;
     397        int             i,j,ig;
    385398        int analysis_type;
    386399
     
    391404        double    xyz_list[numgrids][3];
    392405        double    normal[2];
    393         int*        doflist=NULL;
     406        int*      doflist=NULL;
    394407
    395408        /* gaussian points: */
    396         int     num_gauss,ig;
     409        int     num_gauss;
    397410        double* gauss_coords =NULL;
    398411        double  gauss_coord;
     
    417430
    418431        /*dynamic objects pointed to by hooks: */
    419         Node  **nodes           = NULL;
    420         Tria   *tria            = NULL;
    421432        Input  *vxaverage_input = NULL;
    422433        Input  *vyaverage_input = NULL;
     
    427438
    428439        /*recover objects from hooks: */
    429         nodes=(Node**)hnodes->deliverp();
    430         tria=(Tria*)helement->delivers();
     440        Tria* tria=(Tria*)element;
    431441
    432442        /*recover parameters: */
     
    549559
    550560        /*dynamic objects pointed to by hooks: */
    551         Node**  nodes=NULL;
    552         Tria*   tria=NULL;
    553561        Input*  vxaverage_input=NULL;
    554562        Input*  vyaverage_input=NULL;
     
    559567
    560568        /*recover objects from hooks: */
    561         nodes=(Node**)hnodes->deliverp();
    562         tria=(Tria*)helement->delivers();
     569        Tria* tria=(Tria*)element;
    563570
    564571        /*recover parameters: */
     
    692699
    693700        /*dynamic objects pointed to by hooks: */
    694         Node**  nodes=NULL;
    695         Tria*   tria=NULL;
    696701        Input*  vxaverage_input=NULL;
    697702        Input*  vyaverage_input=NULL;
     
    699704
    700705        /*recover objects from hooks: */
    701         nodes=(Node**)hnodes->deliverp();
    702         tria=(Tria*)helement->delivers();
     706        Tria* tria=(Tria*)element;
    703707
    704708        /*Retrieve parameters: */
     
    813817        /*output: */
    814818        int* doflist=NULL;
    815 
    816         /*pointers: */
    817         Node**   nodes=NULL;
    818        
    819         /*recover pointers: */
    820         nodes=(Node**)hnodes->deliverp();
    821819       
    822820        /*recover type: */
     
    921919        double value;
    922920
    923         /*dynamic objects pointed to by hooks: */
    924         Tria*  tria=NULL;
    925         Node** nodes=NULL;
    926 
    927921        /*recover objects from hooks: */
    928         tria=(Tria*)helement->delivers();
    929         nodes=(Node**)hnodes->deliverp();
     922        Tria* tria=(Tria*)element;
    930923
    931924        /*Get value on Element 1*/
     
    942935        double value;
    943936
    944         /*dynamic objects pointed to by hooks: */
    945         Tria*  tria=NULL;
    946         Node** nodes=NULL;
    947 
    948937        /*recover objects from hooks: */
    949         tria=(Tria*)helement->delivers();
    950         nodes=(Node**)hnodes->deliverp();
     938        Tria* tria=(Tria*)element;
    951939
    952940        /*Get value on Element 1*/
  • issm/trunk/src/c/objects/Loads/Numericalflux.h

    r5322 r5737  
    2222                int analysis_type;
    2323
     24                /*Hooks*/
    2425                Hook*       helement;
    2526                Hook*       hnodes;
     27
     28                /*Corresponding fields*/
     29                Element* element;
     30                Node**   nodes;
     31
    2632                Parameters *parameters;
    2733                Inputs     *inputs;
Note: See TracChangeset for help on using the changeset viewer.