Intel Parameter-Framework简介
【-是什么】
- 是一种基于插件(-based)和既定规则(rule-based)的,用于处理各种 的框架。它在运行 系统的 Intel 架构设备上(例如智能手机、平板电脑)被广泛使用。它采用 pfw 语言进行记录并保存在后缀为 “.pfw” 的文件中,再通过特定的转换规则被转换成 XML 格式的文件,描述系统的结构和各个参数()。
【-的用处】
可以用 - 基于既定的规则来为智能手机或平板电脑等设备的各个硬件控制部件(这些控制部件可被视为 )设定合适的值。举个例子,为设备的不同的音频应用场景(播放音乐、打电话、QQ语音等)分别采取合适的音频参数设置,这个过程通常被称为 “audio ”,就可以采用 - 来实现。
【-的文件组织结构】
-文件的目录结构类似于下图:
最顶层的配置文件的文件名应该以 .in 后缀结尾(比如,.xml.in)。如下图:
有 2 个 文件很重要,它们的概念有相似之处可能引起混淆,简单介绍以示区别:
1、 .mk
这个文件中列出了所有必须被引用的meta-
2、 .mk
这个文件中定义了上述的这些meta-
【-的XML格式文件生成规则】
下面的代码是一个示例:
include $(CLEAR_VARS)
LOCAL_MODULE := AudioConfigurableDomains-bytcr-rt5640-default.xml
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := ETC
LOCAL_MODULE_RELATIVE_PATH := parameter-framework/Settings/Audioinclude $(CLEAR_PFW_VARS)
# Refresh tunning + routing domain file for rt5640-default
LOCAL_REQUIRED_MODULES := \parameter-framework.audio.common \parameter-framework.audio.baytrail \ParameterFrameworkConfiguration-bytcr-rt5640-default.xml \AudioClass-bytcr-rt5640-default.xml \CodecSubsystem-bytcr-rt564x-common.xml \CodecSubsystem-bytcr-rt5640-default.xml \SstSubsystem-bytcr-rt5640-default.xml \SstSubsystem-bytcr-rt56xx-common.xml \PFW_TOPLEVEL_FILE := $(TARGET_OUT_ETC)/parameter-framework/ParameterFrameworkConfiguration-bytcr-rt5640-default.xml
PFW_CRITERIA_FILE := $(COMMON_PFW_CONFIG_PATH)/AudioCriteria.txt
PFW_TUNING_FILE := $(LOCAL_PATH)/Settings/Audio/AudioConfigurableDomains-bytcr-rt5640-default.Tuning.xml
PFW_EDD_FILES := \$(PLATFORM_PFW_CONFIG_PATH)/Settings/Audio/routing_scalpe_common.pfw \$(LOCAL_PATH)/Settings/Audio/bytcr-rt5640-default.pfw
PFW_COPYBACK := Settings/Audio/$(LOCAL_MODULE)
include $(BUILD_PFW_SETTINGS)
名称带有PFW_前缀的变量很重要,简单说明一下: