CFileFind FindFile, GetFilePath 등 예제 소스, 윈CE 코드 소스 코드 다운로드 윈도우즈 CE에선 기본적으로 CFileFind를 제공하지 않고 있습니다. 그래서 별도로 해당 클래스를 구현해서 사용해야 합니다. 다행히, 어느 능력자 분이 직접 구현을 하셨네요. 바로 아래는 CeFileFind.cpp와 헤더 파일을 압축한 것이고 그 아래는 전체 소스입니다. 이 소스 코드는 윈도우 XP 이상에서 지원하는 CFileFind API의 모든 기능을 포함하고 있습니다. CFileFind 예제 소스 코드 헤더 header 파일 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515..
Jetson Tegra K1(TK1) 사이트 4곳 (ARM CPU 임베디드 보드) 주요 스펙 - TK1 Processor : NVIDIA Tegra K1 Mobile Processor Quad-core, 4-Plus-1™ ARM® Cortex-A15 MPCore™ processor with NEON technology- Jetson Tegra K1 Max Cores : 4- Memory : 2GB DDR3L system RAM - Graphics : Low-power NVIDIA Kepler™-based GeForce® graphics processor with 192 CUDA cores- Video Interfaces : Display HDMI Connector - Operating System : L..
C# 스택 예제, Stack 클래스와 Push 등 사용법 Stack. 스택은 LIFO 콜렉션이며 강력한 후입선출(last-in-first-out) 데이터 구조체입니다. 더욱 빠른 파서와 재귀 알고리즘 구현에도 도움이 됩니다. Push. 원소(element)를 넣어 사용한다는 의미로, 컴퓨터 사이언스 측면에선 상단에 추가한다는 뜻입니다. (add to the top) 다음 예제의 함수는 스택에 쌓인 integers를 리턴합니다. using System; using System.Collections.Generic; class Program { static Stack GetStack() { Stack stack = new Stack(); stack.Push(100); stack.Push(1000); stack..
UG NX10 - 10.0.3.5 MP14 설치 방법 (지멘스 업데이트) UG NX의 MP는 Maintenance Pack의 약자로 UG NX에서 발표하는 MR(Maintenance Release)의 버그 수정용 패치입니다. 일반적으로 부르는 QRM의 문제점을 해결하기 위한 독립적인 패치입니다. 그래서 UG NX10 설치 이후에 바로 패치를 적용하는 걸 권장하는 편이죠. MP에 대해선 네이버 다른 분의 글을 조금 더 살펴보길 권합니다. 참조 : UG NX10 설치 [클릭] 이 포스트에선 구체적인 NX10 설치 방법만 알려드립니다. 윈10 UG NX10 설치 먼저 UG NX10을 실행하고 시스템 정보를 살펴보세요. MP 설치 전에는 NX Patch 란이 None로 되어 있을 겁니다. (Help - Abou..
C# Sealed 클래스, 성능 향상 최적화 방법 (추상 키워드 예제) Sealed. Sealed 클래스는 상속되지 않으며, 키워드로 사용한다면 함수 호출 시 성능 향상이 됩니다. 1. 상속되지 않는 특성2. 특정 상황에서 성능이 향상 이 두 가지 특징을 갖는 키워드라 할 수 있습니다. Example. sealed 키워드가 적용되면 C# 컴파일러는 당신의 클래스 어셈블리에 "sealed" 메타 데이터를 적용시킵니다. 상위 클래스에선 sealed 키워드가 선언된 클래스를 상속 받을수 없도록 제한합니다. (syntax hint) Tip: JIT 컴파일러는 sealed 메타 데이터를 이용해 함수 호출을 최적화할 수 있습니다. The two classes. ITest 인터페이스를 구현하는 두 클래스엔 약간의 차..
상관계수와 검정 예시 (스피어만 서열, 켄달 타우계수) 상관계수(Correlation Coefficient)일반적으로 상관계수(Correlation Coefficient)는 피어슨의 적률 상관계수(Pearson's Product Moment Correlation Coefficient)를 간단히 지칭한 것으로서 두 변수가 모두 정규 분포를 따르고 등간, 비율척도로 측정되었을 때 두 변수 사이의 선형의 관계 정도를 하나의 수치로 나타낸 지표입니다. 기본적으로 두 변수 사이의 상관성을 나타내주는 지표는 두 변수간의 공분산(Covariance)입니다. 공분산이란 두 관심변수를 X, Y라고 했을 때 X의 증감에 따른 Y의 증감에 대한 척도로써, 기호로는 Cov(X, Y)로 나타냅니다. 그런데 공분산은 X와 Y의 ..
IP뜻, TCP/IP 프로토콜과 IP란 무엇인지 (Internet Protocol) Introduction TCP/IP 프로토콜, UDP, ICMP, IGMP 데이터는 모두 IP datagram으로 전송된다. TCP/IP 프로토콜을 시작하는 사람, 특히 X.25 또는 SNA와 IP뜻 기초 지식이 있는 사람은 IP란 신뢰성이 없고, 비연결형 서비스를 한다는 점에 놀란다. 신뢰성이 없다는 말은 IP datagram이 목적지에 성공적으로 도달하는 것을 보증하지 않는다는 뜻이다. 만일 문제가 있으면 (예를 들어 라우터의 일시적인 buffer full과 같은) IP란 간단한 에러처리 절차를 갖는다. datagram을 보내고 ICMP 메시지를 소스로 보낸다. 신뢰성은 상위 계층에서 제공할 것이다. IP뜻 중 비연결..
NFC 전송 데이터 교환 포맷, NDEF 레코드 구조 NFC 데이터 교환 포맷NFC 포럼은 태그 혹은 NFC 장치 사이의 데이터 전송 시 상호 호환성을 가능하게 NDEF 데이터 공통 포맷을 정의하였습니다. NDEF는 URL, 카드, 그리고 NFC 관련 데이터 타입을 전달할 수 있는 작고 컴팩트한 이진 포맷입니다. NDEF는 페이로드를 포함하는 일련의 레코드들로 구성된 메시지로 교환됩니다. . 페이로드 컨텐츠는 URL, MIME 미디어, 혹은 NFC 관련 데이터 타입이 될 수 있음.. NFC 관련 데이터 타입의 경우 - 페이로드 컨텐츠는 NFC RTD(Record Type Definition)에 정의됨.. 레코드 내의 데이터 타입과 레코드 크기는 페이로드가 붙여진 헤더에 포함.. 페이로드의 타입을 식별하기..
VisualStudio 2015 관리자 권한 실행 [윈도우10 비주얼스튜디오] dll 라이브러리 등을 사용하는 프로그램 제작 중, COM Interop 등록이 필요한 경우가 생겼습니다. 간단히 비주얼스튜디오 프로젝트의 속성 - 빌드 - 출력 - COM Interop 등록 체크를 하면 되죠. 문제는 이러려면 관리자 권한이 필요한데, 매번 빠른 실행 아이콘을 오른쪽 마우스로 눌러 관리자 권한으로 실행하는 것이 귀찮다는 것이죠. 위의 사진처럼 COM Interop 등록을 체크하는데엔 아무런 문제가 없습니다. 그러나, F6을 눌러 빌드하면 에러가 발생하죠. ".....dll" 어셈블리의 등록을 취소할 수 없습니다. 엑세스가 거부되었습니다. 관리자로 응용 프로그램을 실행하고 있는지 확인하십시오. 요청한 레지스트리..
Dictionary 복사. C# Dictionary에는 복사 생성자가 있습니다. 기존 딕셔너리 객체를 생성자로 넘기면 그대로 복사가 되는데, 현재로썬 가장 효율적인 방법입니다. 그리고 기존 딕셔너리를 수정해도 복사된 데이터엔 영향을 주지 않습니다. 예제. 간단한 반복문을 구현하여 C# Dictionary 아이템을 직접 복사할 경우엔 코드 중복 및 예상치 못한 에러가 발생할 수 있습니다. 반복문 자체가 비효율적이란 것이죠. Here: 아래 예제에선 복사 생성자를 사용해 딕셔너리 내부 데이터를 복사합니다. using System;using System.Collections.Generic; class Program{ static void Main() { // // Create and initialize Dic..
Ui 창에서 Qt 모달 다이얼로그 (modal dialog) 하나를 띄웁니다. 속성은 당연히 QDialog 입니다. 아래 그림처럼 Dialog를 새로 생성해야 합니다. 아래 그림은 qt 프로젝트에서 버튼이 없는 형태로 생성한 것입니다. 하지만, 다른 분들은 버튼이 있고 없고 크게 신경 안 쓰셔도 됩니다. 그저 다이얼로그만 생성하면 돼요. 아래는 Qt 모달 다이얼로그 띄우기 소스. #ifndef DLGCONFIG_H#define DLGCONFIG_H #include #include "ui_dlg_config.h" class DlgConfig : public QDialog{public: DlgConfig(QWidget *parent = 0); virtual ~DlgConfig(); private: Ui::u..
외부 단편화와 버디 시스템 (external fragmentation)커널은 연속적인 페이지 프레임 그룹을 할당하는 견고하고 효율적인 정책을 세워야 한다. 이때 메모리 관리와 관련한 유명한 문제인 '버디 시스템 알고리즘 외부 단편화(buddy system external fragmentation)'를 해결해야 한다. 외부 단편화(external fragmentation)는 다른 크기의 연속적인 페이지 그룹을 빈번하게 할당하고 해제하여, 할당한 페이지 프레임 블록 사이에 작은 여유 페이지 프레임 여러 개가 '산재'하는 현상이다. 그 결과 나중에는 큰 크기의 연속된 페이지 프레임 할당을 요청할 때 이를 담을 충분한 여유 페이지가 있어도 메모리를 할당하지 못할 수 있다. 8개의 페이지 프레임이 사용되고 있지 ..