nOffset | (Long) Určuje pozici zapisované hodnoty v datovém bloku. Platí, že celá zapisovaná hodnota musí ležet uvnitř datového bloku nebo se celá položka přidává na konec datového bloku. Položka se zapíše buď celá nebo vůbec. >= 0 - Index (v bajtech, indexováno od 0) v datovém bloku. -2 - Celá položka se přidá na konec datového bloku. Velikost datového bloku se pak zvětší o zapisovanou položku. -4 - Použije se vnitřní automatická pozice (viz AutoOffset), která ukazuje za poslední čtenou nebo zapisovanou hodnotu a automaticky se zvětšuje. Pokud se čtou/zapisují položky jedna za druhou, pak není potřeba ručně určovat pozici, ale je lepší použít toto automatické pozicování. |
---|---|
nValue | (Double) Zapisovaná hodnota. |
nEncoding | [nepovinné] (Long) Způsob pořadí uložení bajtů jedné hodnoty v paměti (Little-endian/Big-endian) v datovém bloku. Little-endian a Big-endian mají navzájem opačné pořadí uložení bajtů hodnoty. Nezávisí na operáčním systému, ale na počítačové platformě. V systému PROMOTIC (na x86 procesorech na PC) se používá Little-endian. Na ARM procesorech bývá Big-endian (často se používá pro komunikaci s PLC automaty). Big-endian může být vyžadován pro vyměnu dat s jiným systémem (např. PLC automat). |
var oBuf = Pm.CreatePmBuffer();
oBuf.SetFloat64(-2, 4875986213, 0);
var val = oBuf.GetFloat64(0);
//nebo
oBuf.AutoOffset = 0;
var val = oBuf.GetFloat64(-4);