If we write a extend C, we can use #include <TH/TH.h> and#include <THC/THC.h>
Can we call the “function” just like the THCUNN abs.c does
void THNN_(Abs_updateOutput)(
           THCState *state,
           THCTensor *input,
           THCTensor *output)
{
  THCUNN_assertSameGPU(state, 2, input, output);
  THCTensor_(resizeAs)(state, output, input);
  THC_pointwiseApply2(state, output, input, absupdateOutput_functor<real>());
}

I rewrite the abs as a extend C (just for example):
#include <THC/THC.h>
extern THCState *state;
int abs_forward_gpu(THCudaTensor *input, THCudaTensor *output)
{
//    THCUNN_assertSameGPU(state, 2, input, output);
    THCudaTensor_resizeAs(state, output, input);
    THC_pointwiseApply2(state, output, input, absupdateOutput_functor());
}

And it seems can not include the file <THCApply.cuh>
Maybe, it is silly to ask this question (we can “copy” the form like THC_pointwiseApply2 in this .c file). However, I want to know is there a method to call the function in the libarary which is not in #include <THC/THC.h> and <TH/TH.h>
thank you advance~