UL_ERROR

Miembros de datos

área UL_AREA
área2 UL_AREA (consulte la nota)
código int (número de identificación)
descripción cadena
capa entero
nombre del módulo cadena
s1 cadena (ver nota)
s2 cadena
s3 cadena
s4 cadena
s5 cadena
s6 cadena
plano int (número de plano)
firma cadena (cadena de firma)
estado int (ERROR_STATE_...)
tipo int (ERROR_TYPE_...)
x, y int (punto central)

Miembros de bucle

contours() UL_WIRE (consulte la nota)

Consulte también UL_BOARD, UL_SCHEMATIC

Constantes

ERROR_STATE_ACTIVE el error aún no se ha aprobado o procesado
ERROR_STATE_APPROVED el error se ha aprobado
ERROR_STATE_PROCESSED el error se ha procesado
ERROR_TYPE_NONE no hay errores
ERROR_TYPE_WARNING advertencia
ERROR_TYPE_ERROR error
ERROR_TYPE_CONSISTENCY error de coherencia

Notas

Un UL_ERROR es un objeto abstracto que proporciona información sobre errores de ERC/DRC.

Los miembros layer y contours() solo están disponibles en el contexto UL_BOARD y los elementos area2, modulename, s1...s6 y sheet solo están disponibles en el contexto UL_SCHEMATIC.

El elemento area2 es una segunda área que solo está disponible en algunos errores de ERC y hace referencia al área correspondiente de la placa. Los miembros s1...s6 son valores de cadenas que contienen información específica de errores de ERC, tales como nombres.

El elemento de bucle contours() hace un bucle a través de los conductores del contorno del polígono de error de DRC.

Ejemplo

string s1;
string ErrLst[];
int ErrCnt = 0;
string ErrLstHeader;
if (board) board(B) {
   ErrLstHeader = "Code\tState\tDescription\tLayer\tSignature";
   if (B.checked) {
      B.errors(ER) {
         if (ER.state == ERROR_STATE_ACTIVE) {
            sprintf(s1, "%d\t%d\t%s\t%d\t%s", ER.code, ER.state, ER.description, ER.layer, ER.signature);
            ErrLst[ErrCnt++] = s1;
         }
      }
   }
}
if (schematic) schematic(SCH) {
   ErrLstHeader = "Code\tState\tDescription\tSheet\tModule\ts1\ts2\ts3\ts4\ts5\ts6";
   if (SCH.checked) {
      SCH.errors(ER) {
         if (ER.state == ERROR_STATE_ACTIVE) {
            sprintf(s1, "%d\t%d\t%s\t%d\t%s\t%s\t%s\t%s\t%s\t%s\t%s", ER.code, ER.state, ER.description, ER.sheet, ER.modulename, ER.s1, ER.s2, ER.s3, ER.s4, ER.s5, ER.s6);
            ErrLst[ErrCnt++] = s1;
         }
      }
   }
}
dlgDialog("Errors") {
   int sel = -1;
   dlgListView(ErrLstHeader, ErrLst, sel);
   dlgPushButton("+OK") dlgAccept();
};