getNumCConverters package:base R Documentation _M_a_n_a_g_e_m_e_n_t _o_f ._C _a_r_g_u_m_e_n_t _c_o_n_v_e_r_s_i_o_n _l_i_s_t _D_e_s_c_r_i_p_t_i_o_n: These functions provide facilities to manage the extensible list of converters used to translate R objects to C pointers for use in '.C' calls. The number and a description of each element in the list can be retrieved. One can also query and set the activity status of individual elements, temporarily ignoring them. And one can remove individual elements. _U_s_a_g_e: getNumCConverters() getCConverterDescriptions() getCConverterStatus() setCConverterStatus(id, status) removeCConverter(id) _A_r_g_u_m_e_n_t_s: id: either a number or a string identifying the element of interest in the converter list. A string is matched against the description strings for each element to identify the element. Integers are specified starting at 1 (rather than 0). status: a logical value specifying whether the element is to be considered active ('TRUE') or not ('FALSE'). _D_e_t_a_i_l_s: The internal list of converters is potentially used when converting individual arguments in a '.C' call. If an argument has a non-trivial class attribute, we iterate over the list of converters looking for the first that matches. If we find a matching converter, we have it create the C-level pointer corresponding to the R object. When the call to the C routine is complete, we use the same converter for that argument to reverse the conversion and create an R object from the current value in the C pointer. This is done separately for all the arguments. The functions documented here provide R user-level capabilities for investigating and managing the list of converters. There is currently no mechanism for adding an element to the converter list within the R language. This must be done in C code using the routine 'R_addToCConverter()'. _V_a_l_u_e: 'getNumCConverters' returns an integer giving the number of elements in the list, both active and inactive. 'getCConverterDescriptions' returns a character vector containing the description string of each element of the converter list. 'getCConverterStatus' returns a logical vector with a value for each element in the converter list. Each value indicates whether that converter is active ('TRUE') or inactive ('FALSE'). The names of the elements are the description strings returned by 'getCConverterDescriptions'. 'setCConverterStatus' returns the logical value indicating the activity status of the specified element before the call to change it took effect. This is 'TRUE' for active and 'FALSE' for inactive. 'removeCConverter' returns 'TRUE' if an element in the converter list was identified and removed. In the case that no such element was found, an error occurs. _A_u_t_h_o_r(_s): Duncan Temple Lang _R_e_f_e_r_e_n_c_e_s: _S_e_e _A_l_s_o: '.C' _E_x_a_m_p_l_e_s: getNumCConverters() getCConverterDescriptions() getCConverterStatus() ## Not run: old <- setCConverterStatus(1, FALSE) setCConverterStatus(1, old) ## End(Not run) ## Not run: removeCConverter(1) removeCConverter(getCConverterDescriptions()[1]) ## End(Not run)