Changeset 11018 for OpenSceneGraph/trunk/include/osgDB/Serializer
- Timestamp:
- 01/27/10 18:09:05 (3 years ago)
- Files:
-
- 1 modified
-
OpenSceneGraph/trunk/include/osgDB/Serializer (modified) (19 diffs)
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/include/osgDB/Serializer
r11002 r11018 138 138 { 139 139 C& object = OBJECT_CAST<C&>(obj); 140 if ( !is.isBinary() && !is.matchString(_name) ) 141 return true; 140 if ( is.isBinary() ) 141 { 142 bool ok = false; is >> ok; 143 if ( !ok ) return true; 144 } 145 else 146 { 147 if ( !is.matchString(_name) ) 148 return true; 149 } 142 150 return (*_reader)(is, object); 143 151 } … … 146 154 { 147 155 const C& object = OBJECT_CAST<const C&>(obj); 148 if ( !os.isBinary() ) 149 { 150 if ( !(*_checker)(object) ) return true; 151 os << _name; 156 bool ok = (*_checker)(object); 157 if ( os.isBinary() ) 158 { 159 os << ok; 160 if ( !ok ) return true; 161 } 162 else 163 { 164 if ( !ok ) return true; 165 os << PROPERTY(_name.c_str()); 152 166 } 153 167 return (*_writer)(os, object); … … 159 173 std::string _name; 160 174 Checker _checker; 175 176 public: 161 177 Reader _reader; 162 178 Writer _writer; … … 220 236 else if ( ParentType::_defaultValue!=(object.*_getter)() ) 221 237 { 222 os << P arentType::_name;238 os << PROPERTY((ParentType::_name).c_str()); 223 239 if ( _useHex ) os << std::hex; 224 240 os << (object.*_getter)(); … … 229 245 } 230 246 231 p rotected:247 public: 232 248 Getter _getter; 233 249 Setter _setter; 250 251 protected: 234 252 bool _useHex; 235 253 }; … … 275 293 else if ( ParentType::_defaultValue!=(object.*_getter)() ) 276 294 { 277 os << P arentType::_name<< (object.*_getter)() << std::endl;278 } 279 return true; 280 } 281 282 p rotected:295 os << PROPERTY((ParentType::_name).c_str()) << (object.*_getter)() << std::endl; 296 } 297 return true; 298 } 299 300 public: 283 301 Getter _getter; 284 302 Setter _setter; … … 324 342 else if ( ParentType::_defaultValue!=(object.*_getter)() ) 325 343 { 326 os << P arentType::_name<< (object.*_getter)() << std::endl;344 os << PROPERTY((ParentType::_name).c_str()) << (object.*_getter)() << std::endl; 327 345 } 328 346 return true; … … 344 362 } 345 363 364 public: 346 365 Getter _getter; 347 366 Setter _setter; … … 386 405 else if ( ParentType::_defaultValue!=(object.*_getter)() ) 387 406 { 388 os << P arentType::_name<< GLENUM((object.*_getter)()) << std::endl;389 } 390 return true; 391 } 392 393 p rotected:407 os << PROPERTY((ParentType::_name).c_str()) << GLENUM((object.*_getter)()) << std::endl; 408 } 409 return true; 410 } 411 412 public: 394 413 Getter _getter; 395 414 Setter _setter; … … 436 455 else if ( ParentType::_defaultValue!=(object.*_getter)() ) 437 456 { 438 os << P arentType::_name;457 os << PROPERTY((ParentType::_name).c_str()); 439 458 os.writeWrappedString( (object.*_getter)() ); 440 459 os << std::endl; … … 443 462 } 444 463 445 p rotected:464 public: 446 465 Getter _getter; 447 466 Setter _setter; … … 499 518 else if ( ParentType::_defaultValue!=(object.*_getter)() ) 500 519 { 501 os << P arentType::_name<< hasObject;520 os << PROPERTY((ParentType::_name).c_str()) << hasObject; 502 521 if ( hasObject ) 503 522 { … … 511 530 } 512 531 513 p rotected:532 public: 514 533 Getter _getter; 515 534 Setter _setter; … … 567 586 else if ( ParentType::_defaultValue!=(object.*_getter)() ) 568 587 { 569 os << P arentType::_name<< hasObject;588 os << PROPERTY((ParentType::_name).c_str()) << hasObject; 570 589 if ( hasObject ) 571 590 { … … 579 598 } 580 599 581 p rotected:600 public: 582 601 Getter _getter; 583 602 Setter _setter; … … 632 651 else if ( ParentType::_defaultValue!=(object.*_getter)() ) 633 652 { 634 os << P arentType::_name<< getString((object.*_getter)()) << std::endl;635 } 636 return true; 637 } 638 639 p rotected:653 os << PROPERTY((ParentType::_name).c_str()) << getString((object.*_getter)()) << std::endl; 654 } 655 return true; 656 } 657 658 public: 640 659 Getter _getter; 641 660 Setter _setter; 661 662 protected: 642 663 IntLookup _lookup; 643 664 }; … … 707 728 else if ( size>0 ) 708 729 { 709 os << P arentType::_name<< size << BEGIN_BRACKET << std::endl;730 os << PROPERTY((ParentType::_name).c_str()) << size << BEGIN_BRACKET << std::endl; 710 731 for ( ConstIterator itr=list.begin(); 711 732 itr!=list.end(); ++itr ) … … 718 739 } 719 740 720 p rotected:741 public: 721 742 Getter _getter; 722 743 Setter _setter; … … 846 867 847 868 #define END_ENUM_SERIALIZER() \ 848 wrapper->addSerializer(serializer .get()); }869 wrapper->addSerializer(serializer); } 849 870 850 871
