| 5 | |
| 6 | void UI_DBG (const Setting &S, const string &spc, ostream &out =cout){ |
| 7 | const char *Name=S.getName(); |
| 8 | if ( Name!=NULL ) {out << spc << std::string ( Name );}; |
| 9 | Setting::Type T=S.getType(); |
| 10 | switch ( T ) { |
| 11 | case Setting::TypeArray: |
| 12 | out << endl; |
| 13 | for ( int i=0;i<S.getLength();i++ ) {UI_DBG ( S[i], spc+" ", out);}; |
| 14 | break; |
| 15 | case Setting::TypeList: |
| 16 | out << endl; |
| 17 | for ( int i=0;i<S.getLength();i++ ) {UI_DBG ( S[i], spc+" ", out );}; |
| 18 | break; |
| 19 | case Setting::TypeGroup: |
| 20 | out << endl; |
| 21 | for ( int i=0;i<S.getLength();i++ ) {UI_DBG ( S[i], spc+" ", out );} |
| 22 | break; |
| 23 | case Setting::TypeInt: |
| 24 | out << " = "; |
| 25 | out << int ( S ) <<endl; |
| 26 | break; |
| 27 | case Setting::TypeFloat: |
| 28 | out << " = "; |
| 29 | out << double ( S ) <<endl; |
| 30 | break; |
| 31 | case Setting::TypeString: |
| 32 | out << " = "; |
| 33 | out << ( const char* ) ( S ) <<endl; |
| 34 | break; |
| 35 | case Setting::TypeBoolean: |
| 36 | out << " = "; |
| 37 | out << bool ( S ) <<endl; |
| 38 | break; |
| 39 | default: {out << "?";}; |
| 40 | }; |
| 41 | } |
| 42 | |