1 #ifndef __JEEP__JFUNCTIONADAPTOR__
2 #define __JEEP__JFUNCTIONADAPTOR__
19 namespace JPP {
using namespace JEEP; }
54 return (
function != NULL);
89 void open(
const char* file_name)
93 handle = dlopen(file_name, RTLD_LAZY);
131 string file_name, function_name;
133 if (in >> file_name >> function_name) {
135 object.open(file_name.c_str());
137 object.get(function_name.c_str());
197 const char* function_name) :
201 this->
open(file_name);
203 this->
get(function_name);
212 void get(
const char* function_name)
220 function = (pF) dlsym(
handle, function_name);
222 const char* error = dlerror();
242 template<
class JReturn_t =
void,
class JFirst_t =
void,
class JSecond_t =
void>
249 template<
class JReturn_t,
class JFirst_t>
256 typedef JReturn_t (*pF)(JFirst_t);
294 const char* function_name) :
307 return this->
function(
first);
315 template<
class JReturn_t,
class JFirst_t,
class JSecond_t>
322 typedef JReturn_t (*pF)(JFirst_t, JSecond_t);
360 const char* function_name) :
374 return this->
function(
first, second);
JFunctionAdaptorHelper(const char *file_name, const char *function_name)
Constructor.
Exception for opening of file.
Exception for reading of file.
void set(pF pf)
Set function.
Auxiliary base class for function adaptor.
void open(const char *file_name)
Open file.
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
void attach(const JSharedCounter &object)
Attach this counter to given shared counter object.
JFunctionAdaptor()
Default constructor.
virtual ~JFunctionAdaptorHelper()
Virtual destructor.
void reset()
Reset function adaptor helper.
JFunctionAdaptor()
Default constructor.
bool is_valid() const
Check validity.
JFunctionAdaptor(const JFunctionAdaptor &adaptor)
Copy constructor.
JReturn_t operator()(JFirst_t first) const
Function operation.
JFunctionAdaptorHelper(const JFunctionAdaptorHelper &helper)
Copy constructor.
then echo The file $DIR KM3NeT_00000001_00000000 root already please rename or remove it first
JFunctionAdaptor(const char *file_name, const char *function_name)
Constructor.
JFunctionAdaptor(const JFunctionAdaptor &adaptor)
Copy constructor.
Auxiliary class for no type definition.
JFunctionAdaptorHelper(pF pf)
Constructor.
JFunctionAdaptorHelper()
Default constructor.
JFunctionAdaptor(const char *file_name, const char *function_name)
Constructor.
void initialise()
Initialise counter.
JFunctionAdaptor(pF pf)
Constructor.
friend std::ostream & operator<<(std::ostream &out, const JFunctionAdaptorHelper &object)
Write function adaptor helper to output stream.
JFunctionAdaptor(pF pf)
Constructor.
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY source JAcoustics sh $DETECTOR_ID typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
friend std::istream & operator>>(std::istream &in, JFunctionAdaptorHelper &object)
Read function adaptor helper from input stream.
JReturn_t operator()(JFirst_t first, JSecond_t second) const
Function operation.