All Downloads are FREE. Search and download functionalities are using the official Maven repository.

st.interfaceWrapping.IDL2CPLWRAPPER.stc Maven / Gradle / Ivy

template st.interfaceWrapping.IDL2CPLWRAPPER : st.interfaces.IDL2C{
  $${

/**
 * Copyright (C) 2010 France Telecom
 *
 * This file is part of "Mind Compiler" is free software: you can redistribute 
 * it and/or modify it under the terms of the GNU Lesser General Public License 
 * as published by the Free Software Foundation, either version 3 of the 
 * License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT 
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
 * details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program.  If not, see .
 *
 * Contact: [email protected]
 *
 * Authors: Matthieu ANNE
 * Contributors:
 */  

/** 
 * Generates a ".c" wrapper file.
 */
 
cplFile(idl,itfName,dualMeths) ::= <<
/* This file is a generated file, do not edit. */

};separator="\n">
 
};separator="\n\n">
>>

externPrototype(method, dualMeths) ::= <<

extern ;

extern ;

>>

dualMethPrototype(name, parameters) ::= <<
(, va_list param_list)
>>

wrapMethod(itfName, method, dualMeths) ::= <<

{
;
va_list paramList;
va_start(paramList, );
ret = (, paramList);
va_end(paramList);
return ret;

{

return ;


}
>>

methDef(itfName, method, vaArgs) ::= <<

>>

methodSignature(itfName, name, parameters, vaArgs) ::= <<
METH(, )(
 , ...

 ...

void

)
>>

fctCall(method) ::= <<
()
>>

  }$$
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy