ADSBMsg1 m1 = (ADSBMsg1) msg;
callSign = m1.getCallsign();
break;
case 2:
ADSBMsg2 m2 = (ADSBMsg2) msg;
updatePosition(new Position(LatLon.fromDegrees(m2.getPosition().getLatitude(),
m2.getPosition().getLongitude()), m2.getAltitudeInMeters()));
speed = m2.getSpeed();
isOnGround = m2.isOnGround();
updateTrack(m2.getTrack());
break;
case 3:
ADSBMsg3 m3 = (ADSBMsg3) msg;
updatePosition(new Position(LatLon.fromDegrees(m3.getPosition().getLatitude(),
m3.getPosition().getLongitude()), m3.getAltitudeInMeters()));
isOnGround = m3.isOnGround();
emergencyFlag = m3.hasSentEmergencyCode();
break;
case 4: