void ReceiverManager2Logger::ReceiverVolumeControlChanged(ReceiverManager2Receiver& aReceiver)
{
	Print("Vol Control Changed ");
	Print(aReceiver.Room());
	Print("(");
	Print(aReceiver.Group());
	Print("): ");
    aReceiver.HasVolumeControl() ? printf("Yes\n") : printf("No\n");
	if(aReceiver.HasVolumeControl())
	{
		Print("Vol      ");
		Bws<Ascii::kMaxUintStringBytes> bufferVol;
		Ascii::AppendDec(bufferVol, aReceiver.Volume());
		Print(bufferVol);
		Print("\n");
		Print("Mute      ");
		Bws<Ascii::kMaxUintStringBytes> bufferMute;
		Ascii::AppendDec(bufferMute, aReceiver.Mute());
		Print(bufferMute);
		Print("\n");
		Print("Vol Limit      ");
		Bws<Ascii::kMaxUintStringBytes> bufferVolLim;
		Ascii::AppendDec(bufferVolLim, aReceiver.VolumeLimit());
		Print(bufferVolLim);
		Print("\n");
	}
}
void ReceiverManager2::ReceiverVolumeControlChanged(ReceiverManager2Receiver& aReceiver)
{
	LOG(kTopology, "ReceiverManager2::ReceiverVolumeControlChanged ");
    LOG(kTopology, aReceiver.Room());
    LOG(kTopology, ":");
    LOG(kTopology, aReceiver.Group());
	LOG(kTopology, ":");
    LOG(kTopology, aReceiver.HasVolumeControl() ? Brn("Yes") : Brn("No"));
    LOG(kTopology, "\n");

	ReceiverManager2Job* job = iFree.Read();
	job->Set(aReceiver, &IReceiverManager2Handler::ReceiverVolumeControlChanged);
	iReady.Write(job);
}