本文整理汇总了C#中WinterLeaf.Engine.Classes.View.Creators.ObjectCreator.sortfk方法的典型用法代码示例。如果您正苦于以下问题:C# ObjectCreator.sortfk方法的具体用法?C# ObjectCreator.sortfk怎么用?C# ObjectCreator.sortfk使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WinterLeaf.Engine.Classes.View.Creators.ObjectCreator
的用法示例。
在下文中一共展示了ObjectCreator.sortfk方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: sfxAutodetect
public static bool sfxAutodetect()
{
// Get all the available devices.
string devices = omni.Util.sfxGetAvailableDevices();
// Collect and sort the devices by preferentiality.
int count = omni.Util.getRecordCount(devices);
ArrayObject deviceTrySequence = new ObjectCreator("ArrayObject").Create().AsString();
for (int i = 0; i < count; i++)
{
string info = omni.Util.getRecord(devices, i);
string provider = omni.Util.getField(info, 0);
deviceTrySequence.push_back(provider, info);
}
deviceTrySequence.sortfk("sfxCompareProvider");
// Try the devices in order.
count = deviceTrySequence.count();
for (int i = 0; i < count; i++)
{
string provider = deviceTrySequence.getKey(i);
string info = deviceTrySequence.getValue(i);
omni.sGlobal["$pref::SFX::provider"] = provider;
omni.sGlobal["$pref::SFX::device"] = omni.Util.getField(info, 1);
omni.sGlobal["$pref::SFX::useHardware"] = omni.Util.getField(info, 2);
// By default we've decided to avoid hardware devices as
// they are buggy and prone to problems.
omni.bGlobal["$pref::SFX::useHardware"] = false;
if (!sfxInit())
continue;
omni.bGlobal["$pref::SFX::autoDetect"] = false;
deviceTrySequence.delete();
return true;
}
// Found no suitable device.
omni.console.error("sfxAutodetect - Could not initialize a valid SFX device.");
omni.sGlobal["$pref::SFX::provider"] = "";
omni.sGlobal["$pref::SFX::device"] = "";
omni.sGlobal["$pref::SFX::useHardware"] = "";
deviceTrySequence.delete();
return false;
}