주요 콘텐츠

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

상태 계층 구조를 사용하여 다중 수준 상태 복잡도 설계하기

다중 수준 상태 복잡도를 관리하려면 Stateflow® 차트에서 계층 구조를 사용하십시오. 계층 구조를 사용하면 시스템에서 여러 수준의 하위 컴포넌트를 표현할 수 있습니다.

상태 계층 구조 예제

예를 들어, 이 차트에는 세 개의 계층 구조가 있습니다. 한 상태를 다른 상태의 경계 내에 그리는 것은 안쪽 상태가 바깥쪽 상태(또는 상위 상태)의 하위 상태(또는 자식)임을 나타냅니다. 바깥쪽 상태는 안쪽 상태의 부모입니다.

Chart the contains three levels of hierarchy.

이 예제에서 차트는 상태 Car_done의 부모입니다. 상태 Car_doneCar_made 상태와 Car_shipped 상태의 부모 상태입니다. 상태 Car_madeParts_assembled 상태와 Painted 상태의 부모입니다. 즉, 상태 Parts_assembled와 상태 PaintedCar_made 상태의 자식입니다.

Stateflow 계층 구조를 텍스트로 표현하기 위해서는, 슬래시 문자(/)를 사용하여 차트를 표현하고 마침표(.)를 사용하여 상태 계층 구조의 각 수준을 구분합니다. 다음 목록은 앞의 예제에서 제공된 객체의 계층 구조를 텍스트로 표현한 것입니다.

  • /Car_done

  • /Car_done.Car_made

  • /Car_done.Car_shipped

  • /Car_done.Car_made.Parts_assembled

  • /Car_done.Car_made.Painted

하위 상태와 상위 상태 만들기

하위 상태는 부모라고 하는 다른 상태가 활성 상태인 경우에만 활성화할 수 있는 상태입니다. 하위 상태를 가지고 있는 상태를 상위 상태라고 합니다. 하위 상태를 만들려면 State 툴을 클릭하고 새 상태를 상위 상태가 될 상태 안에 끌어서 놓습니다. Stateflow 차트는 지정된 부모 상태의 내부에 하위 상태를 생성합니다. 이러한 방식으로 상태를 원하는 깊이까지 중첩할 수 있습니다. 하위 상태의 부모를 변경하려면 차트에서 현재 부모에서 끌어서 새 부모 안에 놓습니다.

참고

부모 상태는 모든 하위 상태를 수용할 만큼 그래픽적으로 충분히 커야 합니다. 새 하위 상태를 끌어서 놓기 전에 부모 상태의 크기를 조정해야 할 수 있습니다. 상위 상태를 서브차트로 선언하여 시각적으로 크기가 큰 상태가 필요하지 않도록 할 수 있습니다. 자세한 내용은 Encapsulate Modal Logic by Using Subcharts 항목을 참조하십시오.

상태에 포함될 수 있는 객체

상태에는 기타 모든 Stateflow 객체가 포함될 수 있습니다. Stateflow 차트 표기법은 포함 관계를 사용하여 Stateflow 차트에서 그래픽 객체 계층 구조 표현을 지원합니다. 한 상태가 다른 상태를 포함하면 해당 상태는 상위 상태입니다. 한 상태가 다른 상태에 포함되면 해당 상태는 하위 상태입니다. 상위 상태도 아니고 다른 상태의 하위 상태도 아닌 상태는 Stateflow 차트 자체를 부모로 하는 상태입니다.

상태에는 비그래픽 데이터 객체, 이벤트 객체, 메시지 객체도 포함될 수 있습니다. 이러한 포함 계층 구조는 모델 탐색기에 표시됩니다. 부모 객체를 지정하여 데이터, 이벤트, 메시지 포함을 정의할 수 있습니다.

참고 항목

도움말 항목