Rcpp Version 0.9.10
routines.h
Go to the documentation of this file.
00001 // -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*-
00002 //
00003 // routines.h: Rcpp R/C++ interface class library -- .Call exported routines
00004 //
00005 // Copyright (C) 2010 - 2011 John Chambers, Dirk Eddelbuettel and Romain Francois
00006 //
00007 // This file is part of Rcpp.
00008 //
00009 // Rcpp is free software: you can redistribute it and/or modify it
00010 // under the terms of the GNU General Public License as published by
00011 // the Free Software Foundation, either version 2 of the License, or
00012 // (at your option) any later version.
00013 //
00014 // Rcpp is distributed in the hope that it will be useful, but
00015 // WITHOUT ANY WARRANTY; without even the implied warranty of
00016 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017 // GNU General Public License for more details.
00018 //
00019 // You should have received a copy of the GNU General Public License
00020 // along with Rcpp.  If not, see <http://www.gnu.org/licenses/>.
00021 
00022 #ifndef Rcpp__routines_h
00023 #define Rcpp__routines_h
00024 
00025 #define CALLFUN_0(name) SEXP name()
00026 #define CALLFUN_1(name) SEXP name(SEXP)
00027 #define CALLFUN_2(name) SEXP name(SEXP,SEXP)
00028 #define CALLFUN_3(name) SEXP name(SEXP,SEXP,SEXP)
00029 #define CALLFUN_4(name) SEXP name(SEXP,SEXP,SEXP,SEXP)
00030 #define CALLFUN_5(name) SEXP name(SEXP,SEXP,SEXP,SEXP,SEXP)
00031 #define EXTFUN(name) SEXP name(SEXP)
00032 
00033 // we have to do the ifdef __cplusplus dance because this file
00034 // is included both in C and C++ files
00035 #ifdef __cplusplus
00036 extern "C" {
00037 #endif
00038 
00039 CALLFUN_1(as_character_externalptr) ;
00040 
00041 CALLFUN_3(CppField__get);
00042 CALLFUN_4(CppField__set);
00043 CALLFUN_1(Class__name);
00044 CALLFUN_1(Class__has_default_constructor) ;
00045 CALLFUN_1(CppClass__complete);
00046 CALLFUN_1(CppClass__methods);
00047 
00048 CALLFUN_1(Module__classes_info) ;
00049 CALLFUN_1(Module__complete) ;
00050 CALLFUN_1(Module__functions_arity);
00051 CALLFUN_1(Module__functions_names);
00052 CALLFUN_2(Module__get_class);
00053 CALLFUN_2(Module__has_class);
00054 CALLFUN_2(Module__has_function);
00055 CALLFUN_2(Module__get_function);
00056 CALLFUN_1(Module__name);
00057 CALLFUN_2(CppObject__finalize);
00058 
00059 CALLFUN_0(get_rcpp_cache);
00060 CALLFUN_0(init_Rcpp_cache);
00061 CALLFUN_0(reset_current_error);
00062 CALLFUN_1(rcpp_error_recorder);
00063 CALLFUN_1(rcpp_set_current_error);
00064 CALLFUN_0(rcpp_get_current_error);
00065 CALLFUN_1(rcpp_set_error_occured);
00066 CALLFUN_0(rcpp_get_error_occured);
00067 CALLFUN_1(rcpp_set_stack_trace);
00068 CALLFUN_0(rcpp_get_stack_trace);
00069 
00070 
00071 /* .External functions */
00072 EXTFUN(CppMethod__invoke) ;
00073 EXTFUN(CppMethod__invoke_void) ;
00074 EXTFUN(CppMethod__invoke_notvoid) ;
00075 EXTFUN(InternalFunction_invoke) ;
00076 EXTFUN(Module__invoke) ;
00077 EXTFUN(class__newInstance) ;
00078 EXTFUN(class__dummyInstance) ;
00079 
00080 #ifdef __cplusplus
00081 }
00082 #endif
00083 
00084 #undef CALLFUN_0
00085 #undef CALLFUN_1
00086 #undef CALLFUN_2
00087 #undef CALLFUN_3
00088 #undef CALLFUN_4
00089 #undef CALLFUN_5
00090 
00091 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerator Friends Defines