NAME

Music::AirGuitar - Interface for air guitars

VERSION

version v0.02

SYNOPSIS

use Music::AirGuitar;

my Music::AirGuitar $guitar = Music::AirGuitar->new(...);

METHODS

new

my Music::AirGuitar $guitar = Music::AirGuitar->new(...);

Creates a new instance of an air guitar.

This constructor supports the following options, please see their getters for details: "displayname", "player", "strings", "keys".

perform

my Music::AirGuitar::Performance $performance = $guitar->perform(%opts);

Go on a performance with this guitar.

Returns a Music::AirGuitar::Performance.

The following options are supported:

duration

The duration of the performance. As a number of seconds or as a string in form [HH:]MM:SS. The default is 5:55 (the length of Bohemian Rhapsody).

GETTERS

All getters return the value as given to the constructor (unless otherwise given). If no value is available they die.

All getters support setting the option default to a default value that is used if non is available. This can be set to undef to switch the getter from dieing to returning undef.

displayname

my $displayname = $guitar->displayname(%opts);

This returns the displayname of the guitar.

Supported types: string.

Default: none. (Subject to change!)

player

my $player = $guitar->player(%opts);

This is the player (or performer) of the guitar.

Supported types: string, Data::Identifier, Data::TagDB::Tag, and Data::URIID::Base.

Default: none. (Subject to change!)

strings

my $strings = $guitar->strings(%opts);

The number of strings the guitar has.

Supported types: non-negative integer.

Default: 6.

keys

my $keys = $guitar->keys(%opts);

The number of keys the guitar has. If it has keys it is a Keytar. Most don't.

Supported types: non-negative integer.

Default: 0.

BUGS

Someone might consider this module helpful.

AUTHOR

Löwenfelsen UG (haftungsbeschränkt) <support@loewenfelsen.net>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2025 by Löwenfelsen UG (haftungsbeschränkt) <support@loewenfelsen.net>.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)