Advanced Search   
  Look in
       Title     Description
  Include
       Inactive Projects
 

 
Inter-Process Communication Package (IPC)
Head: Reid Simmons
Contact: Reid Simmons
Mailing address:
Carnegie Mellon University
Robotics Institute
5000 Forbes Avenue
Pittsburgh, PA 15213
Associated lab(s) / group(s):
 Robot Learning Lab
Project Homepage
Overview
IPC provides high-level support for connecting processes using TCP / IP sockets and sending data between processes. It takes care of opening sockets, registering messages, and sending and receiving messages, including both anonymous publish / subscribe and client / server type messages. The IPC library contains functions to marshall (serialize) and unmarshall (de-serialize) data, handles data transfer between machines with different Endian conventions, invoke user-defined handlers when a message is received, and invoke user-defined callbacks at set intervals. IPC was developed for the NASA New Millennium Program, and has been used in numerous robotic and autonomous systems at CMU, NASA, and elsewhere.