본문 바로가기

Robotics/Interface

[Flex3 AIR] MFC와 소켓 통신 준비

Flex의 화려한 인터페이스와 MFC의 하드웨어 결합력을 이용하여 어떤 로봇을 구동하는 어플리케이션을 구동하려고 한다.

Flex로 GUI를 꾸며서나온 swf파일을 MFC에 컴포넌트로 삽입해도 되지만 Flex자체가 웹어플리케이션용이라 보안때문에 시스템내부를 컨트롤하기엔 제약사항이 존재한다. 그래서, AIR를 사용한다.

[Flex Code sample]

import flash.net.Socket;  //socket

public var m_socket:Socket = new Socket();

//------------------------------------- send data to application
  private function SendData(data:String):void
  {
   m_socket.writeUTFBytes(data);
   m_socket.flush();
  }

//------------------------------------- socket connet
  private function connect():void
  {
   if(m_socket.connected==false)
   {
    m_socket.addEventListener(ProgressEvent.SOCKET_DATA,ReceiveData);
    m_socket.connect(HostIP,Port);
   }
  }

//--------------------------------------- data receive
  private function ReceiveData(progressEvent:ProgressEvent):void
  {
   var rd:ByteArray = new ByteArray;
   m_socket.readBytes(rd);
   ProcessData(rd);
  }