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/Depreciated/State/OSGCubeTextureChunkBase.h

    r864 r1016  
    8383class OSG_SYSTEM_DLLMAPPING CubeTextureChunkBase : public TextureChunk 
    8484{ 
     85    /*==========================  PUBLIC  =================================*/ 
    8586  public: 
    86  
     87    /*---------------------------------------------------------------------*/ 
     88    /*! \name Public Types                                                 */ 
     89    /*! \{                                                                 */ 
     90     
    8791    typedef TextureChunk Inherited; 
    8892    typedef TextureChunk ParentContainer; 
     
    9094    typedef Inherited::TypeObject TypeObject; 
    9195    typedef TypeObject::InitPhase InitPhase; 
    92  
    93     OSG_GEN_INTERNALPTR(CubeTextureChunk); 
    94  
    95     /*==========================  PUBLIC  =================================*/ 
    96  
    97   public: 
     96        
     97    typedef SFImageInternalPtr     PosZImageFieldType; 
     98    typedef SFImageInternalPtr     PosXImageFieldType; 
     99    typedef SFImageInternalPtr     NegXImageFieldType; 
     100    typedef SFImageInternalPtr     PosYImageFieldType; 
     101    typedef SFImageInternalPtr     NegYImageFieldType; 
     102    typedef SFBool                 IsReflectionMapFieldType; 
     103     
     104    typedef CubeTextureChunk       *       ObjPtr; 
     105    typedef CubeTextureChunk const *       ObjConstPtr; 
     106    typedef CubeTextureChunk       * const ObjPtrConst; 
     107    typedef CubeTextureChunk const * const ObjConstPtrConst; 
     108 
     109    typedef WeakRefCountPtrBuilder<CubeTextureChunk>::Ptr ObjWeakRefPtr; 
     110    typedef MTRefCountPtrBuilder  <CubeTextureChunk>::Ptr ObjMTRefPtr; 
     111    typedef RefCountPtrBuilder    <CubeTextureChunk>::Ptr ObjRefPtr; 
     112    typedef ParentPtrBuilder      <CubeTextureChunk>::Ptr ObjParentPtr; 
     113     
     114    /*! \}                                                                 */ 
     115    /*---------------------------------------------------------------------*/ 
     116    /*! \name Constants                                                    */ 
     117    /*! \{                                                                 */ 
    98118 
    99119    enum 
     
    122142    static const OSG::BitVector NextFieldMask = 
    123143        (TypeTraits<BitVector>::One << NextFieldId); 
    124  
    125     /*---------------------------------------------------------------------*/ 
    126     /*! \name                    Class Get                                 */ 
     144         
     145    /*! \}                                                                 */ 
     146    /*---------------------------------------------------------------------*/ 
     147    /*! \name Class Get                                                    */ 
    127148    /*! \{                                                                 */ 
    128149 
     
    133154    /*! \}                                                                 */ 
    134155    /*---------------------------------------------------------------------*/ 
    135     /*! \name                FieldContainer Get                            */ 
    136     /*! \{                                                                 */ 
    137  
    138     virtual       FieldContainerType &getType         (void); 
    139     virtual const FieldContainerType &getType         (void) const; 
    140  
    141     virtual       UInt32              getContainerSize(void) const; 
    142  
    143     /*! \}                                                                 */ 
    144     /*---------------------------------------------------------------------*/ 
    145     /*! \name                    Field Get                                 */ 
    146     /*! \{                                                                 */ 
    147  
    148             const SFImagePtr          *getSFPosZImage       (void) const; 
    149             const SFImagePtr          *getSFPosXImage       (void) const; 
    150             const SFImagePtr          *getSFNegXImage       (void) const; 
    151             const SFImagePtr          *getSFPosYImage       (void) const; 
    152             const SFImagePtr          *getSFNegYImage       (void) const; 
    153  
    154 #ifdef OSG_1_GET_COMPAT 
    155                   SFBool              *getSFIsReflectionMap (void); 
    156 #endif 
    157                   SFBool              *editSFIsReflectionMap(void); 
    158             const SFBool              *getSFIsReflectionMap (void) const; 
    159  
    160  
    161                   ImagePtrConst getPosZImage      (void) const; 
    162  
    163                   ImagePtrConst getPosXImage      (void) const; 
    164  
    165                   ImagePtrConst getNegXImage      (void) const; 
    166  
    167                   ImagePtrConst getPosYImage      (void) const; 
    168  
    169                   ImagePtrConst getNegYImage      (void) const; 
    170  
    171 #ifdef OSG_1_GET_COMPAT 
    172                   bool                &getIsReflectionMap (void); 
    173 #endif 
    174                   bool                &editIsReflectionMap(void); 
    175             const bool                &getIsReflectionMap (void) const; 
    176  
    177     /*! \}                                                                 */ 
    178     /*---------------------------------------------------------------------*/ 
    179     /*! \name                    Field Set                                 */ 
    180     /*! \{                                                                 */ 
    181  
    182             void setPosZImage      (ImagePtrConstArg value); 
    183             void setPosXImage      (ImagePtrConstArg value); 
    184             void setNegXImage      (ImagePtrConstArg value); 
    185             void setPosYImage      (ImagePtrConstArg value); 
    186             void setNegYImage      (ImagePtrConstArg value); 
    187             void setIsReflectionMap(const bool &value); 
    188  
    189     /*! \}                                                                 */ 
    190     /*---------------------------------------------------------------------*/ 
    191     /*! \name                Ptr Field Set                                 */ 
    192     /*! \{                                                                 */ 
    193  
    194     /*! \}                                                                 */ 
    195     /*---------------------------------------------------------------------*/ 
    196     /*! \name                Ptr MField Set                                */ 
    197     /*! \{                                                                 */ 
    198  
    199     /*! \}                                                                 */ 
    200     /*---------------------------------------------------------------------*/ 
    201     /*! \name                   Binary Access                              */ 
     156    /*! \name FieldContainer Get                                           */ 
     157    /*! \{                                                                 */ 
     158 
     159    virtual FieldContainerType       &getType         (void); 
     160    virtual FieldContainerType const &getType         (void) const; 
     161 
     162    virtual UInt32                    getContainerSize(void) const; 
     163 
     164    /*! \}                                                                 */ 
     165    /*---------------------------------------------------------------------*/ 
     166    /*! \name Field SFPosZImage                                            */ 
     167    /*! \{                                                                 */ 
     168     
     169            SFImageInternalPtr       *editSFPosZImage(void); 
     170            SFImageInternalPtr const *getSFPosZImage (void) const; 
     171#ifdef OSG_1_GET_COMPAT 
     172            SFImageInternalPtr       *getSFPosZImage (void); 
     173#endif 
     174            SFImageInternalPtr::reference       editPosZImage(void); 
     175            SFImageInternalPtr::const_reference getPosZImage (void) const; 
     176#ifdef OSG_1_GET_COMPAT 
     177            SFImageInternalPtr::reference       getPosZImage (void); 
     178#endif 
     179            void setPosZImage(SFImageInternalPtr::ArgumentType value); 
     180     
     181    /*! \}                                                                 */ 
     182    /*---------------------------------------------------------------------*/ 
     183    /*! \name Field SFPosXImage                                            */ 
     184    /*! \{                                                                 */ 
     185     
     186            SFImageInternalPtr       *editSFPosXImage(void); 
     187            SFImageInternalPtr const *getSFPosXImage (void) const; 
     188#ifdef OSG_1_GET_COMPAT 
     189            SFImageInternalPtr       *getSFPosXImage (void); 
     190#endif 
     191            SFImageInternalPtr::reference       editPosXImage(void); 
     192            SFImageInternalPtr::const_reference getPosXImage (void) const; 
     193#ifdef OSG_1_GET_COMPAT 
     194            SFImageInternalPtr::reference       getPosXImage (void); 
     195#endif 
     196            void setPosXImage(SFImageInternalPtr::ArgumentType value); 
     197     
     198    /*! \}                                                                 */ 
     199    /*---------------------------------------------------------------------*/ 
     200    /*! \name Field SFNegXImage                                            */ 
     201    /*! \{                                                                 */ 
     202     
     203            SFImageInternalPtr       *editSFNegXImage(void); 
     204            SFImageInternalPtr const *getSFNegXImage (void) const; 
     205#ifdef OSG_1_GET_COMPAT 
     206            SFImageInternalPtr       *getSFNegXImage (void); 
     207#endif 
     208            SFImageInternalPtr::reference       editNegXImage(void); 
     209            SFImageInternalPtr::const_reference getNegXImage (void) const; 
     210#ifdef OSG_1_GET_COMPAT 
     211            SFImageInternalPtr::reference       getNegXImage (void); 
     212#endif 
     213            void setNegXImage(SFImageInternalPtr::ArgumentType value); 
     214     
     215    /*! \}                                                                 */ 
     216    /*---------------------------------------------------------------------*/ 
     217    /*! \name Field SFPosYImage                                            */ 
     218    /*! \{                                                                 */ 
     219     
     220            SFImageInternalPtr       *editSFPosYImage(void); 
     221            SFImageInternalPtr const *getSFPosYImage (void) const; 
     222#ifdef OSG_1_GET_COMPAT 
     223            SFImageInternalPtr       *getSFPosYImage (void); 
     224#endif 
     225            SFImageInternalPtr::reference       editPosYImage(void); 
     226            SFImageInternalPtr::const_reference getPosYImage (void) const; 
     227#ifdef OSG_1_GET_COMPAT 
     228            SFImageInternalPtr::reference       getPosYImage (void); 
     229#endif 
     230            void setPosYImage(SFImageInternalPtr::ArgumentType value); 
     231     
     232    /*! \}                                                                 */ 
     233    /*---------------------------------------------------------------------*/ 
     234    /*! \name Field SFNegYImage                                            */ 
     235    /*! \{                                                                 */ 
     236     
     237            SFImageInternalPtr       *editSFNegYImage(void); 
     238            SFImageInternalPtr const *getSFNegYImage (void) const; 
     239#ifdef OSG_1_GET_COMPAT 
     240            SFImageInternalPtr       *getSFNegYImage (void); 
     241#endif 
     242            SFImageInternalPtr::reference       editNegYImage(void); 
     243            SFImageInternalPtr::const_reference getNegYImage (void) const; 
     244#ifdef OSG_1_GET_COMPAT 
     245            SFImageInternalPtr::reference       getNegYImage (void); 
     246#endif 
     247            void setNegYImage(SFImageInternalPtr::ArgumentType value); 
     248     
     249    /*! \}                                                                 */ 
     250    /*---------------------------------------------------------------------*/ 
     251    /*! \name Field SFIsReflectionMap                                      */ 
     252    /*! \{                                                                 */ 
     253     
     254            SFBool             *editSFIsReflectionMap(void); 
     255            SFBool const       *getSFIsReflectionMap (void) const; 
     256#ifdef OSG_1_GET_COMPAT 
     257            SFBool             *getSFIsReflectionMap (void); 
     258#endif 
     259            SFBool::reference       editIsReflectionMap(void); 
     260            SFBool::const_reference getIsReflectionMap (void) const; 
     261#ifdef OSG_1_GET_COMPAT 
     262            SFBool::reference       getIsReflectionMap (void); 
     263#endif 
     264            void setIsReflectionMap(SFBool::ArgumentType value); 
     265     
     266    /*! \}                                                                 */ 
     267     
     268    /*---------------------------------------------------------------------*/ 
     269    /*! \name Binary Access                                                */ 
    202270    /*! \{                                                                 */ 
    203271 
     
    208276                               ConstFieldMaskArg  whichField); 
    209277 
    210  
    211     /*! \}                                                                 */ 
    212     /*---------------------------------------------------------------------*/ 
    213     /*! \name                   Construction                               */ 
     278    /*! \}                                                                 */ 
     279    /*---------------------------------------------------------------------*/ 
     280    /*! \name Construction                                                 */ 
    214281    /*! \{                                                                 */ 
    215282 
     
    219286    /*! \}                                                                 */ 
    220287    /*---------------------------------------------------------------------*/ 
    221     /*! \name                       Copy                                   */ 
     288    /*! \name Copy                                                         */ 
    222289    /*! \{                                                                 */ 
    223290 
     
    226293    /*! \}                                                                 */ 
    227294    /*=========================  PROTECTED  ===============================*/ 
    228  
    229295  protected: 
    230296 
    231297    static TypeObject _type; 
    232298 
    233     static void   classDescInserter(TypeObject &oType); 
    234     static Char8 *getClassname     (void             ); 
    235  
    236     /*---------------------------------------------------------------------*/ 
    237     /*! \name                      Fields                                  */ 
    238     /*! \{                                                                 */ 
    239  
    240     SFImagePtr        _sfPosZImage; 
    241     SFImagePtr        _sfPosXImage; 
    242     SFImagePtr        _sfNegXImage; 
    243     SFImagePtr        _sfPosYImage; 
    244     SFImagePtr        _sfNegYImage; 
     299    static void         classDescInserter(TypeObject &oType); 
     300    static Char8 const *getClassname     (void             ); 
     301 
     302    /*---------------------------------------------------------------------*/ 
     303    /*! \name Fields                                                       */ 
     304    /*! \{                                                                 */ 
     305 
     306    SFImageInternalPtr _sfPosZImage; 
     307    SFImageInternalPtr _sfPosXImage; 
     308    SFImageInternalPtr _sfNegXImage; 
     309    SFImageInternalPtr _sfPosYImage; 
     310    SFImageInternalPtr _sfNegYImage; 
    245311    SFBool            _sfIsReflectionMap; 
    246312 
    247313    /*! \}                                                                 */ 
    248314    /*---------------------------------------------------------------------*/ 
    249     /*! \name                   Constructors                               */ 
     315    /*! \name Constructors                                                 */ 
    250316    /*! \{                                                                 */ 
    251317 
    252318    CubeTextureChunkBase(void); 
    253     CubeTextureChunkBase(const CubeTextureChunkBase &source); 
    254  
    255     /*! \}                                                                 */ 
    256     /*---------------------------------------------------------------------*/ 
    257     /*! \name                   Destructors                                */ 
     319    CubeTextureChunkBase(CubeTextureChunkBase const &source); 
     320 
     321    /*! \}                                                                 */ 
     322    /*---------------------------------------------------------------------*/ 
     323    /*! \name Destructors                                                  */ 
    258324    /*! \{                                                                 */ 
    259325 
     
    262328    /*! \}                                                                 */ 
    263329    /*---------------------------------------------------------------------*/ 
    264     /*! \name                     onCreate                                */ 
    265     /*! \{                                                                 */ 
    266  
    267     void onCreate(const CubeTextureChunk *source = NULL); 
    268  
    269     /*! \}                                                                 */ 
    270     /*---------------------------------------------------------------------*/ 
    271     /*! \name                    Generic Field Access                      */ 
     330    /*! \name onCreate                                                     */ 
     331    /*! \{                                                                 */ 
     332 
     333    void onCreate(CubeTextureChunk const *source = NULL); 
     334 
     335    /*! \}                                                                 */ 
     336    /*---------------------------------------------------------------------*/ 
     337    /*! \name Generic Field Access                                         */ 
    272338    /*! \{                                                                 */ 
    273339 
     
    287353    /*! \}                                                                 */ 
    288354    /*---------------------------------------------------------------------*/ 
    289     /*! \name                       Sync                                   */ 
     355    /*! \name Sync                                                         */ 
    290356    /*! \{                                                                 */ 
    291357 
    292358#ifdef OSG_MT_CPTR_ASPECT 
    293     virtual void execSyncV(      FieldContainer    &oFrom, 
    294                                  ConstFieldMaskArg  whichField, 
    295                                  AspectOffsetStore &oOffsets, 
    296                                  ConstFieldMaskArg  syncMode  , 
    297                            const UInt32             uiSyncInfo); 
    298  
    299             void execSync (      CubeTextureChunkBase *pFrom, 
    300                                  ConstFieldMaskArg  whichField, 
    301                                  AspectOffsetStore &oOffsets, 
    302                                  ConstFieldMaskArg  syncMode  , 
    303                            const UInt32             uiSyncInfo); 
    304 #endif 
    305  
    306     /*! \}                                                                 */ 
    307     /*---------------------------------------------------------------------*/ 
    308     /*! \name                       Edit                                   */ 
    309     /*! \{                                                                 */ 
    310  
    311     /*! \}                                                                 */ 
    312     /*---------------------------------------------------------------------*/ 
    313     /*! \name                     Aspect Create                            */ 
     359    virtual void execSyncV(FieldContainer    &oFrom, 
     360                           ConstFieldMaskArg  whichField, 
     361                           AspectOffsetStore &oOffsets, 
     362                           ConstFieldMaskArg  syncMode, 
     363                           UInt32 const       uiSyncInfo); 
     364 
     365            void execSync (CubeTextureChunkBase *pFrom, 
     366                           ConstFieldMaskArg  whichField, 
     367                           AspectOffsetStore &oOffsets, 
     368                           ConstFieldMaskArg  syncMode, 
     369                           UInt32 const       uiSyncInfo); 
     370#endif 
     371 
     372    /*! \}                                                                 */ 
     373    /*---------------------------------------------------------------------*/ 
     374    /*! \name Aspect Create                                                */ 
    314375    /*! \{                                                                 */ 
    315376 
     
    317378    virtual FieldContainerPtr createAspectCopy(void) const; 
    318379#endif 
    319  
    320     /*! \}                                                                 */ 
    321     /*---------------------------------------------------------------------*/ 
    322     /*! \name                       Edit                                   */ 
    323     /*! \{                                                                 */ 
    324     /*! \}                                                                 */ 
    325     /*---------------------------------------------------------------------*/ 
    326     /*! \name                       Sync                                   */ 
     380     
     381    /*! \}                                                                 */ 
     382    /*---------------------------------------------------------------------*/ 
     383    /*! \name Sync                                                         */ 
    327384    /*! \{                                                                 */ 
    328385 
     
    331388    /*! \}                                                                 */ 
    332389    /*==========================  PRIVATE  ================================*/ 
    333  
    334390  private: 
    335391 
     
    338394}; 
    339395 
    340 typedef CubeTextureChunkBase *CubeTextureChunkBaseP
    341  
    342 /** Type specific RefPtr type for CubeTextureChunk. */ 
    343 typedef RefPtr<CubeTextureChunkPtr> CubeTextureChunkRefPtr; 
     396typedef CubeTextureChunkBase::ObjRefPtr         CubeTextureChunkRefPtr
     397typedef CubeTextureChunkBase::ObjMTRefPtr       CubeTextureChunkMTRefPtr; 
     398typedef CubeTextureChunkBase::ObjWeakRefPtr     CubeTextureChunkWeakRefPtr; 
     399typedef CubeTextureChunkBase::ObjParentPtr      CubeTextureChunkParentPtr; 
    344400 
    345401typedef boost::mpl::if_<