The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Device::Velleman::K8055::Server - IPCS Server for the K8055 Device

SYNOPSIS

  use Device::Velleman::K8055::Server;
  
  my $server = Device::Velleman::K8055::Server->new();

DESCRIPTION

Sets up a server that handles all communication with the K8055 device. Communicates with clients through shared memory.

USAGE

Example of a daemon that initiates the server:

        use Device::Velleman::K8055::Server;
        use Proc::Daemon;
        use Tie::Hash;
        
        $SIG{HUP} = 'shutdown';
        
        
        foreach my $argnum (0 .. $#ARGV) {
        
                if( $ARGV[$argnum] eq '--debug' ) {
                        $debug=1;
                }
                if( $ARGV[$argnum] eq '--nodaemon' ) {
                        $nodaemon=1;
                }
                
                if( $ARGV[$argnum] eq '--server' ) {
                        $server=1;
                }
                
        }
        
        
        if($server) {
                print "Running Server\n";
                server();
        }
        
        
        sub server {
                #Run as Daemon unless -nodaemon passed.
                unless( $nodaemon ) {
                        print "Running as daemon.\n";
                        Proc::Daemon::Init;
                }
                my $server = K8055::Server->new();
                $server->run;
        }
        
        
        
        sub shutdown {
                $server->cleanup();
                exit;
        }

BUGS

Many.

SUPPORT

AUTHOR

    David Peters
    CPAN ID: DAVIDP
    davidp@electronf.com
    http://www.electronf.com

COPYRIGHT

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.

SEE ALSO

Device::Velleman::K8055::Client, Device::Velleman::libk8055, perl(1).