Subversion Repositories HelenOS

Rev

Rev 3912 | Rev 4075 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3912 Rev 3990
Line 50... Line 50...
50
/** Type definition of the packet pointer.
50
/** Type definition of the packet pointer.
51
 *  @see packet
51
 *  @see packet
52
 */
52
 */
53
typedef packet_t *      packet_ref;
53
typedef packet_t *      packet_ref;
54
 
54
 
55
/** Packet operation mode type.
55
/** Type of the received packet.
56
 */
56
 */
-
 
57
enum packet_type{
57
typedef enum packet_mode    packet_mode_t;
58
    /** The packet is from the local subsystem.
58
 
59
     */
-
 
60
    PACKET_SELF,
59
/** Packet operation mode.
61
    /** The packet is for all hosts.
60
 */
62
     */
61
enum    packet_mode{
63
    PACKET_BROADCAST,
62
    /** The packet is processed in one direction and can be released at any time.
64
    /** The packet target complies with the local subsystem filter.
63
     */
65
     */
64
    PM_ONE_WAY,
66
    PACKET_MULTICAST,
65
    /** The packet should be returned at the end of the processing back to its initiator.
67
    /** The packet is for the local subsystem from other host.
66
     */
68
     */
67
    PM_RETURN
69
    PACKET_OTHERHOST
68
};
70
};
69
 
71
 
70
/** Finds the packet mapping.
72
/** Finds the packet mapping.
71
 *  @param packet_id The packet identifier to be found. Input parameter.
73
 *  @param packet_id The packet identifier to be found. Input parameter.
72
 *  @returns The found packet reference.
74
 *  @returns The found packet reference.
Line 106... Line 108...
106
packet_t    pq_add( packet_t first, packet_t packet, int order, size_t metric );
108
packet_t    pq_add( packet_t first, packet_t packet, int order, size_t metric );
107
 
109
 
108
/** Detach the packet from the queue.
110
/** Detach the packet from the queue.
109
 *  @param packet The packet to be detached. Input parameter.
111
 *  @param packet The packet to be detached. Input parameter.
110
 *  @returns The next packet in the queue. If the packet is the first one of the queue, this becomes the new first one.
112
 *  @returns The next packet in the queue. If the packet is the first one of the queue, this becomes the new first one.
-
 
113
 *  @returns NULL if there is no packet left.
111
 *  @returns NULL if the packet is not valid.
114
 *  @returns NULL if the packet is not valid.
112
 */
115
 */
113
packet_t    pq_detach( packet_t packet );
116
packet_t    pq_detach( packet_t packet );
114
 
117
 
115
/** Sets the packet order and metric attributes.
118
/** Sets the packet order and metric attributes.