Само себя??? Да, звучит странно. Зачем тогда нужны были бы программисты
.
Как мне видится решение данной задачи: предусмотреть все возможные варианты и написать их, а потом работа программы по одному конкретному варианту в зависимости от условий.
Есть некоторые но, которые бросаются с первого взгляда (их несомненно больше):
1. Описывать сотни вариантов, большинство из котрых возможно не потребуется.
2. О наличие или отсутствии каких либо сигналов. Это что-то врода блока дип-переключаиелей, которые кто-то должен включить/выключить (соответственно в 1,5-2 раза увеличить количество входов контроллера), либо через SCADA/панель, где тоже кто-то должен задать..
3. А как же отображение, те же сотни вариантов?
....
Конечно можно что-нибудь такое придумать, когда объекты очень маленькие и идентичные.