LabVIEW OOP 클래스의 이름을 프로그램적으로 변경하려면 어떻게 해야 합니까?



주요한 소프트웨어:
주요한 소프트웨어 버전: 8.2
문제가 해결된 소프트웨어 버전: N/A
부차적인 소프트웨어: N/A

문제점: 특정object 나 배열의 object 가 속해있는 클래스의 이름을 프로그램적으로 변경하려고 합니다. LabVIEW 에서 가능합니까?

솔루션:

LabVIEW OOP 는 개발자가 objects, method, property 를 사용할 때에 최대한의 유연성을 제공하기 위하여 디자인 되었습니다. 따라서 클래스의 이름을 반환하는 가장 좋은 방법은 method 가 자신의 class 이름을 반환하는 것입니다. LabVIEW 의 shipping 예제인 Board Testing.lvproj 를 참고할 수 있고 이 문서에 첨부되어 있습니다.

아래 프로젝트 탐색기에서 볼 수 있는 것 처럼 각각의 board class 는 Get Class Name VI 를 가지고 있습니다.

 

몇 개의 VI 들을 열어보면 object 를 포함하여 문자열로 각각의 이름을 출력합니다.

이 VI 들의 커넥터 패인이 다이나믹 디스패치로 설정되어 있는 한 Get Class Name VI 를 호출할 때마다 LabVIEW 는 입력 class 에 맞는 VI 를 실행시키고 알맞은 이름을 반환합니다.

이 기능을 사용할 만큼의 skill 이 부족하다면 VI Server 를 통해 클래스 이름을 반환할 수 있습니다. LabVIEW class library 의  QualifiedName property 는 a.lvclass 확장자명으로 클래스 이름을 반환합니다. Match Pattern 을 이용하여 . 이후의 확장자명을 없애고 클래스 이름을 얻을 수 있습니다.  



관련 링크: Developer Zone Tutorial:LabVIEW Object-Oriented Programming: The Decisions Behind the Design
Developer Zone Tutorial:LabVIEW Object-Oriented Programming FAQ

첨부:


BoardTesting.zip - BoardTesting.zip



리포트 날짜: 11/29/2006
마지막 업데이트: 03/05/2015
문서 번호: 43SCPKP9