rendered paste bodyclass column { enum { pt_note, pt_trigger, pt_byte, pt_word, pt_float } type; float min, max, default_value; void *column_user_data;};interface IPatternEditor { void set_pattern(int rows, int tracks, column[] globals, column []locals, void *user_data); void set_sample(int sample);};interface IPatternEditorHost { float get_value(int row, int track, int param, void *user_data, void *column_user_data); void set_value(int row, int track, int param, float value, bool skip_playing, void *user_data, void *column_user_data);};