1 /* ------------------------------------------------------------------ 2 * Copyright (C) 1998-2009 PacketVideo 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 13 * express or implied. 14 * See the License for the specific language governing permissions 15 * and limitations under the License. 16 * ------------------------------------------------------------------- 17 */ 18 #ifndef STRINGABLE_H 19 #define STRINGABLE_H 20 21 #include "unit_test_common.h" 22 23 class stringable 24 { 25 public: 26 virtual _STRING to_string(void) const = 0; ~stringable()27 virtual ~stringable() {} 28 }; 29 30 template< class TT > 31 inline valueToString(const TT &)32_STRING valueToString(const TT &) 33 { 34 return "<value not stringable>"; 35 } 36 37 inline valueToString(const bool & value)38_STRING valueToString(const bool & value) 39 { 40 return (true == value) ? "true" : "false"; 41 } 42 43 inline valueToString(const int & value)44_STRING valueToString(const int & value) 45 { 46 char buffer[32]; 47 sprintf(buffer, "%d", value); 48 return buffer; 49 } 50 51 #endif 52