type loaded_sound [display="Loaded Sound"] { i32 name_ptr [ui, readonly, display="Name Ptr"]; // snd_info_t structure i32 rate [ui, readonly, display="Sample Rate"]; i32 bits [ui, readonly, display="Bits"]; i32 channels [ui, readonly, display="Channels"]; i32 samples [ui, readonly, display="Samples"]; i32 block_size [ui, readonly, display="Block Size"]; i32 format [ui, readonly, display="Format"]; i32 data_len [ui, readonly, display="Data Length"]; i32 data_ptr [ui, readonly, display="Data Ptr"]; // Parse inline name if (name_ptr == -1) { name = cstring() [ui, readonly, display="Name"]; _name = name; } // Parse inline audio data if (data_ptr == -1 && data_len > 0) { audio_data = read(data_len) [ui, readonly, display="Audio Data"]; } }