|
@@ -11,7 +11,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
|
|
|
|
|
//int GetIOTable( SIOTABLE* Input, SIOTABLE* Output )=0;
|
|
//int GetIOTable( SIOTABLE* Input, SIOTABLE* Output )=0;
|
|
|
|
|
|
|
|
- int LoadIOMap( string strFileName );
|
|
|
|
|
|
|
+ int LoadIOMap(string strFileName);
|
|
|
|
|
|
|
|
//int SetEtherCatAddress( int* iEcOut, int* iEcIn ) = 0;
|
|
//int SetEtherCatAddress( int* iEcOut, int* iEcIn ) = 0;
|
|
|
|
|
|
|
@@ -31,7 +31,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @return 0 : SUCCESS
|
|
* @return 0 : SUCCESS
|
|
|
else : Device \Error 코드
|
|
else : Device \Error 코드
|
|
|
*/
|
|
*/
|
|
|
- int GetBit( uint usIOAddr, bool pbval );
|
|
|
|
|
|
|
+ int GetBit(uint usIOAddr, bool pbval);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* Hilscher Board와의 Communication을 종료하고 Device Driver를 Close한다.
|
|
* Hilscher Board와의 Communication을 종료하고 Device Driver를 Close한다.
|
|
@@ -48,7 +48,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @return TRUE : ON
|
|
* @return TRUE : ON
|
|
|
FALSE : ON이 아님
|
|
FALSE : ON이 아님
|
|
|
*/
|
|
*/
|
|
|
- bool IsOn( uint usIOAddr );
|
|
|
|
|
|
|
+ bool IsOn(uint usIOAddr);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* I/O Device의 Digital Status (Bit) 를 읽어들여 리턴한다.
|
|
* I/O Device의 Digital Status (Bit) 를 읽어들여 리턴한다.
|
|
@@ -57,7 +57,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @return TRUE : OFF
|
|
* @return TRUE : OFF
|
|
|
FALSE : OFF가 아님
|
|
FALSE : OFF가 아님
|
|
|
*/
|
|
*/
|
|
|
- bool IsOff( uint usIOAddr );
|
|
|
|
|
|
|
+ bool IsOff(uint usIOAddr);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* Output Device에 On Command (Bit = 1) 를 보낸다.
|
|
* Output Device에 On Command (Bit = 1) 를 보낸다.
|
|
@@ -65,7 +65,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param usIOAddr : IO Address
|
|
* @param usIOAddr : IO Address
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int OutputOn( uint usIOAddr );
|
|
|
|
|
|
|
+ int OutputOn(uint usIOAddr);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* Output Device에 Off Command (Bit = 0) 를 보낸다.
|
|
* Output Device에 Off Command (Bit = 0) 를 보낸다.
|
|
@@ -73,7 +73,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param usIOAddr : IO Address
|
|
* @param usIOAddr : IO Address
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int OutputOff( uint usIOAddr );
|
|
|
|
|
|
|
+ int OutputOff(uint usIOAddr);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* Output Device의 Digital Status가 Set이면 (Bit = 0), Output Device에 On Command (Bit = 1) 를 보내고,
|
|
* Output Device의 Digital Status가 Set이면 (Bit = 0), Output Device에 On Command (Bit = 1) 를 보내고,
|
|
@@ -82,7 +82,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param usIOAddr : IO Address
|
|
* @param usIOAddr : IO Address
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int OutputToggle( uint usIOAddr );
|
|
|
|
|
|
|
+ int OutputToggle(uint usIOAddr);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 연속된 8개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue pointer에 넘겨준다.
|
|
* 연속된 8개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue pointer에 넘겨준다.
|
|
@@ -91,7 +91,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param pcValuse : 연속된 8개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue에 저장한다.
|
|
* @param pcValuse : 연속된 8개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue에 저장한다.
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int GetByte( uint usIOAddr, byte pcValue );
|
|
|
|
|
|
|
+ int GetByte(uint usIOAddr, byte pcValue);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 연속된 8개의 IO Address로 구성된 Output Device들에 On or Off Command를 보낸다.
|
|
* 연속된 8개의 IO Address로 구성된 Output Device들에 On or Off Command를 보낸다.
|
|
@@ -100,7 +100,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param pcValuse : Output Device에 보낼 Command를 저장하고 있는 변수이다.
|
|
* @param pcValuse : Output Device에 보낼 Command를 저장하고 있는 변수이다.
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int PutByte( uint usIOAddr, byte pcValue );
|
|
|
|
|
|
|
+ int PutByte(uint usIOAddr, byte pcValue);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 연속된 16개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue pointer에 넘겨준다.
|
|
* 연속된 16개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue pointer에 넘겨준다.
|
|
@@ -109,7 +109,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param pwValuse : 연속된 16개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue에 저장한다.
|
|
* @param pwValuse : 연속된 16개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue에 저장한다.
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int GetWord( uint usIOAddr, short pwValue );
|
|
|
|
|
|
|
+ int GetWord(uint usIOAddr, short pwValue);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 연속된 16개의 IO Address로 구성된 Output Device들에 On or Off Command를 보낸다.
|
|
* 연속된 16개의 IO Address로 구성된 Output Device들에 On or Off Command를 보낸다.
|
|
@@ -118,7 +118,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param pwValuse : Output Device에 보낼 Command를 저장하고 있는 변수이다.
|
|
* @param pwValuse : Output Device에 보낼 Command를 저장하고 있는 변수이다.
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int PutWord( uint usIOAddr, short pwValue );
|
|
|
|
|
|
|
+ int PutWord(uint usIOAddr, short pwValue);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* I/O Device의 Digital Status (Bit) 를 읽어드린다.
|
|
* I/O Device의 Digital Status (Bit) 를 읽어드린다.
|
|
@@ -128,7 +128,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @return 0 : SUCCESS
|
|
* @return 0 : SUCCESS
|
|
|
else : Device \Error 코드
|
|
else : Device \Error 코드
|
|
|
*/
|
|
*/
|
|
|
- int GetBit( string strIOAddr, bool pbVal );
|
|
|
|
|
|
|
+ int GetBit(string strIOAddr, bool pbVal);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* I/O Device의 Digital Status (Bit) 를 읽어들여 Bit = 1이면, TRUE(1)를 Return하고, Bit = 0이면 FALSE(0)를 Return한다.
|
|
* I/O Device의 Digital Status (Bit) 를 읽어들여 Bit = 1이면, TRUE(1)를 Return하고, Bit = 0이면 FALSE(0)를 Return한다.
|
|
@@ -139,7 +139,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
others : IO값 읽어오기 실패
|
|
others : IO값 읽어오기 실패
|
|
|
*/
|
|
*/
|
|
|
//int IsOn( string strIOAddr, bool pbVal );
|
|
//int IsOn( string strIOAddr, bool pbVal );
|
|
|
- bool IsOn( string ioTag, bool isInput = true );
|
|
|
|
|
|
|
+ bool IsOn(string ioTag, bool isInput = true);
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -151,7 +151,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
others : IO값 읽어오기 실패
|
|
others : IO값 읽어오기 실패
|
|
|
*/
|
|
*/
|
|
|
//int IsOff( string strIOAddr, bool pbVal );
|
|
//int IsOff( string strIOAddr, bool pbVal );
|
|
|
- bool IsOff( string ioTag, bool isInput = true );
|
|
|
|
|
|
|
+ bool IsOff(string ioTag, bool isInput = true);
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -160,7 +160,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param strIOAddr : IO Address String (ex, "1000:START_SW")
|
|
* @param strIOAddr : IO Address String (ex, "1000:START_SW")
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int OutputOn( string outputTag );
|
|
|
|
|
|
|
+ int OutputOn(string outputTag);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* Output Device에 Off Command (Bit = 0) 를 보낸다.
|
|
* Output Device에 Off Command (Bit = 0) 를 보낸다.
|
|
@@ -168,7 +168,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param strIOAddr : IO Address String (ex, "1000:START_SW")
|
|
* @param strIOAddr : IO Address String (ex, "1000:START_SW")
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int OutputOff( string outputTag );
|
|
|
|
|
|
|
+ int OutputOff(string outputTag);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* Output Device의 Digital Status가 Set이면 (Bit = 0), Output Device에 On Command (Bit = 1) 를 보내고,
|
|
* Output Device의 Digital Status가 Set이면 (Bit = 0), Output Device에 On Command (Bit = 1) 를 보내고,
|
|
@@ -177,7 +177,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param strIOAddr : IO Address String (ex, "1000:START_SW")
|
|
* @param strIOAddr : IO Address String (ex, "1000:START_SW")
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int OutputToggle( string strIOAddr );
|
|
|
|
|
|
|
+ int OutputToggle(string strIOAddr);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 연속된 8개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue pointer에 넘겨준다.
|
|
* 연속된 8개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue pointer에 넘겨준다.
|
|
@@ -186,7 +186,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param pcValuse : 연속된 8개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue에 저장한다.
|
|
* @param pcValuse : 연속된 8개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue에 저장한다.
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int GetByte( string strIOAddr, byte pcValue );
|
|
|
|
|
|
|
+ int GetByte(string strIOAddr, byte pcValue);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 연속된 8개의 IO Address로 구성된 Output Device들에 On or Off Command를 보낸다.
|
|
* 연속된 8개의 IO Address로 구성된 Output Device들에 On or Off Command를 보낸다.
|
|
@@ -195,7 +195,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param pcValuse : Output Device에 보낼 Command를 저장하고 있는 변수이다.
|
|
* @param pcValuse : Output Device에 보낼 Command를 저장하고 있는 변수이다.
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int PutByte( string strIOAddr, byte pcValue );
|
|
|
|
|
|
|
+ int PutByte(string strIOAddr, byte pcValue);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 연속된 16개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue pointer에 넘겨준다.
|
|
* 연속된 16개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue pointer에 넘겨준다.
|
|
@@ -204,7 +204,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param pwValuse : 연속된 16개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue에 저장한다.
|
|
* @param pwValuse : 연속된 16개의 IO Address로 구성된 Input Device 들의 Digital Status를 읽어들여 pcValue에 저장한다.
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int GetWord( string strIOAddr, short pwValue );
|
|
|
|
|
|
|
+ int GetWord(string strIOAddr, short pwValue);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 연속된 16개의 IO Address로 구성된 Output Device들에 On or Off Command를 보낸다.
|
|
* 연속된 16개의 IO Address로 구성된 Output Device들에 On or Off Command를 보낸다.
|
|
@@ -213,7 +213,7 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
* @param pwValuse : Output Device에 보낼 Command를 저장하고 있는 변수이다.
|
|
* @param pwValuse : Output Device에 보낼 Command를 저장하고 있는 변수이다.
|
|
|
* @return 0 = Success, 그외 = Error Number
|
|
* @return 0 = Success, 그외 = Error Number
|
|
|
*/
|
|
*/
|
|
|
- int PutWord( string strIOAddr, short pwValue );
|
|
|
|
|
|
|
+ int PutWord(string strIOAddr, short pwValue);
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* Incoming Buffer를 Update하고, Outgoing Buffer의 내용을 Physical I/O에 적용하는 IOThread를 Run한다.
|
|
* Incoming Buffer를 Update하고, Outgoing Buffer의 내용을 Physical I/O에 적용하는 IOThread를 Run한다.
|
|
@@ -233,5 +233,8 @@ namespace VehicleControlSystem.ControlLayer.IO
|
|
|
|
|
|
|
|
bool IsDeviceOpened();
|
|
bool IsDeviceOpened();
|
|
|
|
|
|
|
|
|
|
+ void WriteOutputIO(string tag, bool on, int after = 0);
|
|
|
|
|
+ bool WaitChangeInputIO(bool exp, int timeout, string tag);
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|