Show
Ignore:
Timestamp:
12/12/07 18:00:42 (10 months ago)
Author:
cneumann
Message:

added: generic interface
changed: factory functions return RefPtr?

The unittests don't pass right now, because of the change
to the factory functions, which leads to containers
being immediately destroyed as they are not assigned to
a RefPtr?.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/Carsten_PtrWork2/Source/System/Cluster/Window/SortLast/OSGSortLastWindowBase.h

    r1020 r1032  
    9898    OSG_GEN_INTERNALPTR(SortLastWindow); 
    9999 
    100     typedef WeakRefCountPtrBuilder<SortLastWindow>::Ptr ObjWeakRefPtr; 
    101     typedef MTRefCountPtrBuilder  <SortLastWindow>::Ptr ObjMTRefPtr; 
    102     typedef RefCountPtrBuilder    <SortLastWindow>::Ptr ObjRefPtr; 
    103     typedef ParentPtrBuilder      <SortLastWindow>::Ptr ObjParentPtr; 
     100    typedef MTRefCountPtrBuilder      <SortLastWindow>::Ptr ObjMTRefPtr; 
     101    typedef RefCountPtrBuilder        <SortLastWindow>::Ptr ObjRefPtr; 
     102    typedef ParentPtrBuilder          <SortLastWindow>::Ptr ObjParentPtr; 
     103    typedef WeakRefCountPtrBuilder    <SortLastWindow>::Ptr ObjWeakRefPtr; 
     104    typedef InternalRefCountPtrBuilder<SortLastWindow>::Ptr ObjInternalRefPtr; 
    104105     
    105106    /*! \}                                                                 */ 
     
    172173            UInt32 const uiIndex, 
    173174            MFNodeInternalPtr::ArgumentType value); 
    174     void replaceGroupNodes( 
     175    bool replaceGroupNodes( 
    175176            MFNodeInternalPtr::ArgumentType pOldElem, 
    176             MFNodeInternalPtr::ArgumentType pNewElem); 
     177            MFNodeInternalPtr::ArgumentType pNewElem ); 
    177178    void subGroupNodes(UInt32 const uiIndex); 
    178     void subGroupNodes(MFNodeInternalPtr::ArgumentType value); 
     179    bool subGroupNodes(MFNodeInternalPtr::ArgumentType value); 
    179180    void clearGroupNodes(void); 
    180181     
     
    232233    /*! \{                                                                 */ 
    233234 
    234     static  SortLastWindowPtr create     (void); 
     235    static  ObjRefPtr        create     (void); 
    235236    static  SortLastWindowPtr createEmpty(void); 
    236237 
     
    240241    /*! \{                                                                 */ 
    241242 
    242     virtual FieldContainerPtr shallowCopy(void) const; 
     243    virtual FieldContainerRefPtr shallowCopy(void) const; 
    243244 
    244245    /*! \}                                                                 */ 
     
    336337}; 
    337338 
    338 typedef SortLastWindowBase::ObjRefPtr      SortLastWindowRefPtr; 
    339 typedef SortLastWindowBase::ObjMTRefPtr    SortLastWindowMTRefPtr; 
    340 typedef SortLastWindowBase::ObjWeakRefPtr  SortLastWindowWeakRefPtr; 
    341 typedef SortLastWindowBase::ObjParentPtr   SortLastWindowParentPtr; 
     339typedef SortLastWindowBase::ObjRefPtr         SortLastWindowRefPtr; 
     340typedef SortLastWindowBase::ObjMTRefPtr       SortLastWindowMTRefPtr; 
     341typedef SortLastWindowBase::ObjWeakRefPtr     SortLastWindowWeakRefPtr; 
     342typedef SortLastWindowBase::ObjParentPtr      SortLastWindowParentPtr; 
     343typedef SortLastWindowBase::ObjInternalRefPtr SortLastWindowInternalPtr; 
    342344 
    343345typedef boost::mpl::if_<