Show
Ignore:
Timestamp:
12/03/07 15:48:13 (1 year ago)
Author:
cneumann
Message:

fixed: compile errors

reference counting


It compiles on linux (when disabling the VRML Loader) and the first
ref counting tests seem to work.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/Carsten_PtrWork2/Source/Base/Field/OSGFieldTraits.inl

    r889 r1030  
    3939OSG_BEGIN_NAMESPACE 
    4040 
    41 template<class DescT, enum FieldCardinality eFieldCard> inline 
    42 FieldDescription<DescT, eFieldCard>::FieldDescription( 
     41template <class DescT,  
     42          enum FieldCardinality FieldCardE, 
     43          enum FieldCategory    FieldCatE  > inline 
     44FieldDescription<DescT, 
     45                 FieldCardE, 
     46                 FieldCatE  >::FieldDescription( 
    4347    const FieldType       &elementType, 
    4448    const Char8           *szName, 
     
    6569} 
    6670 
    67 template<class DescT, enum FieldCardinality eFieldCard> inline 
    68 FieldDescription<DescT, eFieldCard>::FieldDescription( 
     71template <class DescT,  
     72          enum FieldCardinality FieldCardE, 
     73          enum FieldCategory    FieldCatE  > inline 
     74FieldDescription<DescT, 
     75                 FieldCardE, 
     76                 FieldCatE  >::FieldDescription( 
    6977    const FieldType            &elementType, 
    7078    const Char8                *szName, 
     
    9199} 
    92100 
    93 template<class DescT, enum FieldCardinality eFieldCard> inline 
    94 FieldDescription<DescT, eFieldCard>::FieldDescription( 
     101template <class DescT,  
     102          enum FieldCardinality FieldCardE, 
     103          enum FieldCategory    FieldCatE  > inline 
     104FieldDescription<DescT, 
     105                 FieldCardE, 
     106                 FieldCatE  >::FieldDescription( 
    95107    const FieldDescription &source) : 
    96108 
     
    99111} 
    100112 
    101 template<class DescT, enum FieldCardinality eFieldCard> inline 
    102 FieldDescription<DescT, eFieldCard>::~FieldDescription(void) 
    103 
    104 
    105  
    106 template<class DescT, enum FieldCardinality eFieldCard> inline 
    107 const typename FieldDescription<DescT, eFieldCard>::HandledField * 
    108     FieldDescription<DescT, eFieldCard>::dcast_const(const Field *pField) const 
     113template <class DescT,  
     114          enum FieldCardinality FieldCardE, 
     115          enum FieldCategory    FieldCatE  > inline 
     116FieldDescription<DescT, 
     117                 FieldCardE, 
     118                 FieldCatE  >::~FieldDescription(void) 
     119
     120
     121 
     122template <class DescT,  
     123          enum FieldCardinality FieldCardE, 
     124          enum FieldCategory    FieldCatE  > inline 
     125typename FieldDescription<DescT, 
     126                          FieldCardE, 
     127                          FieldCatE  >::HandledField const * 
     128    FieldDescription<DescT, 
     129                     FieldCardE, 
     130                     FieldCatE  >::dcast_const(const Field *pField) const 
    109131{ 
    110132    return static_cast<const HandledField *>(pField); 
    111133} 
    112134 
    113 template<class DescT, enum FieldCardinality eFieldCard> inline 
    114 typename FieldDescription<DescT, eFieldCard>::HandledField * 
    115     FieldDescription<DescT, eFieldCard>::dcast(Field *pField) const 
     135template <class DescT,  
     136          enum FieldCardinality FieldCardE, 
     137          enum FieldCategory    FieldCatE  > inline 
     138typename FieldDescription<DescT, 
     139                          FieldCardE, 
     140                          FieldCatE  >::HandledField * 
     141    FieldDescription<DescT, 
     142                     FieldCardE, 
     143                     FieldCatE  >::dcast(Field *pField) const 
    116144{ 
    117145    return static_cast<HandledField *>(pField); 
    118146} 
    119147 
    120 template<class DescT, enum FieldCardinality eFieldCard> inline 
    121 Field *FieldDescription<DescT, eFieldCard>::createField(void) const 
    122 
    123     return new HandledField(); 
    124 
    125  
    126 template<class DescT, enum FieldCardinality eFieldCard> inline 
    127 void FieldDescription<DescT, eFieldCard>::destroyField(Field *pField) const 
     148template <class DescT,  
     149          enum FieldCardinality FieldCardE, 
     150          enum FieldCategory    FieldCatE  > inline 
     151Field *FieldDescription<DescT, 
     152                        FieldCardE, 
     153                        FieldCatE  >::createField(void) const 
     154
     155//     return new HandledField(); 
     156 
     157    FFATAL(("FieldDescription<>::createField: DISABLED - cneumann\n")); 
     158    return NULL; 
     159
     160 
     161template <class DescT,  
     162          enum FieldCardinality FieldCardE, 
     163          enum FieldCategory    FieldCatE  > inline 
     164void FieldDescription<DescT, 
     165                      FieldCardE, 
     166                      FieldCatE  >::destroyField(Field *pField) const 
    128167{ 
    129168    HandledField *pDelField = dcast(pField); 
     
    132171} 
    133172 
    134 template<class DescT, enum FieldCardinality eFieldCard> inline 
    135 FieldDescriptionBase *FieldDescription<DescT, eFieldCard>::clone(void) const 
     173template <class DescT,  
     174          enum FieldCardinality FieldCardE, 
     175          enum FieldCategory    FieldCatE  > inline 
     176FieldDescriptionBase *FieldDescription<DescT, 
     177                                       FieldCardE, 
     178                                       FieldCatE  >::clone(void) const 
    136179{ 
    137180    return new Self(*this); 
    138181} 
    139182 
    140 template<class DescT, enum FieldCardinality eFieldCard> inline 
     183template <class DescT,  
     184          enum FieldCardinality FieldCardE, 
     185          enum FieldCategory    FieldCatE  > inline 
    141186GetFieldHandlePtr  
    142     FieldDescription<DescT, eFieldCard>::createGetHandler(const Field *pField) 
     187    FieldDescription<DescT, 
     188                     FieldCardE, 
     189                     FieldCatE  >::createGetHandler(const Field *pField) 
    143190{ 
    144191    const HandledField *pTypedField = dcast_const(pField); 
     
    149196} 
    150197 
    151 template<class DescT, enum FieldCardinality eFieldCard> inline 
     198template <class DescT,  
     199          enum FieldCardinality FieldCardE, 
     200          enum FieldCategory    FieldCatE  > inline 
    152201EditFieldHandlePtr  
    153     FieldDescription<DescT, eFieldCard>::createEditHandler(Field *pField) 
     202    FieldDescription<DescT, 
     203                     FieldCardE, 
     204                     FieldCatE  >::createEditHandler(Field *pField) 
    154205{ 
    155206    HandledField *pTypedField = dcast(pField); 
     
    161212 
    162213 
    163 template<class DescT, enum FieldCardinality eFieldCard> inline 
    164 void FieldDescription<DescT, 
    165                       eFieldCard>::SFieldFunctions::beginEdit( 
     214template <class DescT,  
     215          enum FieldCardinality FieldCardE, 
     216          enum FieldCategory    FieldCatE  > inline 
     217void FieldDescription<DescT, 
     218                      FieldCardE, 
     219                      FieldCatE  >::SFieldFunctions::beginEdit( 
    166220                          HandledField       *, 
    167221                          UInt32              , 
     
    170224} 
    171225 
    172 template<class DescT, enum FieldCardinality eFieldCard> inline 
    173 void FieldDescription<DescT, 
    174                       eFieldCard>::MFieldFunctions::beginEdit( 
     226template <class DescT,  
     227          enum FieldCardinality FieldCardE, 
     228          enum FieldCategory    FieldCatE  > inline 
     229void FieldDescription<DescT, 
     230                      FieldCardE, 
     231                      FieldCatE  >::MFieldFunctions::beginEdit( 
    175232                          HandledField       *pField, 
    176233                          UInt32              uiAspect, 
     
    181238 
    182239 
    183 template<class DescT, enum FieldCardinality eFieldCard> inline 
     240template <class DescT,  
     241          enum FieldCardinality FieldCardE, 
     242          enum FieldCategory    FieldCatE  > inline 
    184243bool FieldDescription<DescT, 
    185                       eFieldCard>::SFieldFunctions::isShared( 
     244                      FieldCardE, 
     245                      FieldCatE  >::SFieldFunctions::isShared( 
    186246                          HandledField *) 
    187247{ 
     
    189249} 
    190250 
    191 template<class DescT, enum FieldCardinality eFieldCard> inline 
     251template <class DescT,  
     252          enum FieldCardinality FieldCardE, 
     253          enum FieldCategory    FieldCatE  > inline 
    192254bool FieldDescription<DescT, 
    193                       eFieldCard>::MFieldFunctions::isShared( 
     255                      FieldCardE, 
     256                      FieldCatE  >::MFieldFunctions::isShared( 
    194257                          HandledField *pField) 
    195258{ 
     
    199262 
    200263 
    201 template<class DescT, enum FieldCardinality eFieldCard> inline 
    202 void FieldDescription<DescT, 
    203                       eFieldCard>::beginEdit(Field              *pField, 
    204                                              UInt32              uiAspect, 
    205                                              AspectOffsetStore  &oOffsets) 
     264template <class DescT,  
     265          enum FieldCardinality FieldCardE, 
     266          enum FieldCategory    FieldCatE  > inline 
     267void FieldDescription<DescT, 
     268                      FieldCardE, 
     269                      FieldCatE  >::beginEdit(Field              *pField, 
     270                                              UInt32              uiAspect, 
     271                                              AspectOffsetStore  &oOffsets) 
    206272{ 
    207273    HandledField *pTypedField = dcast(pField); 
     
    210276} 
    211277 
    212 template<class DescT, enum FieldCardinality eFieldCard> inline 
     278template <class DescT,  
     279          enum FieldCardinality FieldCardE, 
     280          enum FieldCategory    FieldCatE  > inline 
    213281bool FieldDescription<DescT, 
    214                       eFieldCard>::isShared(Field *pField) 
     282                      FieldCardE, 
     283                      FieldCatE  >::isShared(Field *pField) 
    215284{ 
    216285    HandledField *pTypedField = dcast(pField);