// generated by lv2ttl2c from
// http://gareus.org/oss/lv2/meters#TPnRMSstereo

extern const LV2_Descriptor* lv2_descriptor(uint32_t index);
extern const LV2UI_Descriptor* lv2ui_tprms2(uint32_t index);

static const RtkLv2Description _plugin_tprms2 = {
	&lv2_descriptor,
	&lv2ui_tprms2
	, 28 // uint32_t dsp_descriptor_id
	, 0 // uint32_t gui_descriptor_id
	, "True-Peak and RMS Meter (Stereo)" // const char *plugin_human_id
	, (const struct LV2Port[17])
	{
		{ "control", ATOM_IN, nan, nan, nan, "Control"},
		{ "unused1", CONTROL_IN, 1.000000, 0.000000, 1.000000, ""},
		{ "reset", CONTROL_IN, 0.000000, 0.000000, 1.000000, ""},
		{ "blkcnt", CONTROL_OUT, nan, 0.000000, 3600.000000, ""},
		{ "in1", AUDIO_IN, nan, nan, nan, "Audio input"},
		{ "out1", AUDIO_OUT, nan, nan, nan, "signal pass-thru"},
		{ "dBTP_m1", CONTROL_OUT, nan, -80.000000, 6.000000, ""},
		{ "dBTP_p1", CONTROL_OUT, nan, -80.000000, 6.000000, ""},
		{ "dBRMS_m1", CONTROL_OUT, nan, -80.000000, 0.000000, ""},
		{ "dBRMS_p1", CONTROL_OUT, nan, -80.000000, 0.000000, ""},
		{ "unused2", CONTROL_OUT, nan, 0.000000, 1.000000, ""},
		{ "in2", AUDIO_IN, nan, nan, nan, "Audio input"},
		{ "out2", AUDIO_OUT, nan, nan, nan, "signal pass-thru"},
		{ "dBTP_m2", CONTROL_OUT, nan, -80.000000, 6.000000, ""},
		{ "dBTP_p2", CONTROL_OUT, nan, -80.000000, 6.000000, ""},
		{ "dBRMS_m2", CONTROL_OUT, nan, -80.000000, 0.000000, ""},
		{ "dBFS_p2", CONTROL_OUT, nan, -80.000000, 0.000000, ""},
	}
	, 17 // uint32_t nports_total
	, 2 // uint32_t nports_audio_in
	, 2 // uint32_t nports_audio_out
	, 0 // uint32_t nports_midi_in
	, 0 // uint32_t nports_midi_out
	, 1 // uint32_t nports_atom_in
	, 0 // uint32_t nports_atom_out
	, 12 // uint32_t nports_ctrl
	, 2 // uint32_t nports_ctrl_in
	, 10 // uint32_t nports_ctrl_out
	, 8192 // uint32_t min_atom_bufsiz
	, true // bool send_time_info
	, UINT32_MAX // uint32_t latency_ctrl_port
};

#ifdef X42_PLUGIN_STRUCT
#undef X42_PLUGIN_STRUCT
#endif
#define X42_PLUGIN_STRUCT _plugin_tprms2
