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

NAME

Net::SinFP3 - more than OS fingerprinting unification

SYNOPSIS

   use Net::SinFP3;

   my $sinfp = Net::SinFP3->new(
      global => $global,
      input  => [ $input  ],
      db     => [ $db     ],
      mode   => [ $mode   ],
      search => [ $search ],
      output => [ $output ],
   );

   $sinfp->run;

DESCRIPTION

This is the main starting point to run Net::SinFP3 plugins. It includes a main run loop, which will launch various plugins in this specific order:

   input > next > db > mode > search > output

This loop is ran against Net::SinFP3::Next objects as returned by Net::SinFP3::Input objects.

These attributes are passed as arrayref, so you will be able to launch multiple plugin of different types successively. Plugins have a base class which is one of:

  input:  Net::SinFP3::Input
  db:     Net::SinFP3::DB
  mode:   Net::SinFP3::Mode
  search: Net::SinFP3::Search
  output: Net::SinFP3::Output

The global attribute is an object which is passed to all modules. It contains global variables, and pointers to currently running plugins. See Net::SinFP3::Global.

ATTRIBUTES

global (Net::SinFP3::Global)

The global object containing global parameters and pointers to currently executing plugins.

input ([ Net::SinFP3::Input, ... ])

Arrayref of Net::SinFP3::Input objects.

db ([ Net::SinFP3::DB, ... ])

Arrayref of Net::SinFP3::DB objects.

mode ([ Net::SinFP3::Mode, ... ])

Arrayref of Net::SinFP3::Mode objects.

search ([ Net::SinFP3::Search, ... ])

Arrayref of Net::SinFP3::Search objects.

output ([ Net::SinFP3::Output, ... ])

Arrayref of Net::SinFP3::Output objects.

METHODS

new (%h)

Object constructor. You must give it the following attributes: global, input, db, mode, search, output.

run ()

To use when you are ready to launch the main loop.

AUTHOR

Patrice <GomoR> Auffret

COPYRIGHT AND LICENSE

Copyright (c) 2011-2015, Patrice <GomoR> Auffret

You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.