Приложения
Приложение А. Функции, константы и структуры RDS
А.5. Сервисные функции и макросы RDS
А.5.6. Операции с блоками и связями
А.5.6.2. rdsAltConnAppearanceOp – операции с альтернативным внешним видом связи или шины
Функция rdsAltConnAppearanceOp позволяет временно изменять внешний вид связи или шины (визуально выделять ее) или считывать параметры такого измененного внешнего вида.
int RDSCALL rdsAltConnAppearanceOp( RDS_CHANDLE Conn, // Идентификатор связи/шины int Op, // Операция (RDS_CAO*) int Num, // Номер внешнего вида RDS_PCONNAPPEARANCE pData // Описание внешнего вида );
Тип указателя на эту функцию
RDS_IChIICa
Параметры
- Conn (RDS_CHANDLE)
- Идентификатор связи или шины, для которой нужно установить альтернативный внешний вид или считать его параметры.
- Op (int)
- Выполняемая операция, одна из констант RDS_CAO* (см. ниже).
- Num (int)
- Номер альтернативного внешнего вида или число таких видов в зависимости от значения Op (см. ниже).
- pData (RDS_PCONNAPPEARANCE)
- Указатель на структуру описания внешнего вида связи (RDS_CONNAPPEARANCE), из которой берутся или в которую записываются, в зависимости от значения Op, параметры альтернативного внешнего вида связи.
Возвращаемое значение
Зависит от параметра Op, см. ниже.
Примечания
Эта функция позволяет создавать для связи или шины альтернативные наборы параметров внешнего вида и оперативно переключаться между ними. Чаще всего этот механизм используется для временного визуального выделения какой-либо группы связей: его преимущество перед использованием функции постоянного изменения внешнего вида связи rdsSetConnAppearance заключается в том, что альтернативные наборы внешнего вида связи не запоминаются при сохранении схемы, поэтому после загрузки схемы все временные выделения исчезнут автоматически. Кроме того, функция rdsAltConnAppearanceOp автоматически запоминает исходный внешний вид связи и позволяет быстро вернуться к нему.
Действия, выполняемые функцией, и возвращаемое ей значение зависят от параметра Op, который может принимать одно из следующих значений:
- RDS_CAOCOUNT
- Функция возвращает число запомненных в связи или шине Conn альтернативных внешних видов. Значения параметров Num и pData не используются.
- RDS_CAODELETE
- Удалить из связи или шины Conn альтернативный внешний вид с номером Num. Все виды с номерами, большими Num, сдвигаются вниз на единицу (то есть, если удалить внешний вид с номером 5, вид с номером 6 станет видом 5, вид 7 станет видом 6 и т.д.). Параметр pData не используется. Функция возвращает число оставшихся альтернативных внешних видов. При удалении самого последнего внешнего вида автоматически восстанавливается исходный внешний вид связи.
- RDS_CAOGET
- Считать из Conn параметры альтернативного внешнего вида с номером Num в структуру, на которую указывает pData. Функция возвращает 1, если в Conn есть внешний вид с таким номером, и 0 в противном случае.
- RDS_CAOPREALLOCATE
- Подготовиться к созданию в связи или шине Conn альтернативных видов общим числом Num. Если на данный момент в Conn уже больше Num видов, «лишние» виды будут удалены. Функция всегда возвращает 0, параметр pData не используется. Эта операция позволяет ускорить создание большого количества внешних видов – при желании, ее можно не выполнять, сразу создавая внешние виды вызовами rdsAltConnAppearanceOp с параметром Op, равным RDS_CAOSET.
- RDS_CAORESTORE
- Восстановить исходный (до установки альтернативных) внешний вид связи или шины Conn. Параметры Num и pData не используются. Функция всегда возвращает 0.
- RDS_CAOSET
- Запомнить в Conn новый альтернативный внешний вид с номером Num, взяв его параметры из структуры, на которую указывает pData. Если в связи или шине Conn уже есть альтернативный внешний вид с таким номером, его параметры будут заменены и функция вернет Num, в противном случае будет создан новый внешний вид и функция вернет его номер. Если в параметре pData передано значение NULL, параметры запоминаемого внешнего вида будут скопированы из исходного внешнего вида связи. Запоминание нового альтернативного внешнего вида не приводит к его установке, для этого нужно явно вызвать rdsAltConnAppearanceOp с параметром Op, равным RDS_CAOSETCURRENT.
- RDS_CAOSETCURRENT
- Применить к Conn альтернативный внешний вид с номером Num. Параметр pData не используется. Функция возвращает 1, если внешний вид установлен (то есть если в Conn есть запомненный внешний вид с таким номером), и 0 в противном случае.
Пример
Пример использования функции rdsAltConnAppearanceOp проведен в §2.13.4 руководства программиста.
См. также