Show
Ignore:
Timestamp:
02/12/08 09:51:59 (9 months ago)
Author:
cneumann
Message:

fixed: - pointer fields: sync/copyFromBin order of inc/dec refcount

(always inc new pointer first, then dec old pointer)

  • cluster server: commented out writing of .osg file on each frame
  • multi display window: merged fix from trunk (r1058)
  • tutorial 12: empty address check

added: - pointer field handles: implemented equal and share

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/Carsten_PtrWork2/Source/System/FieldContainer/Fields/OSGEditSParentFCPointerFieldHandle.inl

    r1039 r1060  
    8080} 
    8181 
    82 /*-------------------------------------------------------------------------*/ 
    83 /* Type Query                                                              */ 
    84  
    85 inline bool 
    86 EditSParentFCPointerFieldBaseHandle::isParentPointerField(void) const 
    87 { 
    88     return true; 
    89 } 
    90  
    9182/*! \class EditSParentFCPointerFieldHandle<FieldT> 
    9283 
     
    191182EditSParentFCPointerFieldHandle<FieldT>::equal(EditFieldHandlePtr rhs) 
    192183{ 
    193     FWARNING(("EditSParentFCPointerFieldHandle<FieldT>::equal(): NIY\n")); 
    194      
    195     return false; 
     184    bool retVal = true; 
     185     
     186    EditSParentFCPointerFieldBaseHandlePtr castRHS = 
     187        boost::dynamic_pointer_cast<EditSParentFCPointerFieldBaseHandle>(rhs); 
     188     
     189    if(castRHS == NULL) 
     190    { 
     191        retVal = false; 
     192    } 
     193    else if(this->get() != castRHS->get()) 
     194    { 
     195        retVal = false; 
     196    } 
     197         
     198    return retVal; 
    196199} 
    197200