RtcTemplate

RtcTemplate란

RtcTemplate는 RT컴퍼넌트의 템플릿을 생성하는 개발툴입니다.파라미터를 기본으로 RT컴퍼넌트의 템플릿을 생성하는 기능을 가지고 있습니다.또, RtcTemplate는 Eclipse에서 동작해, 직감적인 조작과 다른 Eclipse 플러그 인과의 심리스인 제휴가 가능합니다.  RtcTemplate는 RtcLink가 없어도 동작합니다만, RtcLink가 인스톨 되고 있는 경우에는, RtcTemplate와 메뉴가 통합됩니다.본메뉴얼에서는 RtcLink가 인스톨 되고 있는 것을 전제로 해서 설명되고 있습니다.

RtcTemplate 개요

RtcTemplate

RtcTemplate란

 RtcTemplate는, RT컴퍼넌트를 생성하는 개발툴입니다.직감적인 조작과 다른 Eclipse 플러그 인과의 심리스인 제휴가 가능합니다. → 인스톨 방법은이쪽 에 있습니다.


StereoType.png
전형적인 장면으로의 snapshot


RtcTemplate의 기본 기능

 RtcTemplate에는, 이하와 같은 기능이 있습니다.

GUI 템플릿 생성
RTC의 템플릿을 GUI(Eclipse상에서)에 의해서 생성한다.
파일 머지 기능
이미 존재하는 파일에 대해서 출력을 실시하는 경우에 머지를 실시합니다.

RtcTemplate를 사용한 RT컴퍼넌트 생성의 흐름

 RtcTemplate를 사용해 RT컴퍼넌트를 생성하는 순서는 대체로 이하와 같습니다.

1.RtcTemplate 에디터를 기동
2.각 설정 항목을 편집
RtcTemplate 에디터상의 각 설정 항목을 설정·편집합니다.
3.「Generate」버튼을 압하
RT컴퍼넌트 생성이 개시됩니다.
4.필요하면 편집 내용을 보존
생성한 RT컴퍼넌트의 각 설정 항목의 편집 내용을 보존합니다.
5.이전의 편집 내용을 여는
편집·보존한 RT컴퍼넌트의 각 설정 항목의 편집 내용을 표시해, 계속 편집합니다.

기타 / 사례

그 외

FAQ

 이쪽(을)를 참조해 주세요.

사례

 RtcTemplate는, 이하의 라이브러리 혹은 제품을 사용해 개발되었습니다.이러한 프로젝트의 개발과 설계와 관계된 분들에게 감사합니다.

  • Apache Log4j  1.2.1.4
    This product includes software developed by The Apache Software Foundation (http://www.apache.org/).
  • Apache Velocity 1.4
    This product includes software developed by The Apache Software Foundation (http://www.apache.org/).

에디터의 기동

RtcTemplate 에디터의 기동

 RtcTemplate는 RtcLink로부터 기동하는 방법과 RtcLink는 사용하지 않고(직접) 기동하는 방법이 있습니다.

RtcLink로부터 RtcTemplate를 기동한다

 Eclipse를 기동 해, 한층 더 RtcLink를 기동합니다.그 후, 툴바의「Open New RtcTemplate Editor」버튼을 압하하는지, 도구모음의[file]-[Open New Template Editor]를 선택합니다.

StartFromToolbar.png
툴바로부터의 기동



StartFromMenu.png
도구모음으로부터의 기동



StatusOfStart.png
기동 직후 상태


RtcTemplate를 직접 기동하는

 RtcLink를 사용하지 않고 RtcTemplate를 직접 기동하려면 , Eclipse의 설정을 커스터마이즈 해 RtcTemplate 에디터가 표시되도록(듯이) 하지 않으면 안됩니다.RtcTemplate 에디터를 표시하려면 , Eclipse의 도구모음의[윈도우]-[퍼스펙티브의 커스터마이즈]로 다이얼로그를 열어, 상부의 「커멘드」태그를 압하해, 「RTC Template Actions」를 체크합니다.


ShowRtcTemplateWithoutRtcLink.png
RtcTemlate의 기동(RtcLink를 사용하지 않는 경우)


조작 화면

RtcTemplate 조작 화면

 RtcTemplate 에디터를 기동하면, 「RTC Template Config」라고 쓰여진 RTC 생성의 설정 항목을 편집하는 에디터가 나타납니다.

 이하, RtcTemplate의 각 설정 항목이나 조작 방법을 설명합니다.

항목 설명

 항목의 설명은 이하대로입니다.

Template.png
RtcTemlate전항목


  • 1.Programming language selection
     출력하는 프로그램 언어의 선택
     C++
     C++(Windows)
     Python
     Java

    -2.Module definition
     모듈 정의
Module name 모듈명
Module description 모듈의 설명
Module version 모듈의 버젼
Module vender 모듈의 벤더
Module category 모듈의 카테고리
Component type 컴퍼넌트의 형태(STATIC·UNIQUE·COMMUTATIVE)
Component's activity type 액티버티 타입(PERIODIC·SPORADIC·EVENT_DRIVEN)
Number of maximum instance 컴퍼넌트 인스턴스의 최대수입니다.

  • 3.InPort definition
     입력 포토 정의
Name 포토명, 원시 코드중에서 변수명으로서 사용된다
Type 포토의 형태 ※1
※1 Timed [Short|Long|UShort|ULong|Float|Double|Char|Boolean|Octet|String] 및 그 순서형이 사용 가능

  • 4.OutPort definition
     출력 포토 정의
Name 포토명, 원시 코드중에서 변수명으로서 사용된다
Type 포토의 형태 ※2
※2 Timed [Short|Long|UShort|ULong|Float|Double|Char|Boolean|Octet|String] 및 그 순서형이 사용 가능


  • 5.Service Provider definition
     서비스 프로바이더 정의
IDL Path 서비스 프로바이더로 사용하는 IDL의 패스를 지정, 1개의 파일에는 복수의 인터페이스를 지정할 수 있다
PortName 포토가 속하는 인터페이스의 이름, 이 이름은, Corba의 포토명에 사용된다
Name 서비스명, 이 이름은 인스턴스명과 변수명으로 사용된다
Type 서비스 프로바이더의 형태, 형명으로서 사용되는 ※3
※3형태는 풀 패스로 지정해 주세요.(예) Module01::InterfaceName02

  • 6.Service Consumer definition
     서비스 컨슈머(consumer) 정의
IDL Path 서비스 컨슈머(consumer)로 사용하는 IDL의 패스를 지정, 1개의 파일에는 복수의 인터페이스를 지정할 수 있다
PortName 포토가 속하는 인터페이스의 이름, 이 이름은, Corba의 포토명에 사용된다
Name 컨슈머(consumer)명, 이 이름은 인스턴스명과 변수명으로 사용된다
Type 서비스 컨슈머(consumer)의 형태, 형명으로서 사용되는 ※4
※4형태는 풀 패스로 지정해 주세요.(예) Module01::InterfaceName02

  • 7.ConfigurationSet definition
     컨피귤레이션 세트 정의
Name 컨피귤레이션 파라미터의 명칭
Type 컨피귤레이션 파라미터의 데이터형
Default Value 컨피귤레이션 파라미터의 디폴트치

  • 8.Include IDL directory
     인클루드 하는 IDL의 검색 대상 디렉토리

  • 9.Output directory
     출력 디렉토리

  • 10.Generate
     생성 버튼

    출력 선택

 RtcTemplate는, 기존 파일과의 출력 내용에 차이가 있는 경우, 출력을 선택할 수 있습니다.

CompOfOutput.png
출력 선택


출력의 선택에서는, 이하의 3개 출력 후보중에서 선택합니다.
  • Original  : 이미 존재하는 파일을 사용한다
  • Merge   : 머지 블록을 이용한 머지를 실시한다(※※)
  • Generate : 새롭게 생성한 내용으로 덧쓰기한다
    ※※ Merge에서는,<rtc-template block=”bloack”>태그로 둘러싸인 범위만을 최신의 생성 내용으로 상서합니다.생성한 템플릿은, 유저가 변경하지 않는 범위를 미리 이 태그로 둘러싸고 있습니다.이 태그의 안은 변경 후도 머지 하는 것으로 사라져 버리기 때문에, 수정하지 않게 해 주세요.

    세이브

 RtcTemplate는, 세이브할 수 있습니다.세이브를 실시하려면 ,[Ctrl-S]혹은 에디터를 오른쪽 클릭해, 콘텍스트 메뉴로부터 「Save」를 선택, 또는 도구모음의「File」「Save…」혹은「File」「Save As…」를 선택합니다.( 「Save As…」의 경우, 임의의 파일에 세이브할 수 있습니다)

SaveFromContext.png
context menu로부터의 세이브


SaveFromMenu.png
도구모음으로부터의 세이브


오픈

 RtcTemplate는, 파일을 여는(오픈) 일이 생깁니다.파일을 열려면 , 에디터를 오른쪽 클릭해, 콘텍스트 메뉴로부터 「Open」를 선택, 또는 도구모음의「File」「Open File…」를 선택합니다.

OpenFromContext.png
context menu로부터의 오픈


OpenFromMenu.png
도구모음으로부터의 오픈


출력 파일

 RtcTemplate가 출력하는 파일에 대해 설명합니다.

출력 파일 일람

  • C++
파일명 설명
<모듈명>Comp.cpp 컴퍼넌트를 기동하는 코드입니다.
<모듈명>.h 컴퍼넌트의 헤더입니다.
<모듈명>.cpp 컴퍼넌트의 코드입니다.
<서비스형명>SVC_impl.h 서버의 실장 헤더입니다.(※) ServiceProvider에서 지정된 Type만이 출력됩니다.
<서비스형명>SVC_impl. cpp 서버의 실장 코드입니다.(※) ServiceProvider에서 지정된 Type만이 출력됩니다.
Makefile.<모듈명> 컴파일하기 위한 Makefile입니다.
※rtc-template는, 이 파일을 출력할 때, 오퍼레이션의 템플릿을 생성하기 위해서, IDL를 퍼스 합니다.그러나, 이 퍼스의 기능에는 이하와 같은 제한이 존재합니다.
      • 프리프로세서에 대하고, #include 지시문만 사용 가능.(#ifdef 등은 단지 무시된다)
      • 생성되는 오퍼레이션은 직접 지정된 인터페이스의 오퍼레이션만으로, 부모로부터 계승한 오퍼레이션은 포함되지 않는다.
  • Python
파일명 설명
<모듈명>.py 컴퍼넌트의 코드

  • 공통
파일명 설명
README_<모듈명> README 파일, 생성시의 정보등이 기록된다