Commit Graph

2 Commits (f396e3165f8fe0c802840d93b6f39b5584e9c259)

Author SHA1 Message Date
Christopher Haster f396e3165f Added improved FuncPtr type
FuncPtr provides a more flexible templated function class as a
replacement for FunctionPointer.

FuncPtr provides an intuitive template interface:

void doit(int, char *);
FuncPtr<void(int, char *)> doit_ptr(doit);
doit_ptr(10, "hi!");

FuncPtr places memory management on the user, only supporting
storing an extra pointer for pointers to externally stored objects
that can be passed to the function. Additional binding can be
supplied by an external class.

FuncPtr<void(int)> hello(&object, &Object::method);

Additionally FuncPtr provides a copy constructor, allowing FuncPtrs
themselves to be passed to existing interfaces.

FuncPtr<void()> hello(doit); ticker.attach(hello, 1000);
2016-04-06 08:01:28 -05:00
Bogdan Marinescu 3feff63592 Preparing new layout - moved hal+mbed-drivers to ./hal 2016-04-05 16:26:29 +01:00