FireVisionNetworkTool Class Reference

FireVision Network Tool. More...

Inheritance diagram for FireVisionNetworkTool:

List of all members.


Public Member Functions

 FireVisionNetworkTool (ArgumentParser *argp)
 Constructor.
void fuse_invalid_server_version (uint32_t local_version, uint32_t remote_version) throw ()
 Invalid version string received.
virtual void fuse_connection_established () throw ()
 Connection has been established.
virtual void fuse_connection_died () throw ()
 Connection died.
virtual void fuse_inbound_received (FuseNetworkMessage *m) throw ()
 Message received.
virtual void all_for_now ()
 All results have been retrieved.
virtual void cache_exhausted ()
 Cache exhausted.
virtual void browse_failed (const char *name, const char *type, const char *domain)
 Failed to browse for a given service.
virtual void service_added (const char *name, const char *type, const char *domain, const char *host_name, const struct sockaddr *addr, const socklen_t addr_size, uint16_t port, std::list< std::string > &txt, int flags)
 A service has been announced on the network.
virtual void service_removed (const char *name, const char *type, const char *domain)
 A service has been removed from the network.
void print_usage ()
 Print usage message.
void get_image (const char *image_id, bool jpeg)
 Request image.
void get_colormap (const char *lut_id)
 Request LUT.
void set_colormap (const char *lut_id)
 Upload LUT.
void show_all ()
 Show all images and LUTs.
void explore_network ()
 Explore network.
void run ()
 Run.

Detailed Description

FireVision Network Tool.

Definition at line 57 of file net.cpp.


Constructor & Destructor Documentation

FireVisionNetworkTool::FireVisionNetworkTool ( ArgumentParser argp  )  [inline]

Constructor.

Parameters:
argp argument parser

Definition at line 65 of file net.cpp.


Member Function Documentation

virtual void FireVisionNetworkTool::all_for_now (  )  [inline, virtual]

All results have been retrieved.

If you read the DNS-SD specs you will see that there is no explicit "not existent" or "end of records" message - it cannot be. But after some time it is assumed that there are no more records. If that is the case this method is called.

Implements fawkes::ServiceBrowseHandler.

Definition at line 229 of file net.cpp.

References fawkes::Mutex::lock(), fawkes::Mutex::unlock(), and fawkes::WaitCondition::wake_all().

virtual void FireVisionNetworkTool::browse_failed ( const char *  name,
const char *  type,
const char *  domain 
) [inline, virtual]

Failed to browse for a given service.

Parameters:
name name of the service
type type of the service
domain domain of the service

Implements fawkes::ServiceBrowseHandler.

Definition at line 241 of file net.cpp.

virtual void FireVisionNetworkTool::cache_exhausted (  )  [inline, virtual]

Cache exhausted.

Implements fawkes::ServiceBrowseHandler.

Definition at line 237 of file net.cpp.

void FireVisionNetworkTool::explore_network (  )  [inline]

Explore network.

This will query via service discovery for all Fountain instances on the local network. It will then connect to each of these and query them for existing images and lookup tables.

Definition at line 367 of file net.cpp.

References fawkes::Mutex::lock(), fawkes::Mutex::unlock(), and fawkes::WaitCondition::wait().

Referenced by run().

virtual void FireVisionNetworkTool::fuse_connection_died (  )  throw () [inline, virtual]

Connection died.

Implements FuseClientHandler.

Definition at line 86 of file net.cpp.

virtual void FireVisionNetworkTool::fuse_connection_established (  )  throw () [inline, virtual]

Connection has been established.

Implements FuseClientHandler.

Definition at line 81 of file net.cpp.

void FireVisionNetworkTool::fuse_invalid_server_version ( uint32_t  local_version,
uint32_t  remote_version 
) throw () [inline, virtual]

Invalid version string received.

The remote end has a different incompatible FUSE version.

Parameters:
local_version version that the FuseClient speaks
remote_version version that the remote FUSE server speaks.

Implements FuseClientHandler.

Definition at line 73 of file net.cpp.

void FireVisionNetworkTool::get_colormap ( const char *  lut_id  )  [inline]

Request LUT.

Parameters:
lut_id LUT ID.

Definition at line 328 of file net.cpp.

References FuseClient::enqueue(), and FUSE_lutdesc_message_t::lut_id.

Referenced by run().

void FireVisionNetworkTool::get_image ( const char *  image_id,
bool  jpeg 
) [inline]

Request image.

Parameters:
image_id Image ID.
jpeg if true JPEG images are requested, raw images otherwise

Definition at line 315 of file net.cpp.

References FuseClient::enqueue(), FUSE_imagereq_message_t::format, and FUSE_imagereq_message_t::image_id.

Referenced by run().

void FireVisionNetworkTool::print_usage (  )  [inline]

Print usage message.

Definition at line 291 of file net.cpp.

References fawkes::ArgumentParser::program_name().

Referenced by run().

virtual void FireVisionNetworkTool::service_added ( const char *  name,
const char *  type,
const char *  domain,
const char *  host_name,
const struct sockaddr *  addr,
const socklen_t  addr_size,
uint16_t  port,
std::list< std::string > &  txt,
int  flags 
) [inline, virtual]

A service has been announced on the network.

Parameters:
name name of the service
type type of the service
domain domain of the service
host_name name of the host that provides the service
addr pointer to sockaddr struct of appropriate type for address
addr_size size of addr struct
port port of the service
txt list of txt records.
flags extra flags, see Avahi documentation

Implements fawkes::ServiceBrowseHandler.

Definition at line 248 of file net.cpp.

References FuseClient::connect(), fawkes::Thread::join(), show_all(), fawkes::Thread::start(), and FuseClient::wait_greeting().

virtual void FireVisionNetworkTool::service_removed ( const char *  name,
const char *  type,
const char *  domain 
) [inline, virtual]

A service has been removed from the network.

Parameters:
name name of the service
type type of the service
domain domain of the service

Implements fawkes::ServiceBrowseHandler.

Definition at line 283 of file net.cpp.

void FireVisionNetworkTool::set_colormap ( const char *  lut_id  )  [inline]

Upload LUT.

Parameters:
lut_id LUT ID.

Definition at line 340 of file net.cpp.

References Colormap::depth(), FuseClient::enqueue(), Colormap::get_buffer(), ColormapFile::get_colormap(), Colormap::height(), FireVisionDataFile::read(), and Colormap::width().

Referenced by run().

void FireVisionNetworkTool::show_all (  )  [inline]

Show all images and LUTs.

Definition at line 355 of file net.cpp.

References FuseClient::enqueue().

Referenced by run(), and service_added().


The documentation for this class was generated from the following file: