public void load() throws IOException {
        boolean before = SoundStore.get().isDeferredLoading();
        SoundStore.get().setDeferredLoading(false);
        if (in != null) {
            switch (type) {
                case OGG:
                    target = SoundStore.get().getOgg(in);
                    break;
                case WAV:
                    target = SoundStore.get().getWAV(in);
                    break;
                case MOD:
                    target = SoundStore.get().getMOD(in);
                    break;
                case AIF:
                    target = SoundStore.get().getAIF(in);
                    break;
                default:
                    Log.error("Unrecognised sound type: " + type);
                    break;
            }
        } else {
            switch (type) {
                case OGG:
                    target = SoundStore.get().getOgg(ref);
                    break;
                case WAV:
                    target = SoundStore.get().getWAV(ref);
                    break;
                case MOD:
                    target = SoundStore.get().getMOD(ref);
                    break;
                case AIF:
                    target = SoundStore.get().getAIF(ref);
                    break;
                default:
                    Log.error("Unrecognised sound type: " + type);
                    break;
            }
        }
        SoundStore.get().setDeferredLoading(before);
    }