Heyas everyone,
I'm in the process of organising to have my very first contribution to CPAN
uploaded and see that it may be prudent to ask for feedback on the names I
currently have, especially as it is claiming a top-level name!
I'm very open to suggestions, though I do hope these are okay!
--------
Currently, I have the following modules:
OpenHMD
Utilising Inline::C, this module provides a binding to the
OpenHMD C
library (http://openhmd.net/), intended to be a very thin
wrapper
(i.e. behave as closely as possible to the C library).
OpenHMD::Simple
Utilising the OpenHMD module (above), this provides a *very*
simple
OO interface to OpenHMD, letting you use the library with very
few
methods (just 3) in the simplest case of a known device index,
such as the default device, 0).
my $openhmd = OpenHMD::Simple->new(0);
while (1) {
$openhmd->update;
my $state = $openhmd->state;
}
In the near future I will also be creating:
OpenHMD::Context
OpenHMD::Device
These are the fully fleshed out OO interfaces, providing
individual
methods for everything and allowing proper use of the library
in a OO
manner. These would utilise the OpenHMD module above and
OpenHMD::Simple would be migrated to using these instead of
OpenHMD
directly.
In the more distant future, I'd like to make:
OpenHMD::Backend::Inline
OpenHMD::Backend::XS
I'd like to convert OpenHMD to be a "frontend" module that
allows the
use of multiple possible backends (Inline, XS, ... PP?).
--------
I'm not sure if it matters at all, but I checked with the lead OpenHMD
developers and they have given their blessing for me to use the 'OpenHMD'
namespace (they have been very supportive of my efforts, even
regarding me as part
of the team). They can be contacted in #openhmd on freenode to confirm.
Thanks for your time, I hope these names are acceptable and that you
have a nice day!
Regards,
CandyAngel