가) IRIS 기본 프레임의 구조


Tree, Auto report View는 Iris에 정의되어 있고, Topology, Shelf View는 프로젝트 마다 따로 정의 되어 있다. Auto report View는 탭뷰 형식으로 되어있고 기본으로 현재 알람 탭, 자동보고 탭, 명령 이벤트 탭으로 구성된다.
탭 | 기능 |
---|---|
현재 알람 탭 | EMS가 장비에 알람을 조회 |
자동 보고 탭 | EMS의 요청 없이 장비에서 알람을 통보 |
명령 이벤트 탭 | 사용자가 장비에 설정명령을 내린 명령 이력 |
나) IrisFrameWnd
다) Tool bar View
-
Tool bar Load
Z:\ATOM\branches\ellie\MainFrm.cpp의 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 함수에서 Tool bar가 Load 된다.
함수 기능 Iris3ab_SetToolbarEmptyBack 툴바 이미지의 너비 지정 Iris3ab_SetToolbarMarkWidth 툴바의 모든 버튼의 크기 지정 Iris3ab_SetButtonGap 버튼과 버튼사이의 기본 간격 지정 Iris3ab_AddDefaultToolbarBack 툴바의 기본 이미지 지정 Iris3ab_AddToolbarBack 툴바의 노드 타입별 이미지 지정 Iris3ab_AddToolbarButton 툴바 버튼 추가 Iris3ab_AddToolbarSeparator 버튼 separator 추가
-
Tool bar Click 시 동작
라) Tree View
마) Auto report View
-
Auto report View class
View_AutoReport class가 MetaObserver, ElementObserver을 상속 받으므로 여기서 받은 알람의 필터링 처리 후 AutoReportPage class을 반환하여 이 페이지를 탭뷰에 추가해서 보여주는 형식
-
Auto report View Load

- CAutoReport::Init() function

바) Shelf View
- Shelf View 초기화

- Shelf View Observer 등록

Element Observer를 통해 notify되는 ElementUpdate_CHANGE_CURRENT를 수신한 경우 void cbOnNodeChange(ElementNode* pCurrentNode, int* pTab) 함수가 호출된다. network view 보다 먼저 shelf view가 observer에 등록된다.
사) Topology View
- Topology View Load
