Неясное образцовое содержимое, на которое ссылаются, чтобы скрыть интеллектуальную собственность
Simulink.ModelReference.protect(model)
Simulink.ModelReference.protect(model,Name,Value)
[harnessHandle] = Simulink.ModelReference.protect(model,'Harness',true)
[~ ,neededVars] = Simulink.ModelReference.protect(model)
Simulink.ModelReference.protect(
создает защищенную модель из заданного model
)model
. Это помещает защищенную модель в текущую рабочую папку. Защищенная модель имеет то же имя как исходная модель. Это имеет дополнительный .slxp
.
Simulink.ModelReference.protect(
дополнительные опции использования заданы одним или несколькими аргументами пары model
,Name,Value
)Name,Value
.
[
создает модель тестовой обвязки для защищенной модели. Это возвращает указатель используемой модели в harnessHandle
] = Simulink.ModelReference.protect(model
,'Harness
',true)harnessHandle
.
[~ ,
возвращает массив ячеек, который включает имена переменных базового рабочего пространства, используемых защищенной моделью.neededVars
] = Simulink.ModelReference.protect(model
)
Защитите модель, на которую ссылаются, и поместите защищенную модель в текущую рабочую папку.
sldemo_mdlref_bus;
model= 'sldemo_mdlref_counter_bus'
Simulink.ModelReference.protect(model);
Создается защищенная модель под названием sldemo_mdlref_counter_bus.slxp
. Защищенный образцовый файл помещается в текущую рабочую папку.
Защитите модель, на которую ссылаются, и поместите защищенную модель в заданную папку.
sldemo_mdlref_bus; model= 'sldemo_mdlref_counter_bus' Simulink.ModelReference.protect(model,'Path','C:\Work');
Создается защищенная модель под названием sldemo_mdlref_counter_bus.slxp
. Защищенный образцовый файл помещается в C:\Work
.
Защитите модель, на которую ссылаются, сгенерируйте код для него в режиме normal mode и запутайте код.
sldemo_mdlref_bus; model= 'sldemo_mdlref_counter_bus' Simulink.ModelReference.protect(model,'Path','C:\Work','Mode','CodeGeneration',... 'ObfuscateCode',true);
Создается защищенная модель под названием sldemo_mdlref_counter_bus.slxp
. Защищенный образцовый файл помещается в папку C:\Work
. Защищенная модель запускается как дочерний элемент родительской модели. Код, сгенерированный для защищенной модели, запутывается программным обеспечением.
Защитите модель, на которую ссылаются и сгенерируйте HDL-код для него в режиме normal mode.
parent_model= 'hdlcoder_protected_model_parent_harness'; reference_model_to_protect = 'hdlcoder_referenced_model_gain'; Simulink.ModelReference.protect(reference_model_to_protect, ... 'Mode','HDLCodeGeneration')
Создается защищенная модель под названием hdlcoder_referenced_model_gain.slxp
. Защищенный образцовый файл помещается в ту же папку как родительская модель и модель, на которую ссылаются. Защищенная модель запускается как дочерний элемент родительской модели.
Установите опцию hdl на true
с набором Mode к CodeGeneration
включать и поддержку генерации кода C и генерации HDL-кода защищенной модели, которую вы создаете.
parent_model= 'hdlcoder_protected_model_parent_harness'; reference_model_to_protect = 'hdlcoder_referenced_model_gain'; Simulink.ModelReference.protect(reference_model_to_protect, ... 'Mode','CodeGeneration','hdl',true)
Видимость кода системы управления, позволяя пользователям просмотреть только двоичные файлы и заголовки в коде, сгенерированном для защищенной модели.
sldemo_mdlref_bus; model= 'sldemo_mdlref_counter_bus' Simulink.ModelReference.protect(model,'Mode','CodeGeneration','OutputFormat',... 'CompiledBinaries');
Создается защищенная модель под названием sldemo_mdlref_counter_bus.slxp
. Защищенный образцовый файл помещается в текущую рабочую папку. Пользователи могут просмотреть только двоичные файлы и заголовки в коде, сгенерированном для защищенной модели.
Создайте модель тестовой обвязки для защищенной модели и сгенерируйте отчет HTML.
sldemo_mdlref_bus; modelPath= 'sldemo_mdlref_bus/CounterA' [harnessHandle] = Simulink.ModelReference.protect(modelPath,'Path','C:\Work',... 'Harness',true,'Report',true);
Защищенная модель под названием sldemo_mdlref_counter_bus.slxp
создается, наряду с неназванной моделью тестовой обвязки. Защищенный образцовый файл помещается в папку C:\Work
. Папка также содержит отчет HTML. Указатель модели тестовой обвязки возвращен в harnessHandle
.
model
— Имя моделиИмя модели, заданное как строка или вектор символов. Это содержит имя модели или путь блока Model, который ссылается на модель, которая будет защищена.
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Mode','CodeGeneration','OutputFormat','Binaries','ObfuscateCode',true
указывает, что запутываемый код сгенерирован для защищенной модели. Это также указывает что только двоичные файлы и заголовки в сгенерированном коде быть видимым пользователям защищенной модели.'Harness'
— Опция, чтобы создать модель тестовой обвязкиОпция, чтобы создать модель тестовой обвязки, заданную как булево значение.
Пример: 'Harness',true
режим
Режим защиты модели'Normal'
(значение по умолчанию) | 'Accelerator'
| 'CodeGeneration'
| 'HDLCodeGeneration'
| 'ViewOnly'
Режим защиты модели. Задайте одно из следующих значений:
'Normal'
: Если топ-модель запускается в режиме 'Normal'
, защищенные образцовые выполнения как дочерний элемент топ-модели.
'Accelerator'
: топ-модель может запуститься в 'Normal'
, 'Accelerator'
или режиме 'Rapid Accelerator'
.
'CodeGeneration'
: топ-модель может запуститься в 'Normal'
, 'Accelerator'
или режиме 'Rapid Accelerator'
и поддержать генерацию кода.
'HDLCodeGeneration'
: топ-модель может запуститься в 'Normal'
, 'Accelerator'
или режиме 'Rapid Accelerator'
и поддержать генерацию HDL-кода. (Требует лицензии HDL Coder™),
'ViewOnly'
: Выключает Моделируют и Генерируют режимы функциональности кода. Включает режим представления только для чтения.
Пример: 'Mode','Accelerator'
'CodeInterface'
— Интерфейс, через который к сгенерированному коду получает доступ блок Model'Model reference'
(значение по умолчанию) | 'Top model'
Применяется, только если системный конечный файл (SystemTargetFile
) установлен в основанный на ERT системный конечный файл (например, ert.tlc
). Требует лицензии Embedded Coder®.
Задайте одно из следующих значений:
'Model reference'
: доступ Кода через интерфейс модели - ссылки кода, который позволяет использование защищенной модели в иерархии модели - ссылки. Пользователи защищенной модели могут сгенерировать код от родительской модели, которая содержит защищенную модель. Кроме того, пользователи могут запустить блок Model симуляции SIL/PIL с защищенной моделью.
'Top model'
: доступ Кода через автономный интерфейс. Пользователи защищенной модели могут запустить блок Model симуляции SIL/PIL с защищенной моделью.
Пример: 'CodeInterface','Top model'
'ObfuscateCode'
— Опция, чтобы запутать сгенерированный кодОпция, чтобы запутать сгенерированный код, заданный как булево значение. Применимый только, когда генерации кода во время защиты включают. Путаница не поддержана для генерации HDL-кода.
Пример: 'ObfuscateCode',true
path
Папка для защищенной моделиПапка для защищенной модели, заданной как строка или вектор символов.
Пример: 'Path','C:\Work'
'Report'
— Опция, чтобы сгенерировать отчетОпция, чтобы сгенерировать отчет, заданный как булево значение.
Чтобы просмотреть отчет, щелкните правой кнопкой по значку значка защищенной модели и выберите Display Report. Или, вызовите функцию Simulink.ProtectedModel.open
с опцией report
.
Отчет сгенерирован в формате HTML. Это включает информацию о среде, функциональности, лицензионных требованиях и интерфейсе для защищенной модели.
Пример: 'Report',true
'hdl'
— Опция, чтобы сгенерировать HDL-кодОпция, чтобы сгенерировать HDL-код, заданный как булево значение.
Эта опция требует лицензии HDL Coder. Когда вы включаете эту опцию, убедитесь, что вы задаете Mode. Можно установить эту опцию на true
в сочетании с набором Mode к CodeGeneration
включать и поддержку кода С и генерации HDL-кода защищенной модели.
Если вы хотите включить только симуляцию, и поддержка генерации HDL-кода, но не генерация кода C, установила Mode на HDLCodeGeneration
. Вы не должны устанавливать опцию hdl на true
.
Пример: 'hdl',true
'OutputFormat'
Защищенная видимость кода'CompiledBinaries'
(значение по умолчанию) | 'MinimalCode'
| 'AllReferencedHeaders'
Этот аргумент влияет на вывод только, когда вы задаете Mode
как 'Accelerator'
или 'CodeGeneration
. Когда вы задаете Mode
как 'Normal'
, только файл MEX является частью выходного пакета.
Защищенная видимость кода. Этот аргумент определяет, какая часть кода, сгенерированного для защищенной модели, видима пользователям. Задайте одно из следующих значений:
'CompiledBinaries'
: Только двоичные файлы и заголовки видимы.
'MinimalCode'
: Включает только минимальные заголовочные файлы, требуемые создавать код с выбранными настройками сборки. Весь код в папке сборки видим. Пользователи могут осмотреть код в защищенном образцовом отчете и перекомпилировать его в их целях.
'AllReferencedHeaders'
: Включает заголовочные файлы, найденные на включать пути. Весь код в папке сборки видим. Все заголовки, на которые ссылается код, также видимы.
Пример: 'OutputFormat','AllReferencedHeaders'
'Webview'
— Опция, чтобы включать Веб-представлениеОпция, чтобы включать представление только для чтения защищенной модели, заданной как булево значение.
Чтобы открыть Веб-представление защищенной модели, используйте один из следующих методов:
Щелкните правой кнопкой по значку значка защищенной модели и выберите Show Web view.
Используйте функцию Simulink.ProtectedModel.open
. Например, чтобы отобразить Веб-представление для защищенной модели sldemo_mdlref_counter
, можно вызвать:
Simulink.ProtectedModel.open('sldemo_mdlref_counter', 'webview');
Дважды кликните .slxp
защищенный образцовый файл в Браузере текущей папки.
В диалоговом окне Block Parameter для защищенной модели нажмите Open Model.
Пример: 'Webview',true
'Encrypt'
— Опция, чтобы зашифровать защищенную модельОпция, чтобы зашифровать защищенную модель, заданную как булево значение. Применимый, когда вы задали пароль во время защиты, или при помощи следующих методов:
Пароль для представления только для чтения модели: Simulink.ModelReference.ProtectedModel.setPasswordForView
Пароль для симуляции: Simulink.ModelReference.ProtectedModel.setPasswordForSimulation
Пароль для генерации кода: Simulink.ModelReference.ProtectedModel.setPasswordForCodeGeneration
Пароль для генерации HDL-кода: Simulink.ModelReference.ProtectedModel.setPasswordForHDLCodeGeneration
Пример: 'Encrypt',true
'CustomPostProcessingHook'
— Опция, чтобы добавить постобработку функционирует для защищенных образцовых файловОпция, чтобы добавить постобработку функционирует для защищенных образцовых файлов, заданных как указатель на функцию. Функция принимает объект Simulink.ModelReference.ProtectedModel.HookInfo
как входную переменную. Этот объект предоставляет информацию о файлах исходного кода и других файлах, сгенерированных во время защищенного образцового создания. Это также предоставляет информацию об экспортируемых символах, которые вы не должны изменять. До упаковки защищенной модели вызвана функция постобработки.
Для защищенной модели с интерфейсом топ-модели объект Simulink.ModelReference.ProtectedModel.HookInfo
не может предоставить информацию об экспортируемых символах.
Пример: 'CustomPostProcessingHook',@(protectedMdlInf)myHook(protectedMdlInf)
'Modifiable'
— Опция, чтобы создать модифицируемую защищенную модельОпция, чтобы создать модифицируемую защищенную модель, заданную как булево значение. Использовать эту опцию:
Добавьте пароль для модификации с помощью функции Simulink.ModelReference.ProtectedModel.setPasswordForModify
. Если пароль не был добавлен в то время, когда вы создаете модифицируемую защищенную модель, вам предлагают создать тот.
Измените опции своей защищенной модели первым обеспечением пароля модификации с помощью функции Simulink.ModelReference.ProtectedModel.setPasswordForModify
. Затем используйте функцию Simulink.ModelReference.modifyProtectedModel
, чтобы внести ваши изменения опции.
Пример: 'Modifiable',true
'Callbacks'
— Опция, чтобы задать защищенные образцовые коллбэкиОпция, чтобы задать коллбэки для защищенной модели, заданной как массив ячеек объектов Simulink.ProtectedModel.Callback
.
Пример: 'Callbacks',{pmcallback_sim, pmcallback_cg}
harnessHandle
— Указатель модели тестовой обвязкиУказатель модели тестовой обвязки, возвращенной как двойное или 0
, в зависимости от значения Harness
.
Если Harness
является true
, значение является указателем модели тестовой обвязки; в противном случае значением является 0
.
neededVars
— Имена переменных базового рабочего пространстваИмена переменных базового рабочего пространства, используемых защищаемой моделью, возвратились как массив ячеек.
Массив ячеек может также включать переменные, которые не использует защищенная модель.
Simulink.ModelReference.ProtectedModel.clearPasswords
| Simulink.ModelReference.ProtectedModel.clearPasswordsForModel
| Simulink.ModelReference.ProtectedModel.setPasswordForCodeGeneration
| Simulink.ModelReference.ProtectedModel.setPasswordForHDLCodeGeneration
| Simulink.ModelReference.ProtectedModel.setPasswordForModify
| Simulink.ModelReference.ProtectedModel.setPasswordForSimulation
| Simulink.ModelReference.ProtectedModel.setPasswordForView
| Simulink.ModelReference.modifyProtectedModel
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.