CLASS chop IS

 PASSIVE

DESCRIPTION

PROBLEM

Referenced Documents (text)

This application is the HOOD version of "Dining Philosophers - Ada95 edition" from Michael B. Feldman, The George Washington University, July 1995.
HOOD adaptation was performed by Pierre Dissaux, TNI, June 1998, with STOOD toolset.

Local Environment

Parent General Description (text)

Please refer to parent module description.

PROVIDED_INTERFACE

TYPES

Stick

class inheritance (hood)

INHERITANCE NONE

type attributes (hood)

ATTRIBUTES In_Use : Boolean := --|false|--

type enumeration (hood)

ENUMERATION NONE

Stick_Ptr

type attributes (hood)

ATTRIBUTES NONE

type enumeration (hood)

ENUMERATION NONE

type definition (ada)

type Stick_Ptr is access all Stick;

OPERATIONS

pick_up

operation declaration (hood)

pick_up(me : in out stick);

real time attributes (hood)

WCET

put_down

operation declaration (hood)

put_down(me : in out stick);

real time attributes (hood)

WCET

OBJECT_CONTROL_STRUCTURE

constrained operations

pick_up CONSTRAINED_BY RWER STATE;
put_down CONSTRAINED_BY RWER STATE;

INTERNALS

OBJECT_CONTROL_STRUCTURE

state transition diagram

Not_In_Use

entering transitions

put_down, put_down

exiting transitions

pick_up, put_down

In_Use

entering transitions

pick_up

exiting transitions

put_down

pick_up

transition event

pick_up

transition from

Not_In_Use

transition to

In_Use

trans condition (ada)

not In_Use

put_down

transition event

put_down

transition from

In_Use

transition to

Not_In_Use

put_down

transition event

put_down

transition from

In_Use

transition to

Not_In_Use

OPERATION_CONTROL_STRUCTURES

OPERATION pick_up IS

operation code (ada)

begin
  In_Use := True;

END pick_up

OPERATION put_down IS

operation code (ada)

begin
  In_Use := False;

END put_down

END chop