static int Enum(advanced* p, int* No, datadef* Param) { int Result = NodeEnumTable(No,Param,Params); if (Result == ERR_NONE) { #if defined(TARGET_WINCE) if (Param->No == ADVANCED_WIDCOMMAUDIO && !p->WidcommDLL) Param->Flags |= DF_HIDDEN; if (Param->No == ADVANCED_OLDSHELL && ( (QueryPlatform(PLATFORM_CAPS) & CAPS_OLDSHELL) || QueryPlatform(PLATFORM_TYPENO) == TYPE_SMARTPHONE || (QueryPlatform(PLATFORM_TYPENO) == TYPE_POCKETPC && QueryPlatform(PLATFORM_VER) >= 421))) Param->Flags |= DF_HIDDEN; #endif #if defined(TARGET_PALMOS) if (Param->No == ADVANCED_MEMORYOVERRIDE && !MemGetInfo(NULL)) Param->Flags |= DF_HIDDEN; #endif if (Param->No == ADVANCED_NOWMMX && !(QueryPlatform(PLATFORM_CAPS) & CAPS_ARM_WMMX)) Param->Flags |= DF_HIDDEN; if (Param->No == ADVANCED_HOMESCREEN && QueryPlatform(PLATFORM_TYPENO) != TYPE_SMARTPHONE) Param->Flags |= DF_HIDDEN; if (Param->No == ADVANCED_VR41XX && !(QueryPlatform(PLATFORM_CAPS) != CAPS_MIPS_VR41XX)) Param->Flags |= DF_HIDDEN; } return Result; }
int CodecEnum(codec* p, int* No, datadef* Param) { if (FlowEnum(p,No,Param)==ERR_NONE) return ERR_NONE; if (NodeEnumTable(No,Param,CodecParams)==ERR_NONE) { if (!p->UseComment && Param->No==CODEC_COMMENT) Param->Flags |= DF_RDONLY; return ERR_NONE; } return ERR_INVALID_PARAM; }
static int Enum(openfile* p, int* No, datadef* Param ) { if (NodeEnumTable(No,Param,Params)==ERR_NONE) { if (Param->No == OPENFILE_SAVE_TYPE) Param->Format1 = p->Class; return ERR_NONE; } if (*No >= 0 && *No < p->HistoryCount) { memset(Param,0,sizeof(datadef)); Param->No = OPENFILE_HISTORY + *No; Param->Type = TYPE_STRING; Param->Size = MAXDATA; Param->Flags = DF_HIDDEN | DF_SETUP; Param->Class = OPENFILE_ID; return ERR_NONE; } return ERR_INVALID_PARAM; }
int TimerEnum(void* p, int* No, datadef* Param) { return NodeEnumTable(No,Param,Params); }
static int Enum(gapi* p, int* No, datadef* Param) { if (OverlayEnum(&p->Overlay,No,Param)==ERR_NONE) return ERR_NONE; return NodeEnumTable(No,Param,Params); }
static int Enum(platform* p, int* No, datadef* Param) { return NodeEnumTable(No,Param,Params); }
static int Enum( equalizer* p, int* No, datadef* Param) { if (CodecEnum(&p->Codec,No,Param)==ERR_NONE) return ERR_NONE; return NodeEnumTable(No,Param,Params); }
int IDCTEnum(void* p, int* No, datadef* Param) { if (FlowEnum(p,No,Param)==ERR_NONE) return ERR_NONE; return NodeEnumTable(No,Param,Params); }
int AOutEnum(void* p, int* No, datadef* Param) { if (OutEnum(p,No,Param)==ERR_NONE) return ERR_NONE; return NodeEnumTable(No,Param,AOutParams); }