Functions | Variables
wmp_interface.c File Reference
#include "core/interface/wmp_interface.h"
#include <stdio.h>
#include <netinet/in.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <linux/if.h>
#include <netpacket/packet.h>
#include <net/ethernet.h>
#include <linux/fs.h>
#include "../include/cross_space.h"
#include <fcntl.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include "../include/ioctl_interface.h"
Include dependency graph for wmp_interface.c:

Go to the source code of this file.

Functions

char lqm_get_val (int i, int j)
int wmp_queue_tx_get_room (void)
int wmp_queue_tx_remove_head (void)
void wmpClose ()
int wmpGetActiveSearch (void)
int wmpGetCpuDelay ()
int wmpGetFlowControl ()
short wmpGetInstanceId ()
int wmpGetLatestDistances (char *lqm)
int wmpGetLatestLQM (char *lqm)
unsigned int wmpGetLoopId (void)
int wmpGetMessageReschedule ()
unsigned int wmpGetMTU (void)
int wmpGetNetIT (void)
char wmpGetNodeId (void)
int wmpGetNumOfElementsInRXQueue (int port)
int wmpGetNumOfElementsInTXQueue (void)
char wmpGetNumOfNodes (void)
int wmpGetPrimBasedRouting ()
int wmpGetRate ()
unsigned int wmpGetSerial (void)
int wmpGetTimeout ()
int wmpGetWCMult ()
int wmpInit (char *ifname)
int wmpIsKernelSpace ()
int wmpIsNetworkConnected (void)
int wmpIsNetworkConnectedBlocking (int timeout_ms)
int wmpNonBlockingPop (Msg *p)
unsigned int wmpPop (Msg *p)
int wmpPopData (unsigned int port, char **p, unsigned int *size, unsigned char *src, signed char *priority)
int wmpPopDataCopy (unsigned int port, char *p, unsigned int *size, unsigned char *src, signed char *priority)
void wmpPopDataDone (int id)
int wmpPopDataTimeout (unsigned int port, char **p, unsigned int *size, unsigned char *src, signed char *priority, int to)
int wmpPopDataTimeoutCopy (unsigned int port, char *p, unsigned int *size, unsigned char *src, signed char *priority, int to)
int wmpPush (Msg *p)
int wmpPushData (unsigned int port, char *p, unsigned int size, unsigned int dest, signed char priority)
void wmpRun ()
void wmpRunBG ()
void wmpSetActiveSearch (int val)
void wmpSetCpuDelay (int val)
void wmpSetFlowControl (int val)
void wmpSetInstanceId (short iid)
void wmpSetMessageReschedule (int val)
void wmpSetPrimBasedRouting (int val)
void wmpSetRate (int val)
void wmpSetTimeout (int val)
int wmpSetup (char p1, char p2)
void wmpSetWCMult (int val)
int wmpTimedPop (Msg *p, int timeout_ms)

Variables

static int fp
static struct ifreq ifr
static int ioctl_sock

Function Documentation

char lqm_get_val ( int  i,
int  j 
)

Definition at line 615 of file wmp_interface.c.

int wmp_queue_tx_get_room ( void  )

Returns the number of free posiitons in the TX queue

Returns:
number of free positions in the TX queue

Definition at line 393 of file wmp_interface.c.

int wmp_queue_tx_remove_head ( void  )

Remove the less priority message from the TX queue

Parameters:
pthe removed message

Definition at line 285 of file wmp_interface.c.

void wmpClose ( )

Definition at line 64 of file wmp_interface.c.

int wmpGetActiveSearch ( void  )

Returns the status of the active search capability

Returns:
status 1:on 0:off

Definition at line 465 of file wmp_interface.c.

int wmpGetCpuDelay ( void  )

Returns the delay that RT-WMP process waits before transmitting (to leave the processor to other tasks)

Returns:
delay in milliseconds

Definition at line 309 of file wmp_interface.c.

int wmpGetFlowControl ( void  )

Definition at line 561 of file wmp_interface.c.

short wmpGetInstanceId ( void  )

Definition at line 489 of file wmp_interface.c.

int wmpGetLatestDistances ( char *  lqm)

Definition at line 247 of file wmp_interface.c.

int wmpGetLatestLQM ( char *  lqm)

Returns latest lqm in a buffer. The Matrix should be scanned with a innested for loop:

        char lqm[wmpGetNumOfNodes()*wmpGetNumOfNodes()],p;
        wmpGetLatestLQM(lqm);
        p = lqm;
	for (i = 0; i<wmpGetNumOfNodes() ; i++){
		for (j = 0; j<wmpGetNumOfNodes() ; j++){
			element_ij = *p;
			p++;
		};
	};

Parameters:
lqman (at least) n x n char buffer (output parameter)
Returns:
always 0

Definition at line 235 of file wmp_interface.c.

unsigned int wmpGetLoopId ( void  )

Definition at line 585 of file wmp_interface.c.

int wmpGetMessageReschedule ( void  )

Definition at line 537 of file wmp_interface.c.

unsigned int wmpGetMTU ( void  )

Returns the Maximum Transmission Unit for USER data

Returns:
the MTU size in bytes

Definition at line 441 of file wmp_interface.c.

int wmpGetNetIT ( void  )

Returns the network inactivity timeout

Returns:
the net inactivity timeout

Definition at line 429 of file wmp_interface.c.

char wmpGetNodeId ( void  )

Returns the WMP address of the local node

Returns:
the WMP address of the local node

Definition at line 211 of file wmp_interface.c.

int wmpGetNumOfElementsInRXQueue ( int  port)

Returns the number of elements in the RX queue

Returns:
number of elements in the RX queue

Definition at line 417 of file wmp_interface.c.

Returns the number of elements in the TX queue

Returns:
number of elements in the TX queue

Definition at line 405 of file wmp_interface.c.

char wmpGetNumOfNodes ( void  )

Returns the total number of nodes of the network

Returns:
the total number of nodes of the network

Definition at line 223 of file wmp_interface.c.

int wmpGetPrimBasedRouting ( void  )

Definition at line 513 of file wmp_interface.c.

int wmpGetRate ( void  )

Returns the network rate (used to calculate delays in frame-hops)

Returns:
rate in Mbps

Definition at line 381 of file wmp_interface.c.

unsigned int wmpGetSerial ( void  )

Definition at line 573 of file wmp_interface.c.

int wmpGetTimeout ( void  )

Returns the reception timeout

Returns:
reception timeout in milliseconds

Definition at line 333 of file wmp_interface.c.

int wmpGetWCMult ( void  )

Returns multiplier for the worst-case loop of the protocol (used to force worse worst-cases and increase QoS performances)

Returns:
multiplier

Definition at line 357 of file wmp_interface.c.

int wmpInit ( char *  ifname)

Definition at line 48 of file wmp_interface.c.

int wmpIsKernelSpace ( void  )

Definition at line 611 of file wmp_interface.c.

int wmpIsNetworkConnected ( void  )

Allows knowing if the network is connected (i.e. all the nodes are up and working and connected among them)

Returns:
1 if connected 0 if disconnected

Definition at line 260 of file wmp_interface.c.

int wmpIsNetworkConnectedBlocking ( int  timeout_ms)

Allows knowing if the network is connected (i.e. all the nodes are up and working and connected among them and if not, blocks the caller thread until connected

Parameters:
timeout_msspecify the maximum wait for connection (if timeout_ms = 0 wait forever)
Returns:
1 if connected 0 if disconnected

Definition at line 272 of file wmp_interface.c.

int wmpNonBlockingPop ( Msg p)

Dequeue a message from the RX Queue if present. If there are not message to dequeue, returns a negative value

Parameters:
pthe message to pop
Returns:
time spent in the queue (age) if dequeued -1 if no message to pop

Definition at line 80 of file wmp_interface.c.

unsigned int wmpPop ( Msg p)

Dequeue a message from the RX Queue

Parameters:
pthe message to pop
Returns:
time spent in the queue (age)

Definition at line 72 of file wmp_interface.c.

int wmpPopData ( unsigned int  port,
char **  p,
unsigned int *  size,
unsigned char *  src,
signed char *  priority 
)

Definition at line 170 of file wmp_interface.c.

int wmpPopDataCopy ( unsigned int  port,
char *  p,
unsigned int *  size,
unsigned char *  src,
signed char *  priority 
)

Definition at line 84 of file wmp_interface.c.

void wmpPopDataDone ( int  id)

Definition at line 204 of file wmp_interface.c.

int wmpPopDataTimeout ( unsigned int  port,
char **  p,
unsigned int *  size,
unsigned char *  src,
signed char *  priority,
int  to 
)

Definition at line 174 of file wmp_interface.c.

int wmpPopDataTimeoutCopy ( unsigned int  port,
char *  p,
unsigned int *  size,
unsigned char *  src,
signed char *  priority,
int  to 
)

Definition at line 144 of file wmp_interface.c.

int wmpPush ( Msg p)

Enqueue a message in the TX Queue

Parameters:
pthe message to push
Returns:
1 if success 0 if not (queue full)

Definition at line 68 of file wmp_interface.c.

int wmpPushData ( unsigned int  port,
char *  p,
unsigned int  size,
unsigned int  dest,
signed char  priority 
)

Definition at line 133 of file wmp_interface.c.

void wmpRun ( void  )

Starts the process in foreground (blocking)

Definition at line 601 of file wmp_interface.c.

void wmpRunBG ( void  )

Starts the process in background (separate thread)

Definition at line 607 of file wmp_interface.c.

void wmpSetActiveSearch ( int  val)

Set / Unset the active search capability (default:on)

Definition at line 453 of file wmp_interface.c.

void wmpSetCpuDelay ( int  val)

Sets the delay that RT-WMP process waits before transmitting (to leave the processor to other tasks)

Parameters:
valtime in milliseconds

Definition at line 297 of file wmp_interface.c.

void wmpSetFlowControl ( int  val)

Definition at line 549 of file wmp_interface.c.

void wmpSetInstanceId ( short  iid)

Definition at line 477 of file wmp_interface.c.

void wmpSetMessageReschedule ( int  val)

Definition at line 525 of file wmp_interface.c.

void wmpSetPrimBasedRouting ( int  val)

Definition at line 501 of file wmp_interface.c.

void wmpSetRate ( int  val)

Sets network rate (used to calculate delays in frame-hops)

Parameters:
valrate in Mbps

Definition at line 369 of file wmp_interface.c.

void wmpSetTimeout ( int  val)

Sets the reception timeout

Parameters:
valtime in milliseconds

Definition at line 321 of file wmp_interface.c.

int wmpSetup ( char  node_id,
char  active_nodes 
)

Sets up the network

Parameters:
node_idspecify the WMP address of the local node
active_nodesspecify the number of nodes in the network

Definition at line 597 of file wmp_interface.c.

void wmpSetWCMult ( int  val)

Sets multiplier for the worst-case loop of the protocol (used to force worse worst-cases and increase QoS performances)

Parameters:
valmultiplier

Definition at line 345 of file wmp_interface.c.

int wmpTimedPop ( Msg p,
int  timeout_ms 
)

Dequeue a message from the RX Queue if already in the queue or enqueued within timeous_ms milliseconds. If there are not message to dequeue, returns a negative value

Parameters:
pthe message to pop
timeout_mspop timeout in milliseconds
Returns:
time spent in the queue (age) if dequeued -1 if timeout expired

Definition at line 76 of file wmp_interface.c.


Variable Documentation

int fp [static]

Definition at line 45 of file wmp_interface.c.

struct ifreq ifr [static]

Definition at line 46 of file wmp_interface.c.

int ioctl_sock [static]

Definition at line 45 of file wmp_interface.c.



ros_rt_wmp
Author(s): Danilo Tardioli, dantard@unizar.es
autogenerated on Fri Jan 3 2014 12:07:58