Tech/Development
-
[C/C++] Tistory Syntax Highlighter 넣을 때, 자바 스크립트 생성기Tech/Development 2011. 12. 15. 14:34
블로그에 Syntax Highlighter를 설치해볼까 하는 생각에, 인터넷을 검색하다보니, 설치방법, html/css 편집법 등이 자세히 소개되어 있었다. 순서대로 따라가면서 하면 되는데, 최근에 나온 Syntax Highlighter는 추가해야할 자바 스크립트가 상당히 많다. 일일히 노가다로 입력해넣긴 힘들어서 간단히 자동화 프로그램으로 만들어보았다. 프로그램은 더할나위 없이 간단하다. 그냥 Select Script FIles를 눌러서 추가하고싶은 파일들을 다중선택하면, 밑의 에디트박스에 스크립팅이 나타나는데, Copy to ClipBoard를 누르면 자동으로 클립보드에 복사된다. 이를 그냥 붙여넣으면 된다.
-
[MFC] MFC FileDialog에서 다중 파일 선택 시, 파일 이름들만 얻기Tech/Development 2011. 12. 15. 03:43
MFC에서 FileDialog 를 사용할 때, OFN_ALLOWMULTISELECT flag를 사용하면 다중 파일 선택이 가능해진다. 이 경우, 파일을 읽어올 때에는 GetStartPosition을 이용하여 하나씩 읽어오게 되는데, 단일 파일일 때와 달리, FileName만 얻는 메소드가 존재하지 않는다. 이 때, 사용가능한 메소드로는 GetNextPathName()가 존재하는데 약간의 차이점은 이 메소드는 파일 경로를 포함하여 전체를 다 읽어온다는 것. 이를 해결하려면 String parsing을 하는 수 밖에 없다. 아래와 같이 Delete 함수를 사용하면 편리하다. void CtistorycodeDlg::OnBnClickedButton1() { // TODO: Add your control noti..
-
개인용 Dokuwiki 설치Tech/Development 2011. 12. 15. 01:07
정리해야할 데이터가 방대하게 쌓이다보니, 개인용 wiki가 있어도 좋을 것 같다는 생각에 dokuwiki를 설치하기로 했다. 설치 장소는 내 개인 컴퓨터. (개인적으로 사용할 것이므로) Dokuwiki를 선택한 이유는, 데이터가 txt 형태로 subdirectory에 저장되므로 백업/이동이 간편하기 때문이다. 설치하기 위해서는 개인 PC가 php를 구동할 수 있도록 아파치 서버를 세팅할 필요가 있다. dokuwiki같은 경우, dokuwiki stick같은 프로그램이 존재하여 미니 아파치 서버를 구동할 수 있는 프로그램이 있으므로 이를 이용하여도 좋다. 1. Apache 2.2 Installation 2. PHP Installation 3. Dokuwiki 설치. 정말 간편한데, 문제는 Dokuwiki가..
-
[Synopsys] Synopsys의 Logic Library .db와 .libTech/Development 2011. 7. 29. 15:48
반도체 IP 디자인을 하게 되면, 공정 회사로부터 공정에 대한 정보가 담긴 Library를 받게 되는데, .lib 형태의 ASCII-format으로 받게 됩니다. 이 파일을 열어보면 텍스트 스크립트 형식으로 공정에 대한 정보가 담겨져 있습니다. Cell logic, timing, power 등에 대한 정보가 있습니다. Synopsys의 Design Compiler, IC Compiler 등 Galaxy tool에서 사용하려면 이 Tool들이 사용하기에 편한 Binary format으로 데이터를 가지고 있어야 하는데 이 데이터 파일이 .db 입니다. ASCII-format의 정보가 Binary-format으로 나타난 것이 .db 파일이라고 생각하면 됩니다. 다양한 Tool에서 .lib를 .db로 변경하도록..
-
[Synopsys] MIlkyway DatabaseTech/Development 2011. 7. 29. 11:04
Synopsys 사의 Tool을 이용하여 IC Design을 하다보면, 가장 자주 만나는 것이 바로 Milkyway Database다. Milkyway 라는 이름의 Tool이 따로 존재하고 있어서 처음에는 이 Tool을 사용하는 데이터만을 일컫는 줄 알았으나, Synopsys사의 Tool 전반에 걸쳐 사용되는 Database라고 생각하면 된다. Design Compiler, IC Compiler, Astro 등의 모든 툴에서 이러한 Milkyway Database 포맷을 사용하고 있다. The Milkyway database is the unifying design storage format for the Synopsys Galaxy Design Platform. IC를 Design할 때 사용되는 정보로..
-
[MATLAB] MATLAB 2010a 와 Visual Studio 2010 연동하기Tech/Development 2011. 7. 6. 21:45
지난 번 포스팅에서 64-bit Windows 7 에서 MATLAB2010a을 사용할 때, C/C++ 소스 파일과의 연동을 위해 64-bit compiler를 설치하는 법을 포함하였는데, 빠진 부분이 있다. 64-bit 운영체제에서 MATLAB2010a가 64-bit compiler를 자동으로 포함하여 설치하지 않아, 이를 따로 설치해주는 것이지만, 이 때 Visual Studio 2010 버젼은 MATLAB 2010a와 호환되지 않는다. (MATLAB 2010a 기존의 mex는 Visual Studio 2008 SP1 까지 지원한다.) 따라서 MATLAB 2010a에서 Visual Studio 2010과 연동하려면 mex file을 update해야 하는데, Mathworks 공식 홈페이지에 해결법이 자..
-
[MATLAB] MATLAB 2010 에서 C compiler를 찾을 수 없을 때.Tech/Development 2011. 7. 5. 15:16
현재 Windows7 64-bit 에서 MATLAB 7.10.0 (R2010a) 를 사용중인데, C++ file을 사용하고자 mex 명령어를 사용하니 아래와 같은 메시지가 뜬다. >> mex example.cpp Error: Could not detect a compiler on local system which can compile the specified input file(s) ************************************************************************** Warning: The MATLAB C and Fortran API has changed to support MATLAB variables with more than 2^32-1 element..
-
[C/C++] const 잘 사용하기Tech/Development 2011. 7. 5. 15:01
const를 어떻게 사용하고 있는지를 보면, C언어에 대한 조예가 어느정도 깊은지 알 수 있다고 한다. 실제로 아름답게 정리된 C 코드들을 보면 const를 자유롭게 활용하고 있는데, 이번 기회를 빌려 정리해보았다. const 자신의 왼편에 있는 키워드를 수식 // const applies to whatever is on its immediate left const int *Constant //Constant is variable pointer to a constant integer int const *Constant // an alternative syntax which does the same things int * const Constant // Constant is constant pointer ..