digraph G {
	fontname = "Bitstream Vera Sans"
	fontsize = 8
	bgcolor="transparent"
					    
	node [
		fontname = "Bitstream Vera Sans"
		fontsize = 8
		shape = "record"
		fillcolor="white"
		style="filled"
	]

	edge [
		fontname = "Bitstream Vera Sans"
		fontsize = 8
		color="black"
	]

	AbstractObject [
		label = "{AbstractObject |+ on_completion : fonction\l+ local_data : OrderedDict\l+ del_function : array\l|+ name()\l+ interrupt()\l+ completed()\l+ register_service()\l }"
	]

	MorseOverlay [
		label = "{MorseOverlay | + overlaid_object : MorseObject\l| + chain_callback()\l}"
	]

	MorseObject [
		label = "{MorseObject | + bge_object :\l+ robot_parent : MorseObject\l+ position_3d : Transformation3D\l+ relative_position: Vector\l+ frequency: float\l|+ default_action()\l+ action()\l }"
	]

	MorseRobot [
		label = "{MorseRobot | + move_status : string\l| }"
	]

	MorseSensor [
		label = "{MorseSensor | + output_functions : array\l+ output_modifiers : array\l |}"
	]

	MorseActuator [
		label = "{MorseActuator | + input_functions : array\l+ input_modifiers : array\l |}"
	]

	Gyroscope [
		label = "{Gyroscope || }"
	]

	Camera [
		label = "{Camera |+ capturing : bool\l+ camera_tag : bool | }"
	]

	DestinationActuator [
		label = "{DestinationActuator | + tolerance : float\l+ speed : float\l+ destination : point\l | }"
	]

	MorseObject -> AbstractObject
	MorseOverlay -> AbstractObject
	MorseRobot -> MorseObject
	MorseSensor -> MorseObject
	MorseActuator -> MorseObject
	Gyroscope -> MorseSensor
	Camera -> MorseSensor
	DestinationActuator -> MorseActuator
}
