public override АМОбъект АдресВКучеПамяти() { if (АдресАктивностиВКуче == null) { АдресАктивностиВКуче = (Активность)АдресРОдительскойАктивности.АдресВКучеПамяти(); } var адресВКуче = АдресАктивностиВКуче.ДайСвязьПоНомеру(номер); return(адресВКуче); }
public override ПримитивИлиАдрес АдресВКуче() { if (АдресАктивностиВКуче == null) { АдресАктивностиВКуче = (Активность)АдресРОдительскойАктивности.АдресВКуче(); } var адресВКуче = АдресАктивностиВКуче.ДайСвязьПоНомеру(номер); return(адресВКуче); }
public void СогласоватьОбщение(Активность активность) { //проверить окружение как совпадение групп // хотя не все объекты окружения могут быть важны // если активности в разных хранилищах этот код не пойдет, т.к. адреса состовляющих объектов могут быть разными // группы моут иметь уникальный код, если они более неизменны, можно сравнить только этот код if (ОкружениеОбщенияСАктивностью.Список.Count != активность.ОкружениеОбщенияСАктивностью.Список.Count) { return; } var генератор = new Random(DateTime.Now.Millisecond); for (int i = 0; i < 10; i++) // 10 проверок { var случайныйИндекс = генератор.Next(ОкружениеОбщенияСАктивностью.Список.Count); if (((АдресВХранилище)ОкружениеОбщенияСАктивностью.Список[случайныйИндекс]).НомерВХранилище != ((АдресВХранилище)активность.ОкружениеОбщенияСАктивностью.Список[случайныйИндекс]).НомерВХранилище) { return; } } }
public virtual void ПолучиСообщение(Активность активность, АМОбъект сообщение) { }
public virtual void ПолучиСообщение(Активность активность, ПримитивИлиАдрес сообщение) { }