RTCBuilder는 OpenRTM-aist에 포함되는 개발툴의 하나로 RTC의 프로파일 정보에서 RTC의 소스 코드를 생성할 수 있습니다. C++、Python、Java등의 프로그램 언어에 대응하고 있습니다. 또, Eclipse 통합 개발 환경의 플러그 인으로서 작성되고 있어 Eclipse 상에서 기존의 플러그 인과 무결절적으로 조작할 수 있습니다.
RTCBuilder 의 동작에 필요한 환경은 아래와 같습니다.
| № | 환경 | 비고 |
| 1 | Java Development Kit 6 | 주의:Java1.5(5.0)에서 동작하지 않습니다. |
| 2 | Eclipse 3.4.2이상 http://www.eclipse.org/downloads/index.php http://archive.eclipse.org/eclipse/downloads/index.php |
Eclipse본체 |
| 3 | Eclipse EMF 2.2이상(SDO,XSD포함) | RTCBuilder가 의존하는 Eclipse플러그 인 ※'사용하는 Eclipde의 버전에 맞춰 사용해 주십시오. |
| 4 | Eclipse GEF 3.2이상(Draw2D포함) | RTCBuilder가 의존하는 Eclipse 플러그인 ※사용하는 Eclipse버전에 맞춰 사용해 주십시오 |
| 5 | Eclipse Java development tools(JDT) | ※''사용하는 Eclipse버전에 맞춰 사용해 주십시오. |
또한, 이하의 개발 언어 환경에 의해 아래의 환경을 인스톨 해 두는것이 편리합니다.
| № | 환경 | 비고 |
| 1 | Eclipse CDT | C++용 개발환경 |
| 2 | Pydev for Eclipse | python용 개발환경 |
RTCBuilder 은, OpenRTM-aist 을 대상으로 개발된 것입니다. 기타의 RTC 플랫폼에 대한 동작은 상정하고 있지 않습니다.
인스톨 후, Eclipse를 처음으로 기동하면, 이하와 같은 Welcome 페이지가 표시됩니다.
이 Welcome 페이지를 왼쪽 상단의 「X」에 의해 닫으면 이하의 페이지가 표시됩니다.
오른쪽 상단의 「Open Perspective」버튼을 클릭해, 풀다운의 「Other…」버튼을 클릭합니다.

「RTC Builder」를 선택하는 것으로, RTCBuilder가 기동됩니다.
우선, RT 컴포넌트를 작성하기 위한 Eclipse 프로젝트를 작성합니다. 화면상부의 메뉴로부터 [File]-[New]-[Project]를 선택합니다.

표시된「New Project」화면에서, [Other]-[RTC Build]를 선택해,「Next」를 클릭.

「Project name」에 작성하는 프로젝트명을 입력하고 [Finish]를 클릭.

지정한 프로젝트 이름의 프로젝트가 생성되어 패키지 익스플로어에 추가됩니다.

생성한 프로젝트에는, 디폴트 값이 설정된 RTC 프로파일 XML(RTC.xml)가 자동적으로 생성됩니다.
RTC 프로파일 에디터를 열려면 , 툴바의「 Open New RtcBuilder Editor 」버튼을 클릭하던가, 도구모음의 [file]-[Open New Builder Editor] 를 선택합니다.
![]() |
![]() |
| 툴바로부터 Open New RtcBuilder Editor | File 메뉴로부터 Open New Builder Editor |
RTCBuilder는 아래와 같이 구성되어 있습니다.
| 화면 요소명 | 설명 | |
| 1 | RTC 프로파일 에디터 | RT 컴퍼넌트의 사양인 프로파일, 데이터포트 정의, 서비스 포트 정의, 컨피규레이션 정의, 그 외 확장 프로파일을 편집합니다. |
| 2 | 빌드 뷰 | 편집중의 RT 컴퍼넌트 및 데이터포트, 서비스 포트, 서비스 인터페이스를 아이콘으로 그래피컬하게 표시합니다. |
| 3 | 리포지트리뷰 | 선택한 RT 리포지터리(repository)의 정보를 표시합니다. |
여기에서는, RT 프로파일 에디터에 대해 설명합니다.
RT프로파일 에디터는, 이하의 페이지로 구성되어 있습니다.
| No. | 화면 요소명 | 설명 |
| 1 | 기본 프로파일 입력 페이지 | RT컴퍼넌트의 프로파일 정보 등, 컴퍼넌트의 기본 정보를 입력합니다. |
| 2 | 액티비티·프로파일 | RT컴퍼넌트가 서포트하고 있는 액티비티 정보등을 지정합니다. |
| 3 | 데이터포트·프로파일 | RT 컴퍼넌트에 부속되는 데이터포트의 프로파일을 입력합니다. |
| 4 | 서비스 포트·프로파일 | RT 컴퍼넌트에 부속되는 서비스 포트 및 서비스 포트 부속되는 서비스 인터페이스의 프로파일을 입력합니다. |
| 5 | 컨피규레이션 | RT컴퍼넌트로 설정하는 유저 정의의 컨피규레이션·파라미터 세트 정보 및 시스템의 컨피규레이션 정보를 입력합니다. |
| 6 | 문서 생성 | 생성 대상의 RT컴퍼넌트에 추가하는 각종 문서 정보를 입력합니다. |
| 7 | 언어·환경 | 생성 대상의 코드 선택이나 OS등의 실행 환경에 관한 정보를 입력합니다. |
| 8 | RTC.xml | 설정된 정보를 기본으로 생성한 RtcProfile의 XML 형식으로의 표시·편집을 실시합니다. |
RT 컴퍼넌트의 프로파일 정보 등, 컴퍼넌트의 기본 정보를 입력하는 페이지입니다.
이하에 각 입력 항목에 대해 설명하겠습니다.
| 항목 | 설명 | 필수 |
| RT-Component Basic Profile | ||
| Module name | RT 컴퍼넌트를 식별하는 이름입니다.필수 입력 항목. 이 이름은, 생성되는 소스 코드중에서, 컴퍼넌트의 이름에 사용됩니다. 영문숫자로 입력해야만 합니다. | ○ |
| Module description | RT 컴퍼넌트의 간단한 개요 설명입니다. | - |
| Module version | RT 컴퍼넌트의 버전입니다.원칙 x.y.z 와 같은 형식에서 버젼 번호를 입력합니다.생략 가능 항목 | - |
| Module vender | RT 컴퍼넌트를 개발한 벤더명입니다. | ○ |
| Module category | RT 컴퍼넌트의 카테고리입니다. | ○ |
| Component type | RT컴퍼넌트의 형태입니다.이하의 선택사항중에서 지정 가능합니다. ·STATIC:정적으로 존재하는 타입의 RTC입니다.동적인 생성, 삭제는 행해지지 않습니다. ·UNIQUE:동적으로 생성·삭제는 할 수 있지만, 각 컴퍼넌트가 내부에 고유 상태를 보관 유지하고 있어, 반드시 교환 가능하지 않은 타입의 RTC입니다. ·COMMUTATIVE:동적으로 생성·삭제가 가능하고, 내부 상태를 가지지 않기 때문에, 생성된 컴퍼넌트가 교환 가능한 타입의 RTC입니다. |
○ |
| Component's activity type | RT컴퍼넌트의 액티비티 타입입니다.이하의 선택사항중에서 지정 가능합니다. ·PERIODIC :일정 주기에 RTC의 액션을 실행하는 액티비티 타입 ·SPORADIC :RTC의 액션을 부정기에 실행하는 액티비티 타입 ·EVENT_DRIVEN :RTC의 액션이 이벤트 드리븐인 액티비티 타입 |
○ |
| Component kind | RT컴퍼넌트의 실행 형태의 종류입니다.이하의 선택사항으로부터 선택 가능합니다.(복수 선택사항의 편성가능) ·DataFlow : 주기적으로 액션을 실행하는 실행 형태 ·FSM : 외부 이벤트에 의해서 액션을 실행하는 형태 ·MultiMode : 복수의 동작 모드를 가지는 실행 형태 |
○ |
| Number of maximum instance | RT 컴퍼넌트 인스턴스의 최대수입니다.자연수를 입력해 주세요. | - |
| Execution type | ExecutionContext의 형태입니다. 이하로부터 선택 가능합니다.·PeriodicExecutionContext : 주기 실행을 실시하는 ExecutionContext·ExtTrigExecutionContext : 외부 트리거에 의해서 실행을 실시하는 ExecutionContex | ○ |
| Execution Rate | ExecutionContext의 실행 주기입니다.정의 double형의 수치가 입력 가능합니다(단위 Hz). | - |
| Abstract | RT컴퍼넌트에 관한 설명입니다. | |
| RTC Type | 특정 기능을 실현하는 RT컴퍼넌트를 구별할 필요가 있는 경우로 지정합니다. | |
| Output Project | ||
| 생성 코드의 출력 대상 프로젝트명입니다.설정한 프로젝트가 존재하는 경우에는, 그 프로젝트내에, 설정한 프로젝트가 존재하지 않는 경우에는, 신규 프로젝트를 생성합니다. | ○ | |
생성 대상의 RT컴퍼넌트가 서포트하고 있는 액티비티에 관한 정보를 입력하는 페이지입니다.
Documentation 섹션의 내용은, 액티비티마다 설정합니다.Documentation 섹션에는 선택중의 액티비티에 대응한 내용이 표시됩니다.
이하에 각 입력 항목에 대해 설명하겠습니다.
| 항목 | 설명 | 필수 |
| Activity Profile | ||
| on_initialize | 초기화 처리입니다. 컴포넌터 라이프 사이클의 개시시에 한 번만 불립니다. | - |
| on_finalize | 종료 처리입니다. 컴포넌트 라이프 사이클의 종료시에 한번만 불립니다. | - |
| on_startup | ExecutionContext가 실행을 개시할 때 한번만 불립니다. | - |
| on_shutdown | ExecutionContext가 실행을 정지할 때 한번만 불립니다. | - |
| on_activated | 비액티브 상태로부터 액티브 될 때 한번만 불립니다. | - |
| on_deactivated | 액티브 상태로부터 비액티브화 될 때 한번만 불립니다. | - |
| on_aborting | ERROR 상태에 들어가기 전에 한번만 불립니다. | - |
| on_error | ERROR 상태에 있는 동안에 불립니다. | - |
| on_reset | ERROR 상태로부터 리셋트 되어 비액티브 상태로 이행할 때 한번만 불립니다. | - |
| on_execute | 액티브 상태시에 주기적으로 불립니다. | - |
| on_state_update | on_execute후 매회 불립니다. | - |
| on_rate_changed | ExecutionContext의 rate가 변경되었을 때 불립니다. | - |
| on_action | 대응하는 상태에 대응하는 동작을 실행하기 위해서 불립니다. | - |
| on_mode_changed | 모드가 변경되었을 때에 불립니다. | |
| Documentation | ||
| 액티비티명 | 현재 선택되고 있는 액티비티의 명칭을 표시합니다. | - |
| 동작 개요 | 대상 액티비티가 실행하는 동작의 개요 설명을 기술합니다. | - |
| 사전 조건 | 대상 액티비티를 실행하기 전에 성립해야 할 사전 조건을 기술합니다. | - |
| 사후 조건 | 대상 액티비티를 실행한 후에 성립하는 사후 조건을 기술합니다. 다만, 사전 조건이 채워지지 않은 상태로 대상 액티비티가 실행되었을 경우는 사후 조건의 성립은 보증되지 않습니다. | - |
RT 컴퍼넌트에 부속되는 데이터포트의 정보를 입력하는 페이지입니다.
각 포트 (InPort/OutPort)를 신규에 추가하는 경우는, 각 섹션의「 Add 」버튼을 눌러 주세요. 또, 각 섹션의 「 Delete 」버튼을 누르면, 선택중의 포트를 삭제할 수 있습니다. 문서 섹션의 내용은 포트마다 설정하는 것이 가능합니다. 문서 섹션에는, 선택하고 있는 포트에 대응한 내용이 표시됩니다. 이하에 각 입력 항목에 대해 설명하겠습니다.
| 항목 | 설명 | 필수 |
| DataPort Profile | ||
| Port name | DataPort의 명칭입니다. 반각영숫자만 입력 가능합니다. Data OutPort, Service Port와 아울러 포트 명칭은 중복 할 수 없습니다. |
○ |
| Detail | ||
| Port name | 현재 선택되고 있는 DataPort를 「 Port Name(InPort/OutPort) 」의 형식으로 표시합니다. | - |
| Data Type | DataPort가 취급하는 데이터형입니다. 설정 화면에서 지정한 IDL내에서 정의되고 있는 데이터형이 이용 가능합니다. |
○ |
| Var Name | DataPort에 대응하는 변수명입니다. | - |
| Disp. Position | 빌드 뷰내에서의 DataPort의 표시 위치입니다. | ○ |
| Port description | 데이터 포트에 대한 개요설명을 기술합니다. | - |
| Port type | 데이터 포트가 취급하는 데이터 형에 대한 설명을 기술합니다. | - |
| Number of data | 데이터가 배열이 되는 경우 등, 데이터 수에 관한 설명을 기술합니다. | - |
| Semantics | 데이터의 의미의 설명을 기술합니다. | - |
| Unit | 데이터 단위에 관한 설명을 기술합니다. | - |
| Occurrence frequency, Period | 데이터의 발생 빈도, 주기에 관한 설명을 기술합니다. | - |
| Operational frequency, Period | 데이터의 처리 속도, 처리 주기에 관한 설명을 기술합니다. | - |
RT 컴퍼넌트에 부속되는 서비스 포트의 정보를 입력하는 페이지입니다.
신규 서비스 포트는, 화면 좌측 「 RT-Component Service Ports 」란의「 Add Port 」를 선택하는 것으로 추가할 수 있습니다. 화면 좌측 「 RT-Component Service Ports 」에서 서비스 포트를 선택한 상태로,「Add Interface 」를 선택하는 것으로 신규 서비스 인터페이스를 추가할 수 있습니다. 화면 좌측 「 RT-Component Service Ports 」에서, 서비스 포트 혹은 서비스 인터페이스를 선택한 상태로 「 Delete 」를 선택하는 것으로, 선택한 포트/인터페이스를 삭제할 수 있습니다. 이하에 각 입력 항목에 대해 설명하겠습니다.
| 항목 | 설명 | 필수 |
| RT-Component Service Port Profile | ||
| Name | 서비스 포트의 명칭입니다. 반각영숫자만 입력 가능합니다. Data InPort, Data OutPort, Service Port 명칭은 중복 할 수 없습니다. |
○ |
| Position | 빌드 뷰내에서의 서비스 포트의 표시 위치입니다. | ○ |
| Documentation | ||
| Description | 서비스 포트에 대한 개요 설명을 기술합니다. | - |
| I/F Description | 서비스 포트에 부속되는 서비스 인터페이스의 개요 설명을 기술합니다. | - |
| 항목 | 설명 | 필수 |
| RT-Component Service Port Interface Profile | ||
| Interface Name | 서비스 인터페이스의 명칭입니다. 반각영숫자만 입력 가능합니다. 서비스 인터페이스명은 중복 할 수 없습니다. |
○ |
| Direction | 서비스 인터페이스의 종류입니다. 이하의 선택사항으로부터 선택 가능합니다. ·Provided:제공 인터페이스(Service Provider용) ·Required:요구 인터페이스(Service Consumer용) |
○ |
| Instance Name | 서비스 인터페이스의 인스턴스명입니다. 반각영숫자만 입력 가능합니다. | ○ |
| Var Name | 서비스 인터페이스의 변수명입니다. 생략 되었을 경우는, 인스턴스명을 사용합니다. | - |
| IDL file | 서비스 인터페이스로 사용하는 IDL 파일명을 지정합니다. 「Browse...」버튼을 클릭하면, 파일 선택 다이얼로그가 표시됩니다. | ○ |
| Interface Type | 서비스 인터페이스로 사용하는 서비스의 형태입니다. IDL file를 지정하면 IDL내에서 정의되고 있는 형태 정보가 표시됩니다. 반각영숫자만 입력 가능합니다. | ○ |
| IDL Path | IDL의 서치 패스입니다. 「Browse...」버튼을 클릭하면, 디렉토리 선택 다이얼로그가 표시됩니다. | - |
| Documentation | ||
| Description | 서비스 인터페이스에 대한 개요 설명을 기술합니다. | - |
| Argument | 서비스 인터페이스의 인수에 관한 설명을 기술합니다. | - |
| Return value | 서비스 인터페이스의 리턴값에 관한 설명을 기술합니다. | - |
| Exception | 서비스 인터페이스의 예외에 관한 설명을 기술합니다. | - |
| Precondition | 서비스 인터페이스의 오퍼레이션을 실행전에 만족 되어야 할 사전 조건에 관한 설명을 기술합니다. | - |
| Postcondition | 서비스 인터페이스의 오퍼레이션을 실행 후에 만족되는 사후 조건에 관한 설명을 기술합니다. | - |
RT 컴퍼넌트에 설정하는 유저 정의의 컨피규레이션·파라미터 정보 및 그 외 시스템의 컨피규레이션 정보를 입력하는 페이지입니다.
유저 정의 컨피규레이션·파라미터 정보 및 시스템·컨피규레이션 정보를 신규에 추가하는 경우는, 각 섹션의「Add」버튼을 눌러 주세요.또, 각 섹션의 「Delete」버튼을 누르면, 선택중의 컨피규레이션 정보를 삭제할 수 있습니다.
Detail 섹션 및 Documentation 섹션의 내용은, 유저 정의 컨피규레이션·파라미터마다 설정하는 것이 가능합니다. 각 섹션에는, 선택중의 유저 정의 컨피규레이션·파라미터로 설정한 내용이 표시됩니다.
이하에 각 입력 항목에 대해 설명하겠습니다.
| 항목 | 설명 | 필수 |
| RT-Component Configuration Parameter Definitions | ||
| Name | 유저 설정의 컨피규레이션・파라메터의 명칭입니다. 반각영숫자만 입력가능합니다. 유저 정의 컨피규레이션・파라메터 명칭은 중복 할 수 없습니다. |
○ |
| Detail | ||
| Parameter name | 현재 선택되어 있는 유저 정의 컨피규레이션・파라메터를 표시합니다. | - |
| Type | 유저 정의 컨피규레이션・파라메터의 데이터 형입니다. 설정 화면에 지정된 IDL내에서 정의되어 있는 데이터형이 사용가능합니다. |
○ |
| Default Value | 유저 정의 컨피규레이션・파라메터의 디폴트 값입니다. 2바이트 문자를 포함한 임의의 값을 지정 할 수 있습니다. | ○ |
| Variable name | 유저 정의 컨피규레이션・파라메터의 변수명입니다. 반각영숫자만 입력 가능합니다. | - |
| Unit | 유저 정의 컨피규레이션・파라메터의 단위입니다. | - |
| Constraint | 유저 정의 컨피규레이션・파라메터에 대한 제약 조건을 기술합니다. 제약조건의 기술 방법에 대해서는 제약정보의 기술방식을 참조해 주세요 | - |
| Widget | RTSystemEditor의 ConfigurationView에서 유저 정의 컨피규레이션・파라메터를 설정할 때에 이용하는 컨트롤을 지정합니다. 이하의 값에서 선택 가능합니다. ・text:텍스트 박스(디폴트 설정) ・slider:슬라이더 ・spin:스핀 버튼 ・radio:라디오 버튼 |
○ |
| Step | 입력용 컨트롤로서 「slider」를 선택했을 경우에, 슬라이더의 폭을 지정합니다. | - |
| Data name | 유저 정의 컨피규레이션・파라메터의 명칭에 대한 설명을 기술합니다. | - |
| Default value | 유저 정의 컨피규레이션・파라메터의 디폴트 값에 대한 설명을 기술합니다. | - |
| Description | 유저 정의 컨피규레이션・파라메터에 대한 개요 설명을 기술합니다. | - |
| Unit | 유저 정의 컨피규레이션・파라메터의 단위에 대한 설명을 기술합니다. | - |
| Data range | 유저 정의 컨피규레이션・파라메터의 데이터 범위에 관한 설명을 기술합니다. | - |
| Constraint | 유저 정의 컨피규레이션・파라메터의 제약조건에 관한 설명을 기술합니다. | - |
| RT-Component Configuration Parameter | ||
| Configuration | 설정을 하는 컨피규레이션 명입니다. 일람에서 선택합니다. | ○ |
| Default Value | 설정 대상 컨피규레이션의 디폴트 값입니다. 미리 디폴트치가 설정되어 있는 항목에 대해서는 명칭 선택시에 디폴트치가 설정됩니다. | - |
생성 대상의 RT컴퍼넌트에 관한 각종 문서 정보를 입력합니다.
이 페이지로 입력된 정보는, 생성된 코드에 doxygen 형식으로 설정됩니다.
이하에 각 입력 항목에 대해 설명하겠습니다.
| 항목 | 설명 | 필수 |
| 컴퍼넌트 개요 | ||
| Description | 생성하는 RT컴퍼넌트의 개요 설명을 기술합니다. | - |
| Input and Output | RT컴퍼넌트의 입출력에 관한 개략 설명을 기술합니다. | - |
| Algorithm etc | RT컴퍼넌트가 사용하고 있는 알고리즘등의 설명을 기술합니다. | - |
| Other | ||
| Creator, Contact information | RT컴퍼넌트의 작성자 및 연락처에 관한 정보를 기술합니다. | - |
| License, Use condition | RT컴퍼넌트의 라이센스 정보, 사용 조건에 관한 정보를 기술합니다. | - |
| Reference | 참고 문헌 정보를 기술합니다. | - |
| VersionUp Logs | ||
| VersionUp Logs | 이번 변경 내용에 관한 로그 정보를 기술합니다. | - |
| History | 과거의 버전 업시의 로그 정보를 표시합니다. | - |
입력한 RT 컴퍼넌트 사양에 근거해 생성하는 템플릿·소스 코드의 언어 선택이나, OS 등의 실행 환경, 의존 라이브러리등을 입력하는 페이지입니다.
생성 대상의 언어 마다 섹션이 나뉘어져 있습니다. 생성하고 싶은 언어의 섹션을 선택해, 각 언어 고유의 설정 정보를 입력해 주세요. 어느 섹션을 선택했을 경우에는, 다른 섹션은 모두 닫게 되어 있습니다. 코드 생성 실행시(기본 프로파일 입력 페이지의「Code Generation 」버튼 클릭시)에 선택되고 있던 섹션의 언어용 템플릿 코드가 생성됩니다. 이하에 각 입력 항목에 대해 설명합니다.
| 항목 | 설명 | 필수 |
| Language | 생성 대상의 언어를 지정합니다. | ○ |
| Enviornment | ||
| Version | 생성 대상 RTC를 실장하고 있는 언어의 버젼 정보를 설정합니다. | - |
| OS | 생성 대상 RTC가 동작하는 OS정보를 설정합니다. | - |
| OS Version | 생성 대상 RTC가 동작하는 OS의 버젼 정보를 설정합니다. | - |
| CPU | 생성 대상 RTC가 동작하는 CPU 아키텍쳐 정보를 설정합니다. | - |
| Other OSes | 생성 대상 RTC가 동작하는 OS에 대해서, 버젼 정보 이외의 보충 정보를 설정합니다. | - |
| Other CPUs | 생성 대상 RTC가 동작하는 CPU에 대해서, 아키텍쳐 정보 이외의 보충 정보를 설정합니다. | - |
| Libraries | ||
| Name | 생성 대상 RTC가 이용하는 외부 라이브러리의 명칭을 지정합니다. | ○ |
| Version | 생성 대상 RTC가 이용하는 외부 라이브러리의 버전 정보를 지정합니다. | - |
| Info. | 생성 대상 RTC가 이용하는 외부 라이브러리의 보충 정보를 지정합니다. | - |
입력한 RT 컴퍼넌트 사양을 적은 XML 파일 (RTC.xml)의 내용 확인, 편집을 실시하는 페이지입니다.다른 페이지로 설정한 내용을 확인하거나 GUI 화면에서는 입력할 수 없는 항목을 직접 편집하기 위해서 사용합니다.
표시되는 RT컴포넌트 사양의 내용은, 이 페이지로 전환했을 때에 타페이지로 설정되어 있는 내용을 기본으로 작성됩니다.
화면 오른쪽 상단의「Update」버튼을 클릭하면, 이 페이지로 설정, 변경한 내용을 다른 페이지에 반영시킬 수 있습니다 (다른 페이지로 반영시킬 뿐으로, 파일에의 기입은 실시하지 않습니다.) 또, 이하와 같은 화면이 표시되어 변경점을 확인할 수 있습니다. 수정 내용을 다른 페이지에 반영하는 경우에는「OK」를 클릭해 주세요.
이 페이지에서 직접 입력한 내용은, 이 페이지를 표시하고 있는 상태로 보존했을 경우만 보존됩니다. 이 페이지에서 내용 편집 후, 타페이지를 연 상태로 보존하면, 다른 페이지에서 입력한 항목이 우선됩니다. 이 페이지의 내용을 보존하는 경우에는 RTC.xml 의 schema 정의에 따른 바리데이션을 합니다. 바리데이션시에 에러가 발견되었을 경우는, 이하와 같은 에러 메세지가 표시되기 때문에 표시 내용을 참고에 해당 부분를 수정해 주세요.
데이터포트 및 유저 정의 컨피규레이션·파라미터에의 제약 조건은 이하의 서식에서 설정합니다.
| 설정 내용 | 설정 서식 |
| 지정 없음 | 공백 |
| 100(즉치) | 100 |
| 100이상 | x >= 100 |
| 100이하 | x<=100 |
| 100초 | x>100 |
| 100미만 | x<100 |
| 100이상 200 이하 | 100<=x<=200 |
| 100초200 미만 | 100<x<200 |
| 열거형 | (9600,19200,115200) |
| 배열형 | x>100, x>200, x>300 |
| 해시형 | {key0: 100<x<200, key1: x>=100} |
빌드 뷰는 작성중의 RT컴포넌트의 설정 내용을 그래픽적으로 표시하기 위한 뷰입니다. 빌드 뷰의 표시는 이하와 같습니다.
「 RTCBuilder 」퍼스펙티브 변환시에 빌드 뷰가 표시되어 있지 않은 경우, 이하의 순서로 표시할 수 있습니다. 화면상부의 메뉴에서 [Window]-[Show View]-[Other]을 선택. 표시된 「Show View」화면에서 「OpenRTP Tools」-「BuildView」를 선택.
메뉴의 「Window(W)」에서「Show View」을 선택, 「Other」을 누릅니다.
「RepositoryView」를 선택하는 것으로 리포지터리 뷰가 기동됩니다.
로컬에 존재하는 RT컴포넌트 사양 기술 파일을 읽어 트리뷰로 표시하는 기능입니다.
여기에서는 리포지터리 뷰에 RT컴포넌트 사양 기술 파일을 지정해 표시하는 방법을 설명합니다. 리포지터리 뷰내에서 오른쪽 마우스 버튼을 클릭해서 표시된 컨텍스트 메뉴에서 「Load File」을 선택하면 파일 선택 다이얼로그가 표시됩니다. 여기서 리포지터리 뷰에 읽어들이는 RT컴포넌트 사양 기술 파일을 선택합니다. 이 다이얼로그는 xml파일만 표시하도록 필터가 걸립니다.
로컬에 존재하는 RT컴포너트 사양 기술 파일을 읽은 경우, 최상위 계층은 읽어들인 RT컴포넌트 사양 기술 파일의 절대 경로를 표시합니다. 그리고 2번째 계층은 RT컴포넌트 사양 기술 파일내에서 정의되어 있는 category속성의 값을 표시합니다. 또한 3번째 계층은 RT컴포넌트 사양 기술 파일내의 name속성에 기술되어 있는 값과 RT컴포넌트 사양 기술 파일명을 표시합니다.
여기에서는 RT컴포넌트 사양 기술 파일이 존재하는 디렉토리를 지정해 디렉토리내의 전 파일을 읽어들여 표시하는 방법을 설명합니다. 리포지터리 뷰 상에서 오른쪽 마우스를 클릭해서 표시된 컨텍스트 메뉴에서 「Load Dir」을 선택하면 디렉토리 선택 다이얼로그가 표시됩니다. 리포지토리 뷰로 읽어들일 디렉토리를 선택합니다. 디렉토리 이하에 존재하는 RT컴포넌트 사양 기술 파일을 읽어들입니다.
리포지터리 뷰의 컴포넌트는 리포지터리 뷰 상에서 오른쪽 마우스 버튼을 클릭해 컨텍스트 메뉴에서 「Delete」를 선택하면 삭제됩니다. 「Delete」는 경로, category, 컴포넌트의 어느 하나를 선택하고 있는 경우에만 선택 가능합니다.
생성 대상 RT컴퍼넌트의 각종 프로파일 정보를 설정한 후, 템플릿 코드의 생성을 실시합니다. 기본 프로파일 입력 페이지의「Code Generation」버튼을 클릭하면 입력한 프로파일 정보대로 템플릿 코드를 생성합니다.
아래의 표는 각 언어를 선택했을 때의 코드 생성 실행시에 생성되는 템플릿 파일입니다.
| 파일명 | 설명 |
| README_<RTC명> | README 파일입니다.RT 컴퍼넌트 생성시로 설정한 정보등이 기술되고 있습니다. |
| <RTC명>.conf | 컴포넌트의 설정 파일입니다. |
| rtc.conf | 컨피규레이션 파일입니다. ExecutionContext의 실행 주기등이 기술되어 있습니다. |
| 파일명 | 설명 |
| <RTC명> Comp.cpp | RT 컴퍼넌트를 기동하는 코드입니다. |
| <RTC명>.h | RT 컴퍼넌트 본체의 헤더입니다. |
| <RTC명>.cpp | RT 컴퍼넌트 본체의 코드입니다. |
| <서비스형명>SVC_impl.h | 서비스 프로바이더의 헤더입니다.(※) ServiceProvider 에서 지정된 Type 만이 출력됩니다. |
| <서비스형명>SVC_impl. cpp | 서비스 프로바이더의 실장 코드입니다.(※) ServiceProvider 에서 지정된 Type 만이 출력됩니다. |
| Makefile.<RTC명> | 컴파일하기 위한 Makefile 입니다. |
| <RTC명>_vc8.sln | Visual Studio 2005용의 솔루션 파일입니다. |
| <RTC명>_vc8.vcproj | Visual Studio 2005용의 RT컴퍼넌트 프로젝트 파일입니다. |
| <RTC명>Comp_vc8.vcproj | Visual Studio 2005용의 기동 코드용 프로젝트 파일입니다. |
| <RTC명>_vc9.sln | Visual Studio 2008용의 솔루션 파일입니다. |
| <RTC명>_vc9.vcproj | Visual Studio 2008용의 RT컴퍼넌트 프로젝트 파일입니다. |
| <RTC명>Comp_vc9.vcproj | Visual Studio 2008용의 기동 코드용 프로젝트 파일입니다. |
| Copyprops.bat | 프로퍼티·파일 카피용 배치파일입니다. |
| User_config.vsprops | 유저 정의용 프로퍼티·파일입니다. |
| OpenRTM-aist.vsprops | OpenRTM-aist 용 프로퍼티·파일입니다. |
| 파일명 | 설명 |
| <RTC명>Comp.java | RT 컴퍼넌트의 기동용 클래스입니다. |
| <RTC명>.java | RT 컴퍼넌트의 Component Profile, 초기화 처리등을 정의한 클래스입니다. |
| <RTC명>Impl.java | RT 컴퍼넌트의 본체입니다. |
| build_<RTC명>.xml | RT 컴퍼넌트의 빌드용 파일입니다. |
| <서비스형명> SVC_impl.java | 서비스 프로바이더의 실장 클래스입니다.(※) |
| 파일명 | 설명 |
| <RTC명>.py | RT 컴퍼넌트의 코드입니다. |
| <서비스형명>_idl.py | |
| <서비스형명>_idl_example.py | 서비스 프로바이더의 실장 파일입니다.(※) |
| 파일명 | 설명 |
| <RTC명>.cs | RT컴퍼넌트의 코드입니다. |
| <RTC명>.csproj | RT컴퍼넌트의 프로젝트 파일입니다. |
| <서비스형명>Impl.cs | 서비스 프로바이더의 실장 클래스입니다.(※) |
| <RTC명>.csproj.user | 프로퍼티·파일입니다. |
| App.config | 어플리케이션용 컨피규레이션 파일입니다. |
| Program.cs | RT컴퍼넌트의 기동용 클래스입니다. |
RtcBuilder 는 생성한 파일과 동명의 파일이 출력 끝에 이미 존재해 기존 파일과 생성 파일의 사이에 출력 내용에 차이가 존재하는 경우, 어느 쪽의 출력을 이용하는지를 선택하는 확인 화면이 표시됩니다.

※1 Merge에서는,<rtc-template block=”block”>태그로 둘러싸인 범위만을 최신의 생성 내용으로 덮어쓰기합니다. 생성한 템플릿은, 유저가 변경하지 않는 범위를 미리 이 태그로 둘러싸고 있습니다.이 태그의 안은 변경 후에도 머지 하는 것으로 사라져 버리기 때문에, 수정하지 않게 해 주세요.
생성 대상 언어의 개발 환경용 플러그 인이 인스톨 되어 있는 경우, 코드 생성 실행 후에 퍼스펙티브 변환의 확인 메세지가 표시됩니다. 대상의 플러그 인이 인스톨 되어 있는 경우에는 이하와 같은 메세지가 표시되기 때문에, 퍼스펙티브의 변환을 실시할지를 선택해 주세요.

※ 각 언어용의 개발 환경용 플러그 인이 인스톨 되어 출력 대상 프로젝트가 신규 작성 프로젝트의 경우는, 각 프로젝트의 프로퍼티에 대상 언어의 속성이 설정됩니다.
생성한 템플릿 파일, 템플릿 파일을 기본으로 작성한 RT 컴퍼넌트의 실행용 바이너리 필드등을 각종 형식으로 압축하는 기능입니다. 기본 프로파일 입력 페이지의「Packaging」버튼을 클릭하면, 패키징 내용을 설정하기 위한 「RT Component Export」화면이 표시됩니다.


이하에서 각 항목에 대해 설명하겠습니다.
| 항목 | 설명 | |
| Target project | 패키징 대상의 프로젝트를 선택해 주세요. | |
| Destination directory | 패키징 한 성과물을 출력할 디렉토리를 입력해 주세요.「Browse」버튼을 누르면 디렉토리 선택 다이얼로그가 표시됩니다. | |
| Archive forms | 작성하는 어카이브(archive)의 형식을 선택해 주세요. | |
| 옵션 | 각 액션내에서의 동작에 관한 개요 설명.생략 가능 항목. | |
| 어카이브(archive) 형식 | ZIP 포맷을 이용한 어카이브(archive)와 tar 포맷을 이용한 어카이브(archive)를 작성하는 것이 가능합니다.사용하는 포맷 형식을 선택해 주세요. | |
| 어카이브(archive) 내용의 압축 | 어카이브(archive) 내용을 압축하는 경우에는, 체크 박스를 ON 로 해 주세요. | |
| 디렉토리 구조 | 어카이브(archive) 대상 프로젝트의 디렉토리 구조를 그대로 보관 유지한 형태로 어카이브(archive)를 실시하는지, 모두 루트 디렉토리에 넣은 형태로 어카이브(archive)를 실시하는지를 선택해 주세요. | |
※어카이브(archive) 방식(「소스」「바이너리」「소스+바이너리」) 마다, 어느 파일 종류를 어카이브(archive)에 포함할까는, 후술의「설정 화면」에서 설정할 수 있습니다.
RTCBuilder 에서는, RTC 프로파일 에디터로 입력한 내용을 RTC 프로파일 XML(RTC.xml)에 저장하거나 보존한 내용을 다시 읽어들이는 것이 가능합니다.
※[Save As…]를 선택했을 경우, 임의의 프로젝트내에 보존하는 것이 가능합니다.


RTC 프로파일 에디터에서 입력, 설정한 내용을 XML 형식, YAML 형식으로 외부 파일에 export, export한 파일을 import 하는 기능입니다. 기본 프로파일 입력 페이지의「Export」버튼을 클릭하면, 프로파일 정보를 export하는 파일 다이얼로그가,「Import」버튼을 클릭하면 임포트원의 프로파일 정보를 선택하는 파일 다이얼로그가 각각 표시됩니다.
※export 처리시의 형식은,「Export」다이얼로그의「파일 형식」에 의해서 선택하는 것이 가능합니다.
여기에서는 RTCBuilder 의 각종 설정에 대해 설명합니다. RTCBuilder 의 설정 화면은, 화면상부 메뉴의[Window][Preferences]를 선택해 표시되는 「Preferences」화면으로부터「 RTCBuilder 」를 선택하면 표시됩니다.
Data Port 및 Configuration파라메터로 설정하는 데이터형을 정의한 IDL파일의 위치를 설정하는 것이 가능합니다. IDL파일이 저장된 디렉토리를 신규로 추가하는 경우는, 「Add」버튼을 클릭해주세요. 또,「Delete」버튼을 클릭하면 선택한 IDL파일 저장 디렉토리를 삭제하는 것이 가능합니다. IDL파일 저장 디렉토리의 실제 위치는 「IDL File Directories」란 안을 클릭해 표시되는 디렉토리 선택 화면에서 선택해 주세요.
RTC 프로파일 에디터의 기본 프로파일 입력 페이지 및 컨피그레이션·프로파일 입력 페이지에서 신규 에디터 표시시, 신규 항목 추가시에 디폴트로 설정되는 내용을 설정할 수 있습니다.

덧붙여 이 설정 화면안의 디폴트 설정(「디폴트의 복원」버튼을 클릭했을 때에 설정되는 내용)은 이하대로입니다.
| 항목 | 디폴트치 |
| Basic | |
| Component name | ModuleName |
| Description | ModuleDescription |
| Version | 1.0.0 |
| Vendor | VendorName |
| Category | Category |
| Component Type | STATIC |
| Component's activity type | PERIODIC |
| Max. Instances | 1 |
| Component kind | DataFlowComponent |
| Execution type | PeriodicExecutionContext |
| Execution rate | 1.0 |
| Configuration | |
| Name | conf_name |
| Type | conf_type |
| Variable Name | conf_varname |
| Default Value | conf_default |
| Constraint | conf_constraint |
| Unit | |
RTC 프로파일 에디터의 데이터포트·프로파일 입력 페이지 및 서비스 포토·프로파일 입력 페이지에서 신규 항목을 추가했을 때에 디폴트로 설정되는 내용을 설정할 수 있습니다.

또한 이 설정 화면안의 디폴트 설정(「디폴트의 복원」버튼을 클릭했을 때에 설정되는 내용)은 이하대로입니다.
| 항목 | 디폴트치 |
| Data Port | |
| DataPort Name | dp_name |
| DataPort Type | dp_type |
| DataPort Variable Name | dp_vname |
| DataPort Constraint | dp_constraint |
| DataPort Unit | |
| Service Port | |
| ServicePort Name | sv_name |
| Service Interface | |
| Interface Name | if_name |
| Instance Name | if_instance |
| Variable Name | if_varname |
RTC 프로파일 에디터의 컨피그레이션·프로파일 입력 페이지의 시스템·컨피그레이션 정보로 표시되는 항목을 설정할 수 있습니다.

또한 이 설정 화면안의 디폴트 설정(「디폴트의 복원」버튼을 클릭했을 때에 설정되는 내용)은 이하대로입니다.
| 항목 | 디폴트치 |
| exec_cxt.periodic.type | PeriodicExecutionContext |
| exec_cxt.periodic.rate | 1000 |
| exec_cxt.evdriven.type | EventDrivenExecutionContext |
RT 컴퍼넌트의 패키징 기능의 각 어카이브(archive) 형식에 포함하는 파일을 설정할 수 있습니다.

설정 화면은 어카이브(archive) 형식마다의 섹션(Source Export, Binary Export, Source+Binary Export)으로 나누어져 있습니다. 또, 각 섹션은 확장자 지정부와 파일명 지정부로부터 구성되어 있습니다.
확장자(extension) 지정부에서는, 각 어카이브(archive) 형식에 포함하는 파일의 확장자를 설정할 수 있습니다.「Select type」버튼을 클릭하면, 이하와 같은 타입 선택 화면이 표시되기 때문에, 어카이브(archive)에 포함하고 싶은 파일 타입을 선택해 주세요.
![]() |
※파일 확장자 리스트에는 등록을 마친 확장자만 표시됩니다. 리스트내에 존재하지 않는 파일을 선택하고 싶은 경우는, 화면 하부의「Other extensions)」란에 해당하는 확장자를 「,」단락으로 입력해 주세요. |
파일 설정부에서는 어카이브(archive)에 포함하는 파일명을 설정할 수 있습니다. 「File name」리스트 하부의 「 Add 」버튼을 클릭하면 새로운 행이 추가되기 때문에, 어카이브(archive)에 포함하고 싶은 파일명을 직접 입력해 주세요. 또,「 Delete 」버튼을 클릭하면 선택하고 있는 행을 삭제할 수 있습니다. 위 그림의 Export 설정 화면(섹션)의 예에서는, 어카이브(archive) 방식으로서「 Source+Binary 」를 선택했을 때에, 확장자(extension)가「 cpp 」「 h」인 파일과 파일명이「 Makefile 」「 README 」인 파일을 어카이브(archive)에 포함하는 설정이 됩니다. 덧붙여 이 설정 화면안의 디폴트 설정(「디폴트의 복원」버튼을 클릭했을 때에 설정되는 내용)은 이하대로입니다.
| 항목 | 디폴트치 |
| Source Export | |
| 확장자 | conf, cpp, h, vcproj, java, xml, py |
| 파일명 | Makefile, README |
| Binary Export | |
| 확장자 | conf, exe, class, py |
| 파일명 | README |
| Source+Binary Export | |
| 확장자 | conf, cpp, h, vcproj, java, xml, py, exe, class |
| 파일명 | Makefile, README |
Build View 내에 표시되는 아이콘의 색정보를 설정할 수 있습니다.

각각의 색설정 버튼에 의해, 컴퍼넌트 본체, DataInPort, DataOutPort, ServicePort, ServiceInterface 의 색설정을 변경하는 것이 가능합니다.
각 액티비티의 유무효 속성(ON/OFF)을 설정할 수 있습니다.