ESYS13  Revision_
Dodgy.h
Go to the documentation of this file.
00001 
00002 /*******************************************************
00003 *
00004 * Copyright (c) 2009-2012 by University of Queensland
00005 * Earth Systems Science Computational Center (ESSCC)
00006 * http://www.uq.edu.au/esscc
00007 *
00008 * Primary Business: Queensland, Australia
00009 * Licensed under the Open Software License version 3.0
00010 * http://www.opensource.org/licenses/osl-3.0.php
00011 *
00012 *******************************************************/
00013 
00014 #ifndef ES_DODGY_H
00015 #define ES_DODGY_H
00016 
00017 // This file contains functions which do bad things like violate the C standard
00018 // Functions in here should not go into general use and should only be used on
00019 // systems where the users are willing to accept responsibility for things working.
00020 
00021 // Do not add functions here without explaining why they are problematic
00022 
00023 namespace escript
00024 {
00025 // first param is output, next two are input data1 and2 the 3 ints are the size [in doubles] 
00026 // of the first three params in order
00027 typedef int (*binOpFnPtr)(double*, const double*, const double*, int, int, int);
00028 
00037 binOpFnPtr binOpFnPtrFromVoidPtr(void* v);
00038 
00042 void* voidPtrFromBinOpFnPtr(binOpFnPtr f);
00043 
00044 }
00045 
00046 #endif