Show
Ignore:
Timestamp:
11/14/07 17:11:26 (1 year ago)
Author:
cneumann
Message:

changed: started to use new pointer fields
added: ReferenceCountPointer? template
removed: EditHandle? for parent pointer fields

NOTE: Does not compile yet.

Files:

Legend:

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

    r862 r1016  
    7777class OSG_CLUSTER_DLLMAPPING SepiaComposerBase : public ImageComposer 
    7878{ 
     79    /*==========================  PUBLIC  =================================*/ 
    7980  public: 
    80  
     81    /*---------------------------------------------------------------------*/ 
     82    /*! \name Public Types                                                 */ 
     83    /*! \{                                                                 */ 
     84     
    8185    typedef ImageComposer Inherited; 
    8286    typedef ImageComposer ParentContainer; 
     
    8488    typedef Inherited::TypeObject TypeObject; 
    8589    typedef TypeObject::InitPhase InitPhase; 
    86  
    87     OSG_GEN_INTERNALPTR(SepiaComposer); 
    88  
    89     /*==========================  PUBLIC  =================================*/ 
    90  
    91   public: 
    92  
    93  
    94     /*---------------------------------------------------------------------*/ 
    95     /*! \name                    Class Get                                 */ 
     90        
     91     
     92    typedef SepiaComposer       *       ObjPtr; 
     93    typedef SepiaComposer const *       ObjConstPtr; 
     94    typedef SepiaComposer       * const ObjPtrConst; 
     95    typedef SepiaComposer const * const ObjConstPtrConst; 
     96 
     97    typedef WeakRefCountPtrBuilder<SepiaComposer>::Ptr ObjWeakRefPtr; 
     98    typedef MTRefCountPtrBuilder  <SepiaComposer>::Ptr ObjMTRefPtr; 
     99    typedef RefCountPtrBuilder    <SepiaComposer>::Ptr ObjRefPtr; 
     100    typedef ParentPtrBuilder      <SepiaComposer>::Ptr ObjParentPtr; 
     101     
     102    /*! \}                                                                 */ 
     103    /*---------------------------------------------------------------------*/ 
     104    /*! \name Constants                                                    */ 
     105    /*! \{                                                                 */ 
     106 
     107    /*! \}                                                                 */ 
     108    /*---------------------------------------------------------------------*/ 
     109    /*! \name Class Get                                                    */ 
    96110    /*! \{                                                                 */ 
    97111 
     
    102116    /*! \}                                                                 */ 
    103117    /*---------------------------------------------------------------------*/ 
    104     /*! \name                FieldContainer Get                            */ 
    105     /*! \{                                                                 */ 
    106  
    107     virtual       FieldContainerType &getType         (void); 
    108     virtual const FieldContainerType &getType         (void) const; 
    109  
    110     virtual       UInt32              getContainerSize(void) const; 
    111  
    112     /*! \}                                                                 */ 
    113     /*---------------------------------------------------------------------*/ 
    114     /*! \name                   Binary Access                              */ 
     118    /*! \name FieldContainer Get                                           */ 
     119    /*! \{                                                                 */ 
     120 
     121    virtual FieldContainerType      &getType         (void); 
     122    virtual FieldContainerType const &getType         (void) const; 
     123 
     124    virtual UInt32                    getContainerSize(void) const; 
     125 
     126    /*! \}                                                                 */ 
     127    /*---------------------------------------------------------------------*/ 
     128    /*! \name Binary Access                                                */ 
    115129    /*! \{                                                                 */ 
    116130 
     
    121135                               ConstFieldMaskArg  whichField); 
    122136 
    123  
    124     /*! \}                                                                 */ 
    125     /*---------------------------------------------------------------------*/ 
    126     /*! \name                   Construction                               */ 
     137    /*! \}                                                                 */ 
     138    /*---------------------------------------------------------------------*/ 
     139    /*! \name Construction                                                 */ 
    127140    /*! \{                                                                 */ 
    128141 
     
    132145    /*! \}                                                                 */ 
    133146    /*---------------------------------------------------------------------*/ 
    134     /*! \name                       Copy                                   */ 
     147    /*! \name Copy                                                         */ 
    135148    /*! \{                                                                 */ 
    136149 
     
    139152    /*! \}                                                                 */ 
    140153    /*=========================  PROTECTED  ===============================*/ 
    141  
    142154  protected: 
    143155 
    144156    static TypeObject _type; 
    145157 
    146     static void   classDescInserter(TypeObject &oType); 
    147     static Char8 *getClassname     (void             ); 
    148  
    149     /*---------------------------------------------------------------------*/ 
    150     /*! \name                   Constructors                               */ 
     158    static void         classDescInserter(TypeObject &oType); 
     159    static Char8 const *getClassname     (void             ); 
     160 
     161    /*---------------------------------------------------------------------*/ 
     162    /*! \name Constructors                                                 */ 
    151163    /*! \{                                                                 */ 
    152164 
    153165    SepiaComposerBase(void); 
    154     SepiaComposerBase(const SepiaComposerBase &source); 
    155  
    156     /*! \}                                                                 */ 
    157     /*---------------------------------------------------------------------*/ 
    158     /*! \name                   Destructors                                */ 
     166    SepiaComposerBase(SepiaComposerBase const &source); 
     167 
     168    /*! \}                                                                 */ 
     169    /*---------------------------------------------------------------------*/ 
     170    /*! \name Destructors                                                  */ 
    159171    /*! \{                                                                 */ 
    160172 
     
    163175    /*! \}                                                                 */ 
    164176    /*---------------------------------------------------------------------*/ 
    165     /*! \name                     onCreate                                */ 
    166     /*! \{                                                                 */ 
    167  
    168  
    169     /*! \}                                                                 */ 
    170     /*---------------------------------------------------------------------*/ 
    171     /*! \name                    Generic Field Access                      */ 
    172     /*! \{                                                                 */ 
    173  
    174  
    175     /*! \}                                                                 */ 
    176     /*---------------------------------------------------------------------*/ 
    177     /*! \name                       Sync                                   */ 
     177    /*! \name onCreate                                                     */ 
     178    /*! \{                                                                 */ 
     179 
     180 
     181    /*! \}                                                                 */ 
     182    /*---------------------------------------------------------------------*/ 
     183    /*! \name Generic Field Access                                         */ 
     184    /*! \{                                                                 */ 
     185 
     186 
     187    /*! \}                                                                 */ 
     188    /*---------------------------------------------------------------------*/ 
     189    /*! \name Sync                                                         */ 
    178190    /*! \{                                                                 */ 
    179191 
    180192#ifdef OSG_MT_CPTR_ASPECT 
    181     virtual void execSyncV(      FieldContainer    &oFrom, 
    182                                  ConstFieldMaskArg  whichField, 
    183                                  AspectOffsetStore &oOffsets, 
    184                                  ConstFieldMaskArg  syncMode 
    185                            const UInt32             uiSyncInfo); 
    186  
    187             void execSync (      SepiaComposerBase *pFrom, 
    188                                  ConstFieldMaskArg  whichField, 
    189                                  AspectOffsetStore &oOffsets, 
    190                                  ConstFieldMaskArg  syncMode 
    191                            const UInt32             uiSyncInfo); 
     193    virtual void execSyncV(FieldContainer    &oFrom, 
     194                           ConstFieldMaskArg  whichField, 
     195                           AspectOffsetStore &oOffsets, 
     196                           ConstFieldMaskArg  syncMode
     197                           UInt32 const       uiSyncInfo); 
     198 
     199            void execSync (SepiaComposerBase *pFrom, 
     200                           ConstFieldMaskArg  whichField, 
     201                           AspectOffsetStore &oOffsets, 
     202                           ConstFieldMaskArg  syncMode
     203                           UInt32 const       uiSyncInfo); 
    192204#endif 
    193205 
    194206    /*! \}                                                                 */ 
    195207    /*---------------------------------------------------------------------*/ 
    196     /*! \name                       Edit                                   */ 
    197     /*! \{                                                                 */ 
    198  
    199     /*! \}                                                                 */ 
    200     /*---------------------------------------------------------------------*/ 
    201     /*! \name                     Aspect Create                            */ 
     208    /*! \name Aspect Create                                                */ 
    202209    /*! \{                                                                 */ 
    203210 
     
    205212    virtual FieldContainerPtr createAspectCopy(void) const; 
    206213#endif 
    207  
    208     /*! \}                                                                 */ 
    209     /*---------------------------------------------------------------------*/ 
    210     /*! \name                       Edit                                   */ 
    211     /*! \{                                                                 */ 
    212     /*! \}                                                                 */ 
    213     /*---------------------------------------------------------------------*/ 
    214     /*! \name                       Sync                                   */ 
     214     
     215    /*! \}                                                                 */ 
     216    /*---------------------------------------------------------------------*/ 
     217    /*! \name Sync                                                         */ 
    215218    /*! \{                                                                 */ 
    216219 
     
    219222    /*! \}                                                                 */ 
    220223    /*==========================  PRIVATE  ================================*/ 
    221  
    222224  private: 
    223225 
     
    226228}; 
    227229 
    228 typedef SepiaComposerBase *SepiaComposerBaseP
    229  
    230 /** Type specific RefPtr type for SepiaComposer. */ 
    231 typedef RefPtr<SepiaComposerPtr> SepiaComposerRefPtr; 
     230typedef SepiaComposerBase::ObjRefPtr         SepiaComposerRefPtr
     231typedef SepiaComposerBase::ObjMTRefPtr       SepiaComposerMTRefPtr; 
     232typedef SepiaComposerBase::ObjWeakRefPtr     SepiaComposerWeakRefPtr; 
     233typedef SepiaComposerBase::ObjParentPtr      SepiaComposerParentPtr; 
    232234 
    233235typedef boost::mpl::if_<