항공 정보 시스템을 개발 프로젝트에 참여 하게 되었습니다.

기본개념을 알아야 할것 같아서 다시 정리해보겠습니다.


1. ASTERIX 정의 

ASTERIX stands for All Purpose STructured Eurocontrol SuRveillance Information EXchange.

ASTERIX 는 모든 목적을 가지고 구조화 된 유로 컨트롤 감시 정보 시스템교환 입니다.

예를 들어, ATM 감시 데이터 메시지 형태..  감시와 자동 시스템 사이에 동기화된 정보를 전송이 

허락된 메시징 형태 이다.

ASTERIX 정의는 데이터 블록안에 있는 데이터의 조직안에 있는 정보의 각각의 비트를 부호화 함으로서, 

통신 중간 단에서 데이터 교환하는 구조체이다, 


2. 용도 

예를 들어 낮은 층에 속한 Wide Area Network (WAN) , Local Area Network (LAN) ,Internet protocol (IP) 

예를 들어 Mode-A 코드, Mode-C 코드 정보 를 생각해 보면, ASTERIX는

여러 다른 종류로 이루어진 어플리케이션 사이에 쉬운 데이터 교환을 하기위해서 최소한 요구사항이 특수화 되어있다.

전송정보는 특수 어플리케이션과 관련이 있다. 256 카테고리 에 정의되어 있다.

데이터 카테고리는 0~ 127 는 도시와 군사용 어플리케이션이다.

3.  카테고리의 정의 (B 에서 A를 보낸다)

 카테고리

 A

 B

Cat 19

 Multilateration System status Message

 Multilateration System

Status Messages 

Multilateraion ground stations 

Cat 20 

MLT message

Multilateration data

Multilateration ground stations

Cat 21

ADS-B Message

Monosensor target reports 

 ADS-B ground station



저작자 표시
신고

'기타 > 항공정보' 카테고리의 다른 글

ASTERIX 는 무엇인가??  (0) 2015.12.26

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret

Tutorial : Site

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 
/**
   * @method  public function setBillboard(bBillboard:Boolean = true,
 childName:String = null): void;
   * @brief  빌보드 속성을 설정하여 항상 카메라와 수평을 이루게 만든다.
   *      단, 스키닝 애니메이션이 적용된 객체에는 반영되지 않는다.
   * @return  void
   **/
  
  void setBillboard(vboolean a_bBillboard = TRUE);
  /**
   * @method  public function setBillboard(bBillboard:Boolean = true,
childName:String = null): void;
   * @brief  빌보드 속성을 설정하여 항상 카메라와 수평을 이루게 만든다.
   *      단, 스키닝 애니메이션이 적용된 객체에는 반영되지 않는다.
   * @param  a_sChildName : target이 될 child의 이름
   * @return  void
   **/
  void setBillboard(vboolean a_bBillboard, const String &a_sChildName);
  /**
   * @method  public function getBillboard(childName:String = null): Boolean;
   * @brief  빌보드 속성을 해제한다.
   * @return  빌보드 설정 유무
   **/

  vboolean getBillboard();

  /**
   * @method  public function getBillboard(childName:String = null): Boolean;
   * @brief  빌보드 속성을 해제한다.
   * @param  a_sChildName : target이 될 child의 이름
   * @return  빌보드 설정 유무
   **/

  vboolean getBillboard(const String &a_sChildName);
 
  /**
   * @method  public function getName(): String;
   * @brief  이름을 반환한다.
   * @return  이름의 문자열
   **/
cs


저작자 표시
신고

'기타 > C++ GUI' 카테고리의 다른 글

Billboarding Code  (0) 2015.11.03
C++ 예제 이벤트 클래스  (0) 2015.10.28
Good Class code using C++  (0) 2015.10.28
Image Transform(get,set)  (0) 2015.10.27

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret
C++ example Event Class 
마우스 클릭할 때 이미지가 움직이도록 이벤트 호출 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

// Event handler for mouse clicks.
//
class EB_clickEventHandler : public B::flash::events::EventListenerBase
{
    virtual void operator()(B::flash::events::IP_Event a_ipEvent)
    {
        B *pMain = (Main*)a_ipEvent->m_ipCurrentTarget.get();
 
        // Function 1. Start the timer and play animation.
        //
        if(a_ipEvent->m_ipTarget == pMain->txt)
        {
            pMain->clickEventHandler();
        }
        // Function 2. Reset the timer.
        //
        else if(a_ipEvent->m_ipTarget == pMain->txt2)
        {
            pMain->timer->reset();
        }
        // Function 3. Stop the timer.
        //
        else if(a_ipEvent->m_ipTarget == pMain->txt3)
        {
            pMain->timer->stop();
        }
    }
};
 
 
 
cs


저작자 표시
신고

'기타 > C++ GUI' 카테고리의 다른 글

Billboarding Code  (0) 2015.11.03
C++ 예제 이벤트 클래스  (0) 2015.10.28
Good Class code using C++  (0) 2015.10.28
Image Transform(get,set)  (0) 2015.10.27

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret

C++ 에서 클래스 만들 때 참고할 만한 코드 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68

/*Best Code graphic code */
class Box_0 : public B::flash::display::MovieClip
{
public:
    Box_0()
    {
        this->m_ipGraphics->lineStyle(20x000000);  /* 2 pixels, black border. */
        this->m_ipGraphics->beginFill(0xFF0000);     /* Fill inside red. */
        this->m_ipGraphics->drawRect(00300300);  /* 300 x 300 rectangle. */
        this->m_ipGraphics->endFill();
    }
};
 
 
// Good Code

class BMain : public B::flash::display::MainTimeLine {
 
public:
  /*!
   * @brief     기본 생성자
   * @param     a_nResIdxPos 리소스 아이디
   */
  explicit BMain(vuint8 a_nResIdxPos);
 
  /*!
   * @brief     기본 소멸자
   * @param     void
   */
  virtual ~BMain(void);
 
  /*!
   * @brief     프레임 액션 처리
   * @return    현재 프레임에 해당하는 액션 코드를 수행한다.
   * @param     void
   */
  virtual  void frameAction(void);
 
  /*!
   * @brief     프레임1 액션
   * @return    프레임1에 해당하는 액션 코드를 수행한다.
   * @param     void
   */
  void frame1();
 
 
  // Basic symbols.
    IP_Box_0 ch0;
    IP_Box_1 ch1;
    IP_Box_2 ch2;
 
    // Text fields for content description.
    B::flash::text::IP_TextField txt;
    B::flash::text::IP_TextField txt2;
    B::flash::text::IP_TextField txt3;
 
    // Timer instance for timer events.
    B::flash::utils::IP_Timer timer;
 
    void clickEventHandler();
    void enterFrameEventHandler();
    void moveTo();

};
 
 
cs


저작자 표시
신고

'기타 > C++ GUI' 카테고리의 다른 글

Billboarding Code  (0) 2015.11.03
C++ 예제 이벤트 클래스  (0) 2015.10.28
Good Class code using C++  (0) 2015.10.28
Image Transform(get,set)  (0) 2015.10.27

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret

Show on Gradation 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

void Main::draw(tia::flash::display::IP_Sprite sprite)
{
vuint red = 0xFF0000;
vuint green = 0x00FF00;
vuint blue = 0x0000FF; vint32 size = 300;
 
 ArrayInt gradColors;
 gradColors.push_back(red);
 gradColors.push_back(blue);
 gradColors.push_back(green);
 
 ArrayDouble gradAlphas;
 gradAlphas.push_back(1.0);
 gradAlphas.push_back(0.5);
 gradAlphas.push_back(1.0);
 
 ArrayInt gradRatios;
 gradRatios.push_back(0);
 gradRatios.push_back(200);
 gradRatios.push_back(255);
 
 tia::flash::geom::IP_Matrix    ipMatrix = new tia::flash::geom::Matrix();
 //ipMatrix->createGradientBox(50, 40, 45, 100, 30);
 ipMatrix->createBox(0.40.5452060);
 
 //    void Matrix::createBox  ( const vdouble64  a_dScaleX,  
                         // const vdouble64  a_dScaleY,  
                         // const vdouble64  a_dRotation = 0,  
                         // const vdouble64  a_dTx = 0,  
                         // const vdouble64  a_dTy = 0   
                         //) 
 
 sprite->m_ipGraphics->beginGradientFill(GRADIENT_TYPE_RADIAL, gradColors,
 gradAlphas, gradRatios, ipMatrix);
 sprite->m_ipGraphics->drawRect(00sizesize);
}
cs


 

 

 

 

Before 

After 


저작자 표시
신고

'기타 > C++ GUI' 카테고리의 다른 글

Billboarding Code  (0) 2015.11.03
C++ 예제 이벤트 클래스  (0) 2015.10.28
Good Class code using C++  (0) 2015.10.28
Image Transform(get,set)  (0) 2015.10.27

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret

1. Data Logging 구성

String Data(기존 Master) Module Data(기존 Slave)를 각각 저장하기

 

2. Flow chart

 

 

2. 화면 GUI 예시

 



** 파일 path : "c:\...\ 폴더명"   

사용자가 파일 Path 누르면.. 파일다이얼로그 열리도록 구현한다.



3. 구성방법

1) 쓰레드 1, 쓰레드 2 생성

2) 한 쓰레드 --> Main, Slave 나누어 동작..?



4. 저장범위

 - Main :  String Inform, String Status Flag, String I/O Status

 - Slave :  Mod Inform, Mod Status
























 

 

저작자 표시
신고

'기타 > Work Report' 카테고리의 다른 글

데이터 로깅 구성안  (0) 2015.01.08

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret


소스트리 사용중에 프로젝트 파일의 변경사항을 늘 커밋하다보면,. 잘못된 사항을 삭제해야 될 경우가 있다.

이럴 땐..

1) 우클릭을 하고, 해당 커밋으로 현재 브랜치 이동을 선택한다.


2) 커밋 되돌리기 창이 나온다. 이 동작은 이전 커밋으로 돌아가는 액션이다.

Using mode : Mixed- keep working copy but reset index

이 항목을 선택하면 된다.

 


저작자 표시
신고

'기타 > SourceTree' 카테고리의 다른 글

sourcetree 의 커밋 상태 변경  (0) 2014.12.11

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret

[출처]

http://stackoverflow.com/questions/3768300/inno-setup-disabling-components-based-on-pc-architecture

 

 

Step 1. 허용가능한 32비트, 64 비트 설정

 

ArchitecturesAllowed=x86 x64 ia64
ArchitecturesInstallIn64BitMode=x64 ia64

 

Step 2. 사용자 컴퓨터를 인지하여 설치 과정에서 보여준다.

 

[Components]
Name: Bin_32; Description: 32-bit; Types: full; Check: IsX86; Flags: dontinheritcheck
Name: Bin_64; Description: 64-bit; Types: full; Check: IsX64; Flags: dontinheritcheck

[Code]
function IsX64: Boolean;
begin   
  Result := Is64BitInstallMode and (ProcessorArchitecture = paX64);
end;
function IsX86: Boolean;
begin
  Result := (Is64BitInstallMode=false) and (ProcessorArchitecture = paX86);
end;

Step 3. 설치되는 파일에서 반드시 Check: not Is64BitInstallMode 구문 표시해야 한다.

[Files]

Source: "C:\Users\Brownie\Desktop\MPower_Exe\bin\N_TECH BMS 0.14.exe"; DestDir: "{app}"; Check: not Is64BitInstallMode
Source: "C:\Users\Brownie\Desktop\MPower_Exe\bin\N_TECH BMS 0.14-x64.exe"; DestDir: "{app}";  DestName: "N_TECH BMS 0.14.exe"; Check: Is64BitInstallMode

 

 

 

 

저작자 표시
신고

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret