Doxygen Tool은 문서 분석기로 코드를 문서 형태로 출력해 주는 프로그램이다.
Doxygen 주석 방식으로 작성하면 주석을 한눈에 쉽게 볼 수 있는 장점이 있다.
물론 단점은 설치 해야 한다는 점이겠지만...
설치
http://www.graphviz.org/Download_windows.php 여기에서 Graphviz를 설치하자.
Grapviz는 알고리즘을 관계 데이터 그래프 형태로 보여 주는 기능이다.
Doxygen는 코드를 문서로 만들어 준다면 Grapviz는 상속관계와 함수 호출 경로를 볼수 있다는거.
Grapviz를 설치하고 나면 http://www.stack.nl/~dimitri/doxygen/Doxygen 다운로드 항목에서 다운 받자.
설정
[Doxygen Wizard]
Specify the working directory from which doxygen will run
- 작업할 디렉토리 위치 입력
[Project]
Project name
- 작업 프로젝트 이름
Project synopsis
- 프로젝트 설명
Project version or id
- 프로젝트 구분할 수 있는 버전이나 아이디 입력
Source code directory
- 소스 코드 디렉토리 위치 입력.
미입력시 Specify the working directory from which doxygen will run 설정된 디렉토리 사용
Scan recursively
- 하위 디렉토리 포함 체크
Destination directory
- 생성 문서가 저장될 디렉토리 입력.
미입력시 Specify the working directory from which doxygen will run 설정된 디렉토리 사용
[Mode]
Select the desired extraction moid
- 문서화에 대한 옵션 설정
Documented entities only : 소스에서 doxygen 형식의 주석만 문서화
All Entities : 소스에서 모든 주석 문서화
Include corss-referenced source code in the output
- 문서화 되어 있는 Entity 소스 코드의 링크 연결. 소스 코드로 이동 관련 기능 필요시 체크.
Select programming language to optimize the results for
- 선택한 언어에 관련 최적화된 문서 생성 여부 설정
[Output]
Select the output format(s) to generate
- 생성 문서 포맷을 선택. HTML, LaTeX, Man pages, Rich Text Format, XML 중에 선택.
[Diagrams]
Diagrams to generate
- 다이아그램 설정.
관련 GraphViz를 설치 하였으니 Use dot tool from the GraphViz package를 선택하자.
체크는 Call graphs는 필수. 분석된 결과를 그림으로 보는 설정이다.
나머지 체크 박스 옵션은 취향.
추가로 [Expert]의 Dot 탭에 DOT_PATH에 GraphViz에 dot의 bin 디렉토리 절대 경로를 설정한다.
( DOT_PATH : C:\Program Files\Graphviz2.10\bin )
HAVE_DOT를 체크 하면 GrapViz 관련 설정 종료.
[Run]에서 Run doxygen 버튼을 클릭하면 분석을 시작한다. 분석이 끝나면 아래 Show HTML output 버튼을 클릭시
설정한 포맷으로 분석된 결과를 웹 브라우저로 출력 된다.
사용법
자세한 설정은 http://www.stack.nl/~dimitri/doxygen/manual.html에 있으니 참고.
주석 방식은 일반적인 방식과 같다.
일반적인 주석은
/*
주석 내용
*/
// 주석 내용
이렇게 작성 한다.
Doxygen 주석 명시 방법은
/**
주석 내용
*/
/// 주석 내용
방식으로 사용 하면 된다.
주석 항목
@ 이용하여 주석 명시 한다.
목록 |
설명 |
@author |
작성자 이름 |
@brief |
간략한 설명 |
@date |
작성 날짜 |
@enum |
분류 타입 설명 |
@exception |
예외 처리 설명 |
@file |
파일 이름 구별 |
@fn |
함수 이름 구별 |
@mainpage |
메인 페이지 설명 |
@note |
간단한 기록 |
@version |
구분할 버전 기재 |
@code |
중요 소스 코드 설명 시작 지점 |
@endcode |
중요 소스 코드 설명 종료 지점 |
@param |
함수 파라미터 설명 |
@remark |
자세한 설명이나 주의 사항 작성 |
@return |
함수 리턴 값 설명 |
@section |
구분(?!) |
@see |
참고하는 함수나 클래스 설명. 옵션에서 링크 설정시 링크 기능 활성화. |
@struct |
구조체 설명 |
@warning |
경고 기술 |
@bug |
버그에 대한 기술. 관련 bug는 출력시 별도 리스트로 생성 됨. |
@todo |
해야할 작업 관련 설명. 관련 togo는 출력시 별도 리스트로 생성 됨. |
EX :
/// @author : Q
/// @date : 20140131
/// @brief : NPC object class
/// @todo : nothing
/// @warning : none
/// @note : 사용법 주절 주절...
'[ Programing ] > Other' 카테고리의 다른 글
UNICODE와 UTF8 관련 국가별 코드 번호 구간들. (0) | 2014.03.04 |
---|---|
Windbg 사용법 (0) | 2014.02.03 |
윈도우 동적으로 디버그 확인 (0) | 2013.10.25 |
2008 비쥬얼 스튜디오 찾기 및 바꾸기 정규식 이용 하기 (0) | 2013.10.18 |
2010 비쥬얼 스튜디오 찾기 및 바꾸기 정규식 이용 하기 (0) | 2013.10.18 |