INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

[LV]BoolArray -> [C]DLL -> [LV]BoolArray



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

17.12.2010, 11:13 (Dieser Beitrag wurde zuletzt bearbeitet: 17.12.2010 15:30 von jg.)
Beitrag #1

Adiboing Offline
LV-Noob
*


Beiträge: 27
Registriert seit: Jun 2010

LabVIEW 2013
2010
EN


Deutschland
[LV]BoolArray -> [C]DLL -> [LV]BoolArray
Hey oh Leute,

vorneweg es schneit hier bei uns grad total und ich finds Mega geilBig Grin

ok xD

Also ich habe in LV ein 2d BoolArray dieses soll dann an meine DLL geschickt werden(Input). Und dann in der DLL wird aus true == false, sprich auch 1 wird 0 und andersrum. Leider kann ich der DLL kein 2dBoolArray übergeben. Deshalb benutze ich im moment "Boolean to 1,0".

Ich hatte mir schon gedacht das wenn ich aus den hereinkommenden int werten ein boolarray mache könnte ich das zurückliefern, aber das geht leider nicht. Soll heißen mit C kann ich per DLL auch kein 2dBoolArray zurück an LV geben. Und ich weiß beim besten Wille nicht wie ich aus meinem 2dIntegerArray(Output) nen 2dboolArray machen könnte.

   
   

Weiß jemand wie ich das realisieren könnte?

peace AdiWink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
17.12.2010, 11:36 (Dieser Beitrag wurde zuletzt bearbeitet: 17.12.2010 15:30 von jg.)
Beitrag #2

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
[LV]BoolArray -> [C]DLL -> [LV]BoolArray
' schrieb:Hey oh Leute,

vorneweg es schneit hier bei uns grad total und ich finds Mega geilBig Grin

ok xD

Also ich habe in LV ein 2d BoolArray dieses soll dann an meine DLL geschickt werden(Input). Und dann in der DLL wird aus true == false, sprich auch 1 wird 0 und andersrum. Leider kann ich der DLL kein 2dBoolArray übergeben. Deshalb benutze ich im moment "Boolean to 1,0".

Ich hatte mir schon gedacht das wenn ich aus den hereinkommenden int werten ein boolarray mache könnte ich das zurückliefern, aber das geht leider nicht. Soll heißen mit C kann ich per DLL auch kein 2dBoolArray zurück an LV geben. Und ich weiß beim besten Wille nicht wie ich aus meinem 2dIntegerArray(Output) nen 2dboolArray machen könnte.

Weiß jemand wie ich das realisieren könnte?

peace AdiWink

Also das Umgekehrte von "Boolean to 1,0" ist natürlich "Ungleich 0"!!! Sehr einfach! Denk einfach mal ausserhalb der kleine Box der Boolean Palette.

Alternative wäre um den Parameter als Adapt to Type zu konfigurieren. Dann musst Du aber damit Rechnung tragen dass das LabVIEW Array das hineinkommt folgendermassen aussieht:

typedef struct {
int32 dim1; // Size of first dimension
int32 dim2; // Size of second dimension
LVBoolean elm[0]; // actual data as an linear byte array (LVBoolean == uInt8)
} LVBooleanArr, **LVBooleanArrHdl;

By Konfiguration "Handles as Value":

MgErr MyBoolean2DArrayFunc(LVBooleanArrHdl BoolArrHdl);

By Konfiguration "Pointers to Handles ":

MgErr MyBoolean2DArrayFunc(LVBooleanArrHdl *pBoolArrHdl);

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.12.2010, 12:04
Beitrag #3

Adiboing Offline
LV-Noob
*


Beiträge: 27
Registriert seit: Jun 2010

LabVIEW 2013
2010
EN


Deutschland
[LV]BoolArray -> [C]DLL -> [LV]BoolArray
Das ist nicht mein Problem.

Sondern:
- wie kann ich in LV der DLL direkt ein 2dBoolArray übergeben?
- wie kann ich in C ein 2dBoolArray als return angeben?
- oder wie kann ich aus einem 2dIntegerArray das nur 0 und 1 enthält ein 2dBoolArray erstellen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.12.2010, 12:15
Beitrag #4

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
[LV]BoolArray -> [C]DLL -> [LV]BoolArray
' schrieb:Das ist nicht mein Problem.

Sondern:
- wie kann ich in LV der DLL direkt ein 2dBoolArray übergeben?
- wie kann ich in C ein 2dBoolArray als return angeben?
- oder wie kann ich aus einem 2dIntegerArray das nur 0 und 1 enthält ein 2dBoolArray erstellen.

Zu dem ersten und zweiten Punkt siehe mein Edit.

Zum dritten Punkt das geht eben doch mit der "Not Equal to 0" Vergleichsoperation.

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: