1*b55407b6SBarry Smith /* 2*b55407b6SBarry Smith * $Header: /home/tv/src/debugger/src/datadisp/tv_data_display.h,v 1.3 2010-04-21 15:32:50 tringali Exp $ 3*b55407b6SBarry Smith * $Locker: $ 4*b55407b6SBarry Smith 5*b55407b6SBarry Smith Copyright (c) 2010, Rogue Wave Software, Inc. 6*b55407b6SBarry Smith 7*b55407b6SBarry Smith Permission is hereby granted, free of charge, to any person obtaining a copy 8*b55407b6SBarry Smith of this software and associated documentation files (the "Software"), to deal 9*b55407b6SBarry Smith in the Software without restriction, including without limitation the rights 10*b55407b6SBarry Smith to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11*b55407b6SBarry Smith copies of the Software, and to permit persons to whom the Software is 12*b55407b6SBarry Smith furnished to do so, subject to the following conditions: 13*b55407b6SBarry Smith 14*b55407b6SBarry Smith The above copyright notice and this permission notice shall be included in 15*b55407b6SBarry Smith all copies or substantial portions of the Software. 16*b55407b6SBarry Smith 17*b55407b6SBarry Smith THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18*b55407b6SBarry Smith IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19*b55407b6SBarry Smith FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20*b55407b6SBarry Smith AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21*b55407b6SBarry Smith LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22*b55407b6SBarry Smith OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23*b55407b6SBarry Smith THE SOFTWARE. 24*b55407b6SBarry Smith 25*b55407b6SBarry Smith * Update log 26*b55407b6SBarry Smith * 27*b55407b6SBarry Smith * Sep 25 2009 SJT: Add idempotence header. 28*b55407b6SBarry Smith * Jul 1 2009 SJT: Created. 29*b55407b6SBarry Smith * 30*b55407b6SBarry Smith */ 31*b55407b6SBarry Smith 32*b55407b6SBarry Smith #ifndef TV_DATA_DISPLAY_H_INCLUDED 33*b55407b6SBarry Smith #define TV_DATA_DISPLAY_H_INCLUDED 1 34*b55407b6SBarry Smith 35*b55407b6SBarry Smith #ifdef __cplusplus 36*b55407b6SBarry Smith extern "C" { 37*b55407b6SBarry Smith #endif 38*b55407b6SBarry Smith 39*b55407b6SBarry Smith enum TV_format_result 40*b55407b6SBarry Smith { 41*b55407b6SBarry Smith TV_format_OK, /* Type is known, and successfully converted */ 42*b55407b6SBarry Smith TV_format_failed, /* Type is known, but could not convert it */ 43*b55407b6SBarry Smith TV_format_raw, /* Just display it as a regular type for now */ 44*b55407b6SBarry Smith TV_format_never /* Don't know about this type, and please don't ask again */ 45*b55407b6SBarry Smith }; 46*b55407b6SBarry Smith 47*b55407b6SBarry Smith #define TV_ascii_string_type "$string" 48*b55407b6SBarry Smith #define TV_int_type "$int" 49*b55407b6SBarry Smith 50*b55407b6SBarry Smith extern int TV_add_row(const char *field_name, 51*b55407b6SBarry Smith const char *type_name, 52*b55407b6SBarry Smith const void *value); 53*b55407b6SBarry Smith 54*b55407b6SBarry Smith /* 55*b55407b6SBarry Smith 0: Success 56*b55407b6SBarry Smith EPERM: Called with no active callback to TV_display_type 57*b55407b6SBarry Smith EINVAL: field_name or type_name has illegal characters 58*b55407b6SBarry Smith ENOMEM: No more room left for display data 59*b55407b6SBarry Smith */ 60*b55407b6SBarry Smith 61*b55407b6SBarry Smith #ifdef __cplusplus 62*b55407b6SBarry Smith } 63*b55407b6SBarry Smith #endif 64*b55407b6SBarry Smith 65*b55407b6SBarry Smith #endif 66