주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.

Simulink.fileGenControl

다이어그램 업데이트 및 모델 빌드 과정에서 생성되는 파일의 루트 폴더 지정

설명

cfg = Simulink.fileGenControl('getConfig')Simulink.FileGenConfig 객체의 인스턴스에 대한 핸들을 반환하며, 이 객체에는 다음과 같은 파일 생성 제어 파라미터의 현재 값이 포함되어 있습니다:

  • CacheFolder – Simulink® 캐시 파일을 포함하여 시뮬레이션에 사용되는 모델 빌드 아티팩트의 루트 폴더를 지정합니다.

  • CodeGenFolder – 코드 생성 파일의 루트 폴더를 지정합니다.

  • CodeGenFolderStructure – 코드 생성 폴더 내의 폴더 구조를 제어합니다.

파라미터 값을 가져오거나 설정하려면 Simulink.FileGenConfig 객체를 사용하십시오.

다음 Simulink 기본 설정은 MATLAB® 세션의 초기 파라미터 값을 결정합니다.

예제

Simulink.fileGenControl(Action,Name,Value)는 현재 MATLAB 세션의 파일 생성 제어 파라미터를 사용하는 작업을 수행합니다. 하나 이상의 name,value 쌍 인수를 사용하여 추가 옵션을 지정하십시오.

예제

예제

모두 축소

현재 MATLAB 세션에 대한 파일 생성 제어 파라미터 값을 확인하려면 getConfig를 사용하십시오.

cfg = Simulink.fileGenControl('getConfig');

myCacheFolder = cfg.CacheFolder;
myCodeGenFolder = cfg.CodeGenFolder;
myCodeGenFolderStructure = cfg.CodeGenFolderStructure;

현재 MATLAB 세션에 대한 파일 생성 제어 파라미터 값을 설정하려면 setConfig 작업을 사용합니다. 먼저, Simulink.FileGenConfig 객체의 인스턴스에 값을 설정합니다. 그런 다음, 객체 인스턴스를 전달합니다. 이 예제는 시스템에 aNonDefaultCacheFolderaNonDefaultCodeGenFolder 폴더가 있다고 가정합니다.

% Get the current configuration
cfg = Simulink.fileGenControl('getConfig');

% Change the parameters to non-default locations
% for the cache and code generation folders
cfg.CacheFolder = fullfile('C:','aNonDefaultCacheFolder');
cfg.CodeGenFolder = fullfile('C:','aNonDefaultCodeGenFolder');
cfg.CodeGenFolderStructure = 'TargetEnvironmentSubfolder';

Simulink.fileGenControl('setConfig', 'config', cfg);

Simulink.FileGenConfig 객체의 인스턴스를 생성하지 않고도 현재 MATLAB 세션에 대한 파일 생성 제어 파라미터 값을 설정할 수 있습니다. 이 예제는 시스템에 aNonDefaultCacheFolderaNonDefaultCodeGenFolder 폴더가 있다고 가정합니다.

myCacheFolder = fullfile('C:','aNonDefaultCacheFolder');
myCodeGenFolder = fullfile('C:','aNonDefaultCodeGenFolder');

Simulink.fileGenControl('set', 'CacheFolder', myCacheFolder, ...
   'CodeGenFolder', myCodeGenFolder, ...
   'CodeGenFolderStructure', ...
    Simulink.filegen.CodeGenFolderStructure.TargetEnvironmentSubfolder);

서로 다른 타깃 환경에 대한 코드 생성을 별도의 폴더에 수행하지 않으려면, 'CodeGenFolderStructure'Simulink.filegen.CodeGenFolderStructure.ModelSpecific 값을 지정하십시오.

파일 생성 제어 파라미터를 Simulink 기본 설정의 값으로 재설정할 수 있습니다.

Simulink.fileGenControl('reset');

파일 생성 폴더를 만들려면 set 작업에 'createDir' 옵션을 함께 사용하십시오. 'keepPreviousPath' 옵션을 사용하면 MATLAB 경로에 있는 이전 파일 생성 폴더를 그대로 유지할 수 있습니다.

% 
myCacheFolder = fullfile('C:','aNonDefaultCacheFolder');
myCodeGenFolder = fullfile('C:','aNonDefaultCodeGenFolder');

Simulink.fileGenControl('set', ...
   'CacheFolder',myCacheFolder, ...
   'CodeGenFolder',myCodeGenFolder, ...
   'keepPreviousPath',true, ...
   'createDir',true);

입력 인수

모두 축소

현재 MATLAB 세션의 파일 생성 제어 파라미터를 사용하는 작업을 지정합니다.

  • 'reset' – 파일 생성 제어 파라미터를 Simulink 기본 설정의 값으로 재설정합니다.

  • 'set' – 값을 직접 전달하여 현재 MATLAB 세션에 대한 파일 생성 제어 파라미터를 설정합니다.

  • 'setConfig'Simulink.FileGenConfig 객체의 인스턴스를 사용하여 현재 MATLAB 세션에 대한 파일 생성 제어 파라미터를 설정합니다.

이름 충돌 방지

Simulink.fileGenControl를 사용하여 CacheFolderCodeGenFolder를 설정하면, 지정된 폴더들이 MATLAB 검색 경로에 추가됩니다. 이 함수는 addpath를 사용하여 검색 경로에 폴더를 추가할 때와 마찬가지로 이름 충돌이 발생할 가능성이 있습니다. 예를 들어, CacheFolder 또는 CodeGenFolder에 지정된 폴더에 열려 있는 모델과 이름이 동일한 모델 파일이 포함되어 있는 경우, 이름 충돌이 발생합니다. 자세한 내용은 MATLAB 검색 경로란? 항목과 MATLAB에서 액세스하는 파일이나 폴더 항목을 참조하십시오.

시뮬레이션 캐시 폴더나 코드 생성 폴더에 기본값이 아닌 다른 위치를 사용하려면:

  1. 다음 위치에 존재하며 충돌을 일으킬 가능성이 있는 아티팩트를 모두 삭제하십시오:

    • 현재 작업 폴더, pwd.

    • 사용하려는 기본값이 아닌 시뮬레이션 캐시 및 코드 생성 폴더.

  2. Simulink.fileGenControl 또는 Simulink 기본 설정을 사용하여 시뮬레이션 캐시 및 코드 생성 폴더의 기본값이 아닌 위치를 지정하십시오.

이름-값 인수

모두 축소

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.

예: Simulink.fileGenControl(Action, Name, Value);

설정하려는 파일 생성 제어 파라미터가 포함된 Simulink.FileGenConfig 객체 인스턴스를 지정하십시오.

setConfig에 대한 옵션.

예: Simulink.fileGenControl('setConfig', 'config', cfg);

CacheFolder 파라미터에 대한 시뮬레이션 캐시 폴더 경로 값을 지정하십시오.

set에 대한 옵션.

예: Simulink.fileGenControl('set', 'CacheFolder', myCacheFolder);

CodeGenFolder 파라미터에 대한 코드 생성 폴더 경로 값을 지정하십시오. 절대 경로나 빌드 폴더를 기준으로 한 상대 경로를 지정할 수 있습니다. 예를 들면 다음과 같습니다.

  • 'C:\Work\mymodelsimcache''/mywork/mymodelgencode'는 절대 경로를 지정합니다.

  • 'mymodelsimcache'는 현재 작업 폴더(pwd)를 기준으로 한 상대 경로입니다. 이 소프트웨어는 CacheFolder 또는 CodeGenFolder 파라미터가 설정될 때 상대 경로를 완전한 경로로 변환합니다. 예를 들어, pwd'/mywork'라면, 그 결과는 '/mywork/mymodelsimcache'가 됩니다.

  • '../test/mymodelgencode'pwd를 기준으로 한 상대 경로입니다. pwd'/mywork'라면, 그 결과는 '/test/mymodelgencode'입니다.

set에 대한 옵션.

예: Simulink.fileGenControl('set', 'CodeGenFolder', myCodeGenFolder);

생성된 코드 폴더 내의 하위 폴더 구조를 지정하십시오:

  • Simulink.filegen.CodeGenFolderStructure.ModelSpecific (기본값) – 생성된 코드를 모델별 폴더 내의 하위 폴더에 저장합니다.

  • Simulink.filegen.CodeGenFolderStructure.TargetEnvironmentSubfolder – 모델이 서로 다른 타깃 환경에 맞게 구성된 경우, 각 모델에 대해 생성된 코드를 별도의 하위 폴더에 저장하십시오. 하위 폴더의 이름은 타깃 환경에 해당합니다.

set에 대한 옵션.

예: Simulink.fileGenControl('set', 'CacheFolder', myCacheFolder, ... 'CodeGenFolder', myCodeGenFolder, ... 'CodeGenFolderStructure', ... Simulink.filegen.CodeGenFolderStructure.TargetEnvironmentSubfolder);

MATLAB 경로에서 CacheFolderCodeGenFolder의 이전 값을 유지할지 여부를 지정하십시오:

  • true – MATLAB 경로에 이전 폴더 경로 값을 유지합니다.

  • false (디폴트 값) – MATLAB 경로에서 이전의 오래된 경로 값들을 제거합니다.

reset, set 또는 setConfig에 대한 옵션.

예: Simulink.fileGenControl('reset', 'keepPreviousPath', true);

해당 폴더가 존재하지 않을 경우, 파일 생성을 위해 폴더를 생성할지 여부를 지정하십시오:

  • true – 파일 생성을 위한 폴더를 생성합니다.

  • false (기본값) – 파일 생성을 위한 폴더를 생성하지 않습니다.

set 또는 setConfig에 대한 옵션.

예: Simulink.fileGenControl('set', 'CacheFolder', myCacheFolder, 'CodeGenFolder', myCodeGenFolder, 'keepPreviousPath', true, 'createDir',true);

출력 인수

모두 축소

파일 생성 제어 파라미터의 현재 값을 포함하는 Simulink.FileGenConfig 객체의 인스턴스입니다.

버전 내역

R2010b에 개발됨