Lade...
 

CX_BIT_PATTERN

CX_BIT_PATTERN

Klassenhierarchie
Beschreibung:

Diese Klasse bildet ein Bitmuster im System ab.  Das Bitmuster ist eine Kombination aus Bits, mit der häufig die möglichen eindeutigen Kombinationen einer bestimmten Anzahl von Bits angegeben wird. Es ist erlaubt ein Muster aus 32 Bit genau 232 Kombinationen.

197959

Ein CX_BIT_PATTERN kann beispielsweise auch in einem Enumeration-Widget verwendet werden, indem einzelne Bits des CX_BIT_PATTERN über einen Zugriffsausdruck gewählt werden:

slotName.pattern[0]
Code-Beispiel:

Var(typePattern)
CreateTransObject(CX_BIT_PATTERN) -> typePattern
0 GetValue(, ShowFolder) typePattern Call(SetBit)
1 GetValue(, ShowItem) typePattern Call(SetBit)
2 GetValue(, ShowSubItem) typePattern Call(SetBit)
........................
7 typePattern Integer > |
.........................
// Type suitable?
tmpTodo Cardinality(subTransactions) // is folder
typePattern Copy(GetBit(0)) &
tmpTodo Cardinality(subTransactions) ! tmpTodo Get(transaction) if FALSE else TRUE & // is item
typePattern Copy(GetBit(1)) &
tmpTodo Get(transaction) if TRUE else FALSE // is subitem
typePattern Copy(GetBit(2)) &
| | ifnot return

 

Weitere Hinweise zur Semantik:

Im Gegensatz zu CX_INTEGER wird ein CX_BIT_PATTERN-Objekt für if und ifnot immer zu TRUE ausgewertet (unabhängig vom Wert).

CX_BIT_PATTERN unterstützt die folgenden Operatoren:

& = Bitwise AND | = Bitwise OR ^ = Bitwise XOR

Diese Operatoren untersützen auch die Verknüpfung von INTEGER oder CX_INTEGER mit einem CX_BIT_PATTERN. Hierfür wird der Zahlenwert vor der Operation automatisch in ein Bitpattern umgewandelt. Das Ergebnis dieser Operatoren ist immer ein neues CX_BIT_PATTERN-Objekt.

Methodenverzeichnis (MDI)
Funktion MA* Parameter Rückgabe Kurzbeschreibung
All   INTEGER | CX_INTEGER | CX_BIT_PATTERN CX_BOOLEAN Wenn alle Bits im Integer auf dem Stack auch im Bitpattern gesetzt sind, ist das Ergebnis TRUE, ansonsten FALSE
Any   INTEGER | CX_INTEGER | CX_BIT_PATTERN CX_BOOLEAN Wenn mindestens ein Bit im Integer auf dem Stack auch im Bitpattern gesetzt ist, ist das Ergebnis TRUE, ansonsten FALSE
And
225959
  INTEGER | CX_INTEGER | CX_BIT_PATTERN CX_BIT_PATTERN Führt eine Bitweise Und-Verknüpfung durch.
Bit   INTEGER CX_BOOLEAN Bit abfragen 
GetBit   INTEGER INTEGER Bit abfragen 
Invert
225959
    CX_BIT_PATTERN Invertiert jedes Bit im Bitpattern.
LeftShift
225959
  INTEGER CX_BIT_PATTERN Verschiebt das Bitpattern um n Bits nach links.
Not
225959
    CX_BIT_PATTERN Führt eine logische Negation auf dem Bitpattern durch.
Or
225959
  INTEGER | CX_INTEGER | CX_BIT_PATTERN CX_BIT_PATTERN Führt eine Bitweise Oder-Verknüpfung durch.
RightShift
225959
  INTEGER CX_BIT_PATTERN Verschiebt das Bitpattern um n Bits nach rechts.
SetBit   INTEGER, INTEGER   Bit setzen
SetEnumTbl   STRING   Enumeration-Tabelle setzen
Xor
225959
  INTEGER | CX_INTEGER | CX_BIT_PATTERN CX_BIT_PATTERN Führt eine Bitweise Xor-Verknüpfung durch.
string   INTEGER CX_STRING Liefert die String-Darstellung des Objektes.

* MA = Member-Access-Funktion

 

Datenverzeichnis (DDI)
Datenfeld Typ Referenz-Klasse I* Kurzbeschreibung
pattern INTEGER     Bitmuster

* I = Indizierbares Datenfeld

 

Verwendung in AppsWH
Modul Kurzbeschreibung