UL_DEVICE

Membri dati

activetechnology string (vedere nota)
area UL_AREA
description string
headline string
library string
libraryurn string (vedere nota)
libraryversion int (vedere nota)
name string (DEVICE_NAME_LENGTH)
footprint UL_FOOTPRINT (novità di EAGLE 9.1, vedere nota)
prefix string (DEVICE_PREFIX_LENGTH)
technologies string (vedere nota)
value string ("On" o "Off")

Membri di sequenza chiusa

attributes() UL_ATTRIBUTE (vedere nota)
gates() UL_GATE
packages3d() UL_PACKAGE3D

Vedere anche UL_DEVICESET, UL_LIBRARY, UL_PART

Costanti

DEVICE_NAME_LENGTH lunghezza max. consigliata del nome di un dispositivo (utilizzata solo nell'output formattato)
DEVICE_PREFIX_LENGTH lunghezza max. consigliata del prefisso di un dispositivo (utilizzata solo nell'output formattato)

Tutti i membri di UL_DEVICE, ad eccezione di name e technologies, restituiscono gli stessi valori dei rispettivi membri di UL_DEVICESET in cui è stato definito UL_DEVICE. Il membro name restituisce il nome della variante del pacchetto creata dal dispositivo per l'utilizzo del comando PACKAGE. Quando si utilizza il testo della descrizione, tenere presente che potrebbe contenere caratteri di nuova riga ('\n').

Note

Il valore restituito dal membro activetechnology dipende dal contesto in cui viene chiamato:

Il membro dati footprint restituisce il layout componente assegnato al dispositivo tramite un comando PACKAGE. Può essere utilizzato come funzione booleana per verificare se un layout componente è stato assegnato ad un dispositivo (vedere l'esempio seguente). (Si noti che il membro dati footprint è nuovo a partire da EAGLE 9.1. Per garantire la compatibilità con le versioni precedenti di EAGLE, è supportato anche package.

Il valore restituito dal membro technologies dipende dal contesto in cui viene chiamato:

Il membro di sequenza chiusa attributes() assume un parametro aggiuntivo che specifica la tecnologia per cui devono essere forniti gli attributi (vedere il secondo esempio di seguito).

libraryurn e libraryversion sono applicabili solo se questo UL_DEVICE deriva da una libreria gestita. In caso contrario, libraryurn sarà la stringa vuota e libraryversion sarà pari a -1.

Esempi

library(L) {
  L.devicesets(S) {
    S.devices(D) {
      if (D.footprint)
         printf("Device: %s, Footprint: %s\n", D.name, D.footprint.name);
      D.gates(G) {
        printf("\t%s\n", G.name);
        }
      }
    }
  }


library(L) {
  L.devicesets(DS) {
    DS.devices(D) {
      string t[];
      int n = strsplit(t, D.technologies, ' ');
      for (int i = 0; i < n; i++) {
          D.attributes(A, t[i]) {
            printf("%s = %s\n", A.name, A.value);
            }
          }
      }
    }
  }