Changeset 507

Show
Ignore:
Timestamp:
02/19/08 14:24:52 (11 months ago)
Author:
phill
Message:

o Renaming some libx42pp types.
o More new code.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/morph-targets/libx42make/include/x42make-modeldata.h

    r506 r507  
    8383}; 
    8484 
    85 class GroupPrimitiveIterator : public PrimitiveIterator< index > 
     85class GroupPrimitiveIterator : public primitive_iterator< index > 
    8686{ 
    8787public: 
     
    9999        std::string                             surfaceName; 
    100100 
    101         PrimType                              primType; 
     101        primitive_type                        primType; 
    102102 
    103103        std::vector< Vertex >   verts; 
     
    114114 
    115115        uint NumElements( void ) const { return indices.size() ? (uint)indices.size() : (uint)verts.size(); } 
    116         uint NumPrimitives( void ) const { return PrimType::ElemsToPrims( primType, NumElements() ); } 
     116        uint NumPrimitives( void ) const { return primitive_type::elems_to_prims( primType, NumElements() ); } 
    117117 
    118118        void DoRemapInfluences( const std::vector< uint > &infRemap ); 
  • branches/morph-targets/libx42make/include/x42make.h

    r440 r507  
    3232 
    3333#include "x42make-modeldata.h" 
     34#include "x42make-modelbuilder.h" 
    3435 
    3536#endif 
  • branches/morph-targets/libx42make/libx42make.vcproj

    r462 r507  
    492492                        > 
    493493                        <File 
     494                                RelativePath=".\include\x42make-modelbuilder.h" 
     495                                > 
     496                        </File> 
     497                        <File 
    494498                                RelativePath=".\include\x42make-modeldata.h" 
    495499                                > 
     
    544548                        </File> 
    545549                </Filter> 
     550                <Filter 
     551                        Name="old" 
     552                        > 
     553                        <File 
     554                                RelativePath=".\modeldata-anim.cpp" 
     555                                > 
     556                        </File> 
     557                        <File 
     558                                RelativePath=".\modeldata-batch.cpp" 
     559                                > 
     560                        </File> 
     561                        <File 
     562                                RelativePath=".\modeldata-cull.cpp" 
     563                                > 
     564                        </File> 
     565                        <File 
     566                                RelativePath=".\modeldata-optimize.cpp" 
     567                                > 
     568                        </File> 
     569                        <File 
     570                                RelativePath=".\modeldata-weights.cpp" 
     571                                > 
     572                        </File> 
     573                        <File 
     574                                RelativePath=".\modeldata-write.cpp" 
     575                                > 
     576                        </File> 
     577                        <File 
     578                                RelativePath=".\modeldata.cpp" 
     579                                > 
     580                        </File> 
     581                </Filter> 
    546582                <File 
    547583                        RelativePath=".\local.h" 
     
    617653                </File> 
    618654                <File 
    619                         RelativePath=".\modeldata-anim.cpp" 
     655                        RelativePath=".\modelbuilder-geometry.cpp" 
    620656                        > 
    621657                </File> 
    622658                <File 
    623                         RelativePath=".\modeldata-batch.cpp" 
    624                         > 
    625                 </File> 
    626                 <File 
    627                         RelativePath=".\modeldata-cull.cpp" 
    628                         > 
    629                 </File> 
    630                 <File 
    631                         RelativePath=".\modeldata-optimize.cpp" 
    632                         > 
    633                 </File> 
    634                 <File 
    635                         RelativePath=".\modeldata-weights.cpp" 
    636                         > 
    637                 </File> 
    638                 <File 
    639                         RelativePath=".\modeldata-write.cpp" 
    640                         > 
    641                 </File> 
    642                 <File 
    643                         RelativePath=".\modeldata.cpp" 
     659                        RelativePath=".\modelbuilder.cpp" 
    644660                        > 
    645661                </File> 
  • branches/morph-targets/libx42make/modeldata-batch.cpp

    r506 r507  
    5252 
    5353        GroupPrimitiveIterator iter( group ); 
    54         while( iter.Next() ) 
     54        while( iter.next() ) 
    5555        { 
    5656                int maxWt = 0; 
    5757 
    58                 for( uint i = 0; i < iter.IndicesPerPrim(); i++ ) 
    59                 { 
    60                         const Vertex &v = group->verts[iter.Current( i )]; 
     58                for( uint i = 0; i < iter.indices_per_prim(); i++ ) 
     59                { 
     60                        const Vertex &v = group->verts[iter.current( i )]; 
    6161 
    6262                        int numWt = 0; 
     
    7474                std::vector< int > &vertMap = vertMaps[maxWt - 1]; 
    7575 
    76                 for( uint i = 0; i < iter.IndicesPerPrim(); i++ ) 
    77                 { 
    78                         index idx = iter.Current( i ); 
     76                for( uint i = 0; i < iter.indices_per_prim(); i++ ) 
     77                { 
     78                        index idx = iter.current( i ); 
    7979 
    8080                        if( vertMap[idx] == -1 ) 
     
    118118        GroupPtr ret( new Group( this ) ); 
    119119 
    120         demand( ga->primType.ElemsPerPrim() == gb->primType.ElemsPerPrim(), "mismatched primitive sizes" ); 
     120        demand( ga->primType.elems_per_prim() == gb->primType.elems_per_prim(), "mismatched primitive sizes" ); 
    121121 
    122122        ret->surfaceName = ga->surfaceName; 
    123123        ret->material = ga->material; 
    124124 
    125         ret->primType = PrimType::ListTypeFromElemsPerPrim( ga->primType.ElemsPerPrim() ); 
     125        ret->primType = ga->primType.to_list_type(); 
    126126 
    127127        ret->verts.insert( ret->verts.begin(), ga->verts.begin(), ga->verts.end() ); 
    128128        ret->infMap.insert( ret->infMap.begin(), ga->infMap.begin(), ga->infMap.end() ); 
    129129 
    130         if( ga->primType.IsListType() && ga->indices.size() ) 
     130        if( ga->primType.is_list_type() && ga->indices.size() ) 
    131131        { 
    132132                ret->indices.insert( ret->indices.begin(), ga->indices.begin(), ga->indices.end() ); 
     
    135135        { 
    136136                GroupPrimitiveIterator ia( ga ); 
    137                 while( ia.Next() ) 
    138                 { 
    139                         for( uint i = 0; i < ia.IndicesPerPrim(); i++ ) 
    140                                 ret->indices.push_back( ia.Current( i ) ); 
     137                while( ia.next() ) 
     138                { 
     139                        for( uint i = 0; i < ia.indices_per_prim(); i++ ) 
     140                                ret->indices.push_back( ia.current( i ) ); 
    141141                } 
    142142        } 
     
    186186 
    187187        GroupPrimitiveIterator ib( gb ); 
    188         while( ib.Next() ) 
    189         { 
    190                 for( uint i = 0; i < ib.IndicesPerPrim(); i++ ) 
    191                         ret->indices.push_back( util::checked_int_cast< index >( remap[ib.Current( i )] ) ); 
     188        while( ib.next() ) 
     189        { 
     190                for( uint i = 0; i < ib.indices_per_prim(); i++ ) 
     191                        ret->indices.push_back( util::checked_int_cast< index >( remap[ib.current( i )] ) ); 
    192192        } 
    193193 
     
    277277        GroupPtr group = groups[iGroup]; 
    278278 
    279         uint numPrims = PrimType::ElemsToPrims( group->primType, (uint)group->indices.size() ); 
     279        uint numPrims = primitive_type::elems_to_prims( group->primType, (uint)group->indices.size() ); 
    280280 
    281281        if( group->verts.size() <= maxVerts && numPrims <= maxPrims && group->infMap.size() <= maxInfluences ) 
     
    308308 
    309309        GroupPrimitiveIterator iter( group ); 
    310         while( iter.Next() ) 
     310        while( iter.next() ) 
    311311        {        
    312312                //create the cost estimate for the prim 
     
    317317                        addVerts[iG] = 0; 
    318318 
    319                         for( uint iPv = 0; iPv < iter.IndicesPerPrim(); iPv++ ) 
    320                         { 
    321                                 const index vIdx = iter.Current( iPv ); 
     319                        for( uint iPv = 0; iPv < iter.indices_per_prim(); iPv++ ) 
     320                        { 
     321                                const index vIdx = iter.current( iPv ); 
    322322                                //only count the cost if the vert's not already in the group 
    323323 
     
    341341 
    342342                        //make sure we can actually add into this group 
    343                         if( PrimType::ElemsToPrims( sGroup.primType, (uint)sGroup.indices.size() ) + 1 > maxPrims ) 
     343                        if( primitive_type::elems_to_prims( sGroup.primType, (uint)sGroup.indices.size() ) + 1 > maxPrims ) 
    344344                                continue; 
    345345                        if( sGroup.verts.size() + addVerts[i] > maxVerts ) 
     
    385385                std::vector< int > &vertMap = vertRemap[iBest]; 
    386386 
    387                 for( uint iPv = 0; iPv < iter.IndicesPerPrim(); iPv++ ) 
    388                 { 
    389                         uint vidx = iter.Current( iPv ); 
     387                for( uint iPv = 0; iPv < iter.indices_per_prim(); iPv++ ) 
     388                { 
     389                        uint vidx = iter.current( iPv ); 
    390390 
    391391                        if( vertMap[vidx] == -1 ) 
     
    566566                switch( group.primType ) 
    567567                { 
    568                 case PrimType::TriangleFan: 
    569                 case PrimType::TriangleStrip: 
    570                 case PrimType::TriangleList: 
     568                case primitive_type::triangle_fan: 
     569                case primitive_type::triangle_strip: 
     570                case primitive_type::triangle_list: 
    571571                        if( DoTopologicalSplit( iGroup, maxVerts, maxPrims, maxInfluences ) ) 
    572572                                iGroup--; 
     
    692692                        } 
    693693 
    694                         if( ga->primType.ElemsPerPrim() != gb->primType.ElemsPerPrim() ) 
     694                        if( ga->primType.elems_per_prim() != gb->primType.elems_per_prim() ) 
    695695                                continue; 
    696696 
  • branches/morph-targets/libx42make/modeldata-optimize.cpp

    r506 r507  
    4040        switch( primType ) 
    4141        { 
    42         case PrimType::TriangleList: 
    43         case PrimType::TriangleStrip: 
    44         case PrimType::TriangleFan: 
    45                 numPrims = PrimType::ElemsToPrims( primType, numElems ); 
     42        case primitive_type::triangle_list: 
     43        case primitive_type::triangle_strip: 
     44        case primitive_type::triangle_fan: 
     45                numPrims = primitive_type::elems_to_prims( primType, numElems ); 
    4646                break; 
    4747 
     
    5555        if( numPrims ) 
    5656        { 
    57                 if( primType == PrimType::TriangleStrip && indices.size() ) 
     57                if( primType == primitive_type::triangle_list && indices.size() ) 
    5858                { 
    5959                        assert( indices.size() == ret.size(), "Odd index count." ); 
     
    6565 
    6666                        GroupPrimitiveIterator iter( this ); 
    67                         while( iter.Next() ) 
     67                        while( iter.next() ) 
    6868                        { 
    69                                 ret[iOut++] = iter.Current( 0 ); 
    70                                 ret[iOut++] = iter.Current( 1 ); 
    71                                 ret[iOut++] = iter.Current( 2 ); 
     69                                ret[iOut++] = iter.current( 0 ); 
     70                                ret[iOut++] = iter.current( 1 ); 
     71                                ret[iOut++] = iter.current( 2 ); 
    7272                        } 
    7373                } 
     
    8181        switch( primType ) 
    8282        { 
    83         case PrimType::TriangleList: 
    84         case PrimType::TriangleStrip: 
    85         case PrimType::TriangleFan: 
     83        case primitive_type::triangle_list: 
     84        case primitive_type::triangle_strip: 
     85        case primitive_type::triangle_fan: 
    8686                break; 
    8787 
     
    128128                } 
    129129                else 
    130                         primType = PrimType::TriangleStrip; 
     130                        primType = primitive_type::triangle_strip; 
    131131        } 
    132132        else 
    133                 primType = PrimType::TriangleList; 
     133                primType = primitive_type::triangle_list; 
    134134 
    135135        //clear the group 
  • branches/morph-targets/libx42make/modeldata.cpp

    r506 r507  
    7575*/ 
    7676GroupPrimitiveIterator::GroupPrimitiveIterator( const Group *group ) 
    77         : PrimitiveIterator< ushort >( group->primType, 
     77        : primitive_iterator< ushort >( group->primType, 
    7878        group->indices.size() ? &group->indices[0] : NULL, group->NumPrimitives() ) 
    7979{ 
     
    8181 
    8282GroupPrimitiveIterator::GroupPrimitiveIterator( ConstGroupPtr group ) 
    83         : PrimitiveIterator< ushort >( group->primType, 
     83        : primitive_iterator< ushort >( group->primType, 
    8484        group->indices.size() ? &group->indices[0] : NULL, group->NumPrimitives() ) 
    8585{ 
     
    9292Group::Group( Lod *owner ) 
    9393        : owner( owner ), 
    94         primType( PrimType::TriangleList ), 
     94        primType( primitive_type::triangle_list ), 
    9595        maxInfsPerVert( X42_WEIGHTS_PER_VERT ) 
    9696{ 
  • branches/morph-targets/libx42make/topology-split.cpp

    r506 r507  
    5757        goodGroup->surfaceName = group->surfaceName; 
    5858        goodGroup->maxInfsPerVert = group->maxInfsPerVert; 
    59         goodGroup->primType = PrimType::TriangleList; 
     59        goodGroup->primType = primitive_type::triangle_list; 
    6060 
    6161        spillGroup->material = group->material; 
    6262        spillGroup->surfaceName = group->surfaceName; 
    6363        spillGroup->maxInfsPerVert = group->maxInfsPerVert; 
    64         spillGroup->primType = PrimType::TriangleList; 
     64        spillGroup->primType = primitive_type::triangle_list; 
    6565} 
    6666 
  • branches/morph-targets/libx42pp/include/x42types-imp.hpp

    r500 r507  
    3333 
    3434template< typename T > 
    35 PrimitiveIterator< T >::PrimitiveIterator( PrimType primType, const T *indices, uint numPrims ) 
    36         : primType( primType ), indices( indices ), numPrims( numPrims ), currPrim( uint_traits::max_val ) 
    37 { 
    38 } 
    39  
    40 template< typename T > 
    41 uint PrimitiveIterator< T >::IndicesPerPrim( void ) const 
    42 { 
    43         return primType.ElemsPerPrim(); 
    44 } 
    45  
    46 template< typename T > 
    47 bool PrimitiveIterator< T >::Next( void
     35primitive_iterator< T >::primitive_iterator( primitive_type prim_type, const T *indices, uint numPrims ) 
     36        : prim_type( prim_type ), indices( indices ), numPrims( numPrims ), currPrim( uint_traits::max_val ) 
     37{ 
     38} 
     39 
     40template< typename T > 
     41uint primitive_iterator< T >::indices_per_prim( void ) const 
     42{ 
     43        return prim_type.elems_per_prim(); 
     44} 
     45 
     46template< typename T > 
     47bool primitive_iterator< T >::next(
    4848{ 
    4949        if( currPrim == uint_traits::max_val ) 
     
    6565 
    6666template< typename T > 
    67 T PrimitiveIterator< T >::Current( uint i ) const 
    68 { 
    69         if( i >= IndicesPerPrim() ) 
     67T primitive_iterator< T >::current( uint i ) const 
     68{ 
     69        if( i >= indices_per_prim() ) 
    7070                fail( ErrCode::OutOfRange, "invalid element index" ); 
    7171 
    7272        uint idx; 
    7373 
    74         switch( primType ) 
     74        switch( prim_type ) 
    7575        { 
    76         case PrimType::PointList: 
     76        case primitive_type::point_list: 
    7777                idx = currPrim; 
    7878                break; 
    7979 
    80         case PrimType::LineList: 
     80        case primitive_type::line_list: 
    8181                idx = currPrim * 2 + i; 
    8282                break; 
    8383 
    84         case PrimType::LineStrip: 
     84        case primitive_type::line_strip: 
    8585                idx = currPrim + i; 
    8686                break; 
    8787 
    88         case PrimType::TriangleList: 
     88        case primitive_type::triangle_list: 
    8989                idx = currPrim * 3  + i; 
    9090                break; 
    9191                 
    92         case PrimType::TriangleStrip: 
     92        case primitive_type::triangle_strip: 
    9393                if( currPrim & 1 ) 
    9494                { 
     
    116116                break; 
    117117 
    118         case PrimType::TriangleFan: 
     118        case primitive_type::triangle_fan: 
    119119                idx = i ? currPrim + i : 0; 
    120120                break; 
  • branches/morph-targets/libx42pp/include/x42types.h

    r469 r507  
    4444        typedef util::integer_traits< uint > uint_traits; 
    4545 
    46 X42_DECLARE_ENUM( PrimType ) 
    47  
    48         PointList             = X42_PT_POINT_LIST, 
    49  
    50         LineList              = X42_PT_LINE_LIST, 
    51         LineStrip             = X42_PT_LINE_STRIP, 
    52  
    53         TriangleList  = X42_PT_TRIANGLE_LIST, 
    54         TriangleStrip = X42_PT_TRIANGLE_STRIP, 
    55         TriangleFan           = X42_PT_TRIANGLE_FAN, 
    56  
    57 X42_END_ENUM_WITH_TYPE_OPEN( PrimType, uint ) 
    58  
    59         static uint ElemsToPrims( PrimType primType, uint numElems ) 
    60         { 
    61                 switch( (Values)primType ) 
     46X42_DECLARE_ENUM( primitive_type ) 
     47 
     48        point_list            = X42_PT_POINT_LIST, 
     49 
     50        line_list             = X42_PT_LINE_LIST, 
     51        line_strip            = X42_PT_LINE_STRIP, 
     52 
     53        triangle_list = X42_PT_TRIANGLE_LIST, 
     54        triangle_strip        = X42_PT_TRIANGLE_STRIP, 
     55        triangle_fan  = X42_PT_TRIANGLE_FAN, 
     56 
     57X42_END_ENUM_WITH_TYPE_OPEN( primitive_type, uint ) 
     58 
     59        static uint elems_to_prims( primitive_type primitive_type, uint num_elems ) 
     60        { 
     61                switch( (Values)primitive_type ) 
    6262                { 
    63                 case PointList: 
    64                         return numElems; 
    65  
    66                 case LineList: 
    67                         return numElems >= 2 ? numElems / 2 : 0; 
    68  
    69                 case LineStrip: 
    70                         return numElems >= 2 ? numElems - 1 : 0; 
    71  
    72                 case TriangleList: 
    73                         return numElems >= 3 ? numElems / 3 : 0; 
    74  
    75                 case TriangleStrip: 
    76                 case TriangleFan: 
    77                         return numElems >= 3 ? numElems - 2 : 0; 
     63                case point_list: 
     64                        return num_elems; 
     65 
     66                case line_list: 
     67                        return num_elems >= 2 ? num_elems / 2 : 0; 
     68 
     69                case line_strip: 
     70                        return num_elems >= 2 ? num_elems - 1 : 0; 
     71 
     72                case triangle_list: 
     73                        return num_elems >= 3 ? num_elems / 3 : 0; 
     74 
     75                case triangle_strip: 
     76                case triangle_fan: 
     77                        return num_elems >= 3 ? num_elems - 2 : 0; 
    7878 
    7979                default: 
     
    8282        } 
    8383 
    84         uint ElemsToPrims( uint numElems ) const 
    85         { 
    86                 return ElemsToPrims( *this, numElems ); 
    87         } 
    88  
    89         static uint PrimsToElems( PrimType primType, uint numPrims ) 
    90         { 
    91                 switch( (Values)primType ) 
     84        uint elems_to_prims( uint num_elems ) const 
     85        { 
     86                return elems_to_prims( *this, num_elems ); 
     87        } 
     88 
     89        static uint prims_to_elems( primitive_type primitive_type, uint num_prims ) 
     90        { 
     91                switch( (Values)primitive_type ) 
    9292                { 
    93                 case PointList: 
    94                         return numPrims; 
    95  
    96                 case LineList: 
    97                         return numPrims * 2; 
    98  
    99                 case LineStrip: 
    100                         return numPrims + 1; 
    101  
    102                 case TriangleList: 
    103                         return numPrims * 3; 
    104  
    105                 case TriangleStrip: 
    106                 case TriangleFan: 
    107                         return numPrims + 2; 
     93                case point_list: 
     94                        return num_prims; 
     95 
     96                case line_list: 
     97                        return num_prims * 2; 
     98 
     99                case line_strip: 
     100                        return num_prims + 1; 
     101 
     102                case triangle_list: 
     103                        return num_prims * 3; 
     104 
     105                case triangle_strip: 
     106                case triangle_fan: 
     107                        return num_prims + 2; 
    108108 
    109109                default: 
     
    112112        } 
    113113 
    114         uint PrimsToElems( uint numPrims ) const 
    115         { 
    116                 return PrimsToElems( *this, numPrims ); 
    117         } 
    118  
    119         static uint ElemsPerPrim( PrimType primType ) 
    120         { 
    121                 switch( (Values)primType ) 
     114        uint prims_to_elems( uint num_prims ) const 
     115        { 
     116                return prims_to_elems( *this, num_prims ); 
     117        } 
     118 
     119        static uint elems_per_prim( primitive_type primitive_type ) 
     120        { 
     121                switch( (Values)primitive_type ) 
    122122                { 
    123                 case PointList: 
     123                case point_list: 
    124124                        return 1; 
    125125 
    126                 case LineList: 
    127                 case LineStrip: 
     126                case line_list: 
     127                case line_strip: 
    128128                        return 2; 
    129129 
    130                 case TriangleList: 
    131                 case TriangleStrip: 
    132                 case TriangleFan: 
     130                case triangle_list: 
     131                case triangle_strip: 
     132                case triangle_fan: 
    133133                        return 3; 
    134134 
     
    138138        } 
    139139 
    140         uint ElemsPerPrim( void ) const 
    141         { 
    142                 return ElemsPerPrim( *this ); 
    143         } 
    144  
    145         static PrimType ListTypeFromElemsPerPrim( uint elemsPerPrim ) 
    146         { 
    147                 switch( elemsPerPrim ) 
     140        uint elems_per_prim( void ) const 
     141        { 
     142                return elems_per_prim( *this ); 
     143        } 
     144 
     145        static primitive_type elems_per_prim_to_list_type( uint elems_per_prim ) 
     146        { 
     147                switch( elems_per_prim ) 
    148148                { 
    149149                case 1: 
    150                         return PrimType::PointList; 
     150                        return primitive_type::point_list; 
    151151                        break; 
    152152 
    153153                case 2: 
    154                         return PrimType::LineList; 
     154                        return primitive_type::line_list; 
    155155                        break; 
    156156 
    157157                case 3: 
    158                         return PrimType::TriangleList; 
     158                        return primitive_type::triangle_list; 
    159159                        break; 
    160160 
     
    164164        } 
    165165 
    166         static bool IsListType( PrimType primType ) 
    167         { 
    168                 switch( (Values)primType ) 
     166        primitive_type to_list_type() const 
     167        { 
     168                return elems_per_prim_to_list_type( elems_per_prim() ); 
     169        } 
     170 
     171        static bool is_list_type( primitive_type primitive_type ) 
     172        { 
     173                switch( (Values)primitive_type ) 
    169174                { 
    170                 case PointList: 
    171                 case LineList: 
    172                 case TriangleList: 
     175                case point_list: 
     176                case line_list: 
     177                case triangle_list: 
    173178                        return true; 
    174179 
    175                 case LineStrip:  
    176                 case TriangleStrip: 
    177                 case TriangleFan: 
    178                         return true; 
    179  
    180180                default: 
    181                         return 0
     181                        return false
    182182                } 
    183183        } 
    184184 
    185         bool IsListType( void ) const 
    186         { 
    187                 return IsListType( *this ); 
    188         } 
    189  
    190 X42_END_OPEN_ENUM( PrimType ); 
     185        bool is_list_type( void ) const 
     186        { 
     187                return is_list_type( *this ); 
     188        } 
     189 
     190X42_END_OPEN_ENUM( primitive_type ); 
    191191 
    192192template< typename T > 
    193 class PrimitiveIterator 
    194 { 
    195 public: 
    196         PrimitiveIterator( PrimType primType, const T *indices, uint numIndices ); 
     193class primitive_iterator 
     194{ 
     195public: 
     196        primitive_iterator( primitive_type primitive_type, const T *indices, uint numIndices ); 
    197197         
    198         uint IndicesPerPrim( void ) const; 
    199  
    200         bool Next( void ); 
    201         T Current( uint i ) const; 
    202  
    203 private: 
    204         PrimType               primType; 
     198        uint indices_per_prim( void ) const; 
     199 
     200        bool next( void ); 
     201        T current( uint i ) const; 
     202 
     203private: 
     204        primitive_type prim_type; 
    205205        const T                 *indices; 
    206206 
     
    208208        uint                    numPrims; 
    209209 
    210         PrimitiveIterator( const PrimitiveIterator & );        
    211         PrimitiveIterator& operator = ( const PrimitiveIterator & ); 
     210        primitive_iterator( const primitive_iterator & );      
     211        primitive_iterator& operator = ( const primitive_iterator & ); 
    212212}; 
    213213 
  • branches/morph-targets/x42maya/Export-Gather.cpp

    r466 r507  
    334334        newGroup->material = shaderName; 
    335335        newGroup->surfaceName = surfaceName; 
    336         newGroup->primType = PrimType::TriangleList; 
     336        newGroup->primType = primitive_type::triangle_list; 
    337337        newGroup->maxInfsPerVert = 4; //for now, just to keep sanity, adjust later 
    338338