TotalView Reference Guide : Part I: CLI Commands : Creating Type Transformations : C++View : Memory Management
Memory Management
You must make sure that the formatted data you want displayed by TotalView (the data whose address you supply as the third parameter to TV_ttf_add_row) remains allocated after the call to your TV_ttf_display_type returns. In practice this means that you shouldn't allocate these data on the stack. Your TV_ttf_display_type function may be called at anytime, including when your target program may be in the memory manager. For this reason it is inadvisable to allocate or deallocate dynamic memory in your TV_ttf_display_type functions. If the formatted data are manufactured, that is, generated by TV_ttf_display_type rather than already existing, then the memory for those data should be allocated during the target's normal course of execution.
You may find it convenient to have your program format data as part of its normal operations.That way there are no side-effects to worry about when TotalView calls your TV_ttf_display_type callback function.
The field_name and type_name string parameters to TV_ttf_add_row do not need to remain allocated after the call to TV_ttf_add_row.