#pragma once #include "Ice/BuiltinSequences.ice" #include "Glacier2/Session.ice" module MW { /** * * The InvalidMessageException is raised when a user sends an invalid * message to the server. A message is considered invalid if the * message size exceeds the maximum message size. * **/ exception InvalidMessageException { /** * * The reason why the message was rejected by the server. * **/ string reason; } class MWMapEvent { /** The timestamp. */ long timestamp; /** The name of the user. */ string name; } /** * * A sequence of state changes in the MW map. * * @see MWMapEvent * **/ sequence MWMapEventSeq; /** * * This event is generated when a user joins the MW map. * * @see MWMapEvent * **/ class UserJoinedEvent extends MWMapEvent { } /** * * This event is generated when a user leaves the MW map. * * @see MWMapEvent * **/ class UserLeftEvent extends MWMapEvent { } /** * * This event is generated when a user sends a posotion in the * map. * * @see MWMapEvent * **/ class PositionEvent extends MWMapEvent { /** The contents of the message. */ string message; } }