这篇教程C++ DefmoduleData函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中DefmoduleData函数的典型用法代码示例。如果您正苦于以下问题:C++ DefmoduleData函数的具体用法?C++ DefmoduleData怎么用?C++ DefmoduleData使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了DefmoduleData函数的27个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: AllocateDefmoduleGlobalsgloble void AllocateDefmoduleGlobals( void *theEnv) { AllocateEnvironmentData(theEnv,DEFMODULE_DATA,sizeof(struct defmoduleData),NULL); AddEnvironmentCleanupFunction(theEnv,"defmodules",DeallocateDefmoduleData,-1000); DefmoduleData(theEnv)->CallModuleChangeFunctions = TRUE; DefmoduleData(theEnv)->MainModuleRedefinable = TRUE; }
开发者ID:bigsmiles,项目名称:eventCLIPS,代码行数:8,
示例2: AddAfterModuleDefinedFunctiongloble void AddAfterModuleDefinedFunction( void *theEnv, char *name, void (*func)(void *), int priority) { DefmoduleData(theEnv)->AfterModuleDefinedFunctions = AddFunctionToCallList(theEnv,name,priority,func,DefmoduleData(theEnv)->AfterModuleDefinedFunctions,TRUE); }
开发者ID:RobotJustina,项目名称:JUSTINA,代码行数:9,
示例3: AddAfterModuleChangeFunctionvoid AddAfterModuleChangeFunction( Environment *theEnv, const char *name, VoidCallFunction *func, int priority, void *context) { DefmoduleData(theEnv)->AfterModuleChangeFunctions = AddVoidFunctionToCallList(theEnv,name,priority,func,DefmoduleData(theEnv)->AfterModuleChangeFunctions,context); }
开发者ID:DrItanium,项目名称:maya,代码行数:10,
示例4: BsaveStoragestatic void BsaveStorage( void *theEnv, FILE *fp) { unsigned long space; space = sizeof(long) * 2; GenWrite(&space,(unsigned long) sizeof(unsigned long int),fp); GenWrite(&DefmoduleData(theEnv)->BNumberOfDefmodules,(unsigned long) sizeof(long int),fp); GenWrite(&DefmoduleData(theEnv)->NumberOfPortItems,(unsigned long) sizeof(long int),fp); }
开发者ID:femto,项目名称:rbclips,代码行数:11,
示例5: RestoreCurrentModulegloble void RestoreCurrentModule( void *theEnv) { MODULE_STACK_ITEM *tmp; tmp = DefmoduleData(theEnv)->ModuleStack; DefmoduleData(theEnv)->ModuleStack = tmp->next; DefmoduleData(theEnv)->CallModuleChangeFunctions = tmp->changeFlag; DefmoduleData(theEnv)->CurrentModule = tmp->theModule; rtn_struct(theEnv,moduleStackItem,tmp); }
开发者ID:bigsmiles,项目名称:eventCLIPS,代码行数:11,
示例6: RestoreCurrentModulevoid RestoreCurrentModule( Environment *theEnv) { ModuleStackItem *tmp; tmp = DefmoduleData(theEnv)->ModuleStack; DefmoduleData(theEnv)->ModuleStack = tmp->next; DefmoduleData(theEnv)->CallModuleChangeFunctions = tmp->changeFlag; DefmoduleData(theEnv)->CurrentModule = tmp->theModule; rtn_struct(theEnv,moduleStackItem,tmp); }
开发者ID:DrItanium,项目名称:maya,代码行数:11,
示例7: SaveCurrentModulegloble void SaveCurrentModule( void *theEnv) { MODULE_STACK_ITEM *tmp; tmp = get_struct(theEnv,moduleStackItem); tmp->changeFlag = DefmoduleData(theEnv)->CallModuleChangeFunctions; DefmoduleData(theEnv)->CallModuleChangeFunctions = FALSE; tmp->theModule = DefmoduleData(theEnv)->CurrentModule; tmp->next = DefmoduleData(theEnv)->ModuleStack; DefmoduleData(theEnv)->ModuleStack = tmp; }
开发者ID:bigsmiles,项目名称:eventCLIPS,代码行数:12,
示例8: SaveCurrentModulevoid SaveCurrentModule( Environment *theEnv) { ModuleStackItem *tmp; tmp = get_struct(theEnv,moduleStackItem); tmp->changeFlag = DefmoduleData(theEnv)->CallModuleChangeFunctions; DefmoduleData(theEnv)->CallModuleChangeFunctions = false; tmp->theModule = DefmoduleData(theEnv)->CurrentModule; tmp->next = DefmoduleData(theEnv)->ModuleStack; DefmoduleData(theEnv)->ModuleStack = tmp; }
开发者ID:DrItanium,项目名称:maya,代码行数:12,
示例9: UpdateMenus/******************************************************************************* Name: UpdateMenus Description: Updates the windows if necessary Arguments: None Returns: None*******************************************************************************/void UpdateMenus() { void *theEnv = GetCurrentEnvironment(); static long LastModuleIndex = -1; Boolean UpdateAll = False; UpdateWindowsMenu(); if(LastModuleIndex != DefmoduleData(theEnv)->ModuleChangeIndex) { UpdateAll = True; LastModuleIndex = DefmoduleData(theEnv)->ModuleChangeIndex; }#if DEFRULE_CONSTRUCT if((Browse_status[AGENDA_WIN] == True ) ? (UpdateAll || (EnvGetAgendaChanged(theEnv) == CLIPS_TRUE)) : FALSE) { EnvSetAgendaChanged(theEnv,CLIPS_FALSE); PrintChangedAgenda(); } if((Browse_status[FOCUS_WIN] == True) ? ( UpdateAll || (EnvGetFocusChanged(theEnv) == CLIPS_TRUE)) : FALSE) { EnvSetFocusChanged(theEnv,CLIPS_FALSE); PrintChangedFocus(); }#endif#if DEFTEMPLATE_CONSTRUCT if((Browse_status[FACT_WIN] == True) ? ( UpdateAll || (EnvGetFactListChanged(theEnv) == CLIPS_TRUE)) : FALSE) { EnvSetFactListChanged(theEnv,CLIPS_FALSE); PrintChangedFacts(); }#endif#if OBJECT_SYSTEM if((Browse_status[INSTANCE_WIN]) ? (UpdateAll || (EnvGetInstancesChanged(theEnv) == CLIPS_TRUE)) : FALSE) { EnvSetInstancesChanged(theEnv,CLIPS_FALSE); PrintChangedInstances(); }#endif#ifdef DEFGLOBAL_CONSTRUCT if((Browse_status[GLOBAL_WIN] == True) ? (UpdateAll || (EnvGetGlobalsChanged(theEnv) == CLIPS_TRUE)) : FALSE) { EnvSetGlobalsChanged(theEnv,CLIPS_FALSE); PrintChangedGlobals(); }#endif }
开发者ID:RenRenJuan,项目名称:DACLIPS,代码行数:58,
示例10: AddPortConstructItemgloble void AddPortConstructItem( void *theEnv, char *theName, int theType) { struct portConstructItem *newItem; newItem = get_struct(theEnv,portConstructItem); newItem->constructName = theName; newItem->typeExpected = theType; newItem->next = DefmoduleData(theEnv)->ListOfPortConstructItems; DefmoduleData(theEnv)->ListOfPortConstructItems = newItem; }
开发者ID:RobotJustina,项目名称:JUSTINA,代码行数:13,
示例11: BloadBinaryItemstatic void BloadBinaryItem( void *theEnv) { unsigned long int space; GenReadBinary(theEnv,&space,(unsigned long) sizeof(unsigned long int)); if (DefmoduleData(theEnv)->BNumberOfDefmodules == 0) return; BloadandRefresh(theEnv,DefmoduleData(theEnv)->BNumberOfDefmodules,(unsigned) sizeof(struct bsaveDefmodule),UpdateDefmodule); BloadandRefresh(theEnv,DefmoduleData(theEnv)->NumberOfPortItems,(unsigned) sizeof(struct bsavePortItem),UpdatePortItem); SetListOfDefmodules(theEnv,(void *) DefmoduleData(theEnv)->DefmoduleArray); EnvSetCurrentModule(theEnv,(void *) EnvGetNextDefmodule(theEnv,NULL)); }
开发者ID:femto,项目名称:rbclips,代码行数:14,
示例12: DefmoduleDatagloble void *GetModuleItem( void *theEnv, struct defmodule *theModule, int moduleItemIndex) { if (theModule == NULL) { if (DefmoduleData(theEnv)->CurrentModule == NULL) return(NULL); theModule = DefmoduleData(theEnv)->CurrentModule; } if (theModule->itemsArray == NULL) return (NULL); return ((void *) theModule->itemsArray[moduleItemIndex]); }
开发者ID:bigsmiles,项目名称:eventCLIPS,代码行数:14,
示例13: DefmoduleDatavoid *GetModuleItem( Environment *theEnv, Defmodule *theModule, unsigned moduleItemIndex) { if (theModule == NULL) { if (DefmoduleData(theEnv)->CurrentModule == NULL) return NULL; theModule = DefmoduleData(theEnv)->CurrentModule; } if (theModule->itemsArray == NULL) return (NULL); return ((void *) theModule->itemsArray[moduleItemIndex]); }
开发者ID:DrItanium,项目名称:maya,代码行数:15,
示例14: SetModuleItemvoid SetModuleItem( Environment *theEnv, Defmodule *theModule, unsigned moduleItemIndex, void *newValue) { if (theModule == NULL) { if (DefmoduleData(theEnv)->CurrentModule == NULL) return; theModule = DefmoduleData(theEnv)->CurrentModule; } if (theModule->itemsArray == NULL) return; theModule->itemsArray[moduleItemIndex] = (struct defmoduleItemHeader *) newValue; }
开发者ID:DrItanium,项目名称:maya,代码行数:15,
示例15: SetModuleItemgloble void SetModuleItem( void *theEnv, struct defmodule *theModule, int moduleItemIndex, void *newValue) { if (theModule == NULL) { if (DefmoduleData(theEnv)->CurrentModule == NULL) return; theModule = DefmoduleData(theEnv)->CurrentModule; } if (theModule->itemsArray == NULL) return; theModule->itemsArray[moduleItemIndex] = (struct defmoduleItemHeader *) newValue; }
开发者ID:bigsmiles,项目名称:eventCLIPS,代码行数:15,
示例16: DefmoduleCompilerSetupgloble void DefmoduleCompilerSetup( void *theEnv) { DefmoduleData(theEnv)->DefmoduleCodeItem = AddCodeGeneratorItem(theEnv,"defmodule",200,BeforeDefmodulesToCode, InitDefmoduleCode,ConstructToCode,3); }
开发者ID:chrislong,项目名称:clipsrules,代码行数:7,
示例17: returngloble void *EnvGetNextDefmodule( void *theEnv, void *defmodulePtr) { if (defmodulePtr == NULL) { return((void *) DefmoduleData(theEnv)->ListOfDefmodules); } else { return((void *) (((struct defmodule *) defmodulePtr)->next)); } }
开发者ID:bigsmiles,项目名称:eventCLIPS,代码行数:9,
示例18: GetNumberOfDefmodulesunsigned short GetNumberOfDefmodules( Environment *theEnv) {#if DEFMODULE_CONSTRUCT && (! RUN_TIME) && (! BLOAD_ONLY) return DefmoduleData(theEnv)->NumberOfDefmodules;#else return 1;#endif }
开发者ID:DrItanium,项目名称:maya,代码行数:9,
示例19: DeleteDefmodulestatic intBool DeleteDefmodule( void *theEnv, void *theConstruct) { if (strcmp(EnvGetDefmoduleName(theEnv,theConstruct),"MAIN") == 0) { return(DefmoduleData(theEnv)->MainModuleRedefinable); } return(FALSE); }
开发者ID:RobotJustina,项目名称:JUSTINA,代码行数:9,
示例20: SetListOfDefmodulesvoid SetListOfDefmodules( Environment *theEnv, Defmodule *defmodulePtr) { DefmoduleData(theEnv)->ListOfDefmodules = defmodulePtr; DefmoduleData(theEnv)->LastDefmodule = DefmoduleData(theEnv)->ListOfDefmodules; if (DefmoduleData(theEnv)->LastDefmodule == NULL) return; DefmoduleData(theEnv)->LastDefmodule->header.env = theEnv; while (DefmoduleData(theEnv)->LastDefmodule->header.next != NULL) { DefmoduleData(theEnv)->LastDefmodule = (Defmodule *) DefmoduleData(theEnv)->LastDefmodule->header.next; DefmoduleData(theEnv)->LastDefmodule->header.env = theEnv; } }
开发者ID:DrItanium,项目名称:maya,代码行数:16,
示例21: BloadStoragestatic void BloadStorage( void *theEnv) { unsigned long int space; /*=======================================*/ /* Determine the number of defmodule and */ /* port item data structures to be read. */ /*=======================================*/ GenReadBinary(theEnv,&space,(unsigned long) sizeof(unsigned long int)); GenReadBinary(theEnv,&DefmoduleData(theEnv)->BNumberOfDefmodules,(unsigned long) sizeof(long int)); GenReadBinary(theEnv,&DefmoduleData(theEnv)->NumberOfPortItems,(unsigned long) sizeof(long int)); /*================================*/ /* Allocate the space needed for */ /* the defmodule data structures. */ /*================================*/ if (DefmoduleData(theEnv)->BNumberOfDefmodules == 0) { DefmoduleData(theEnv)->DefmoduleArray = NULL; return; } space = (unsigned long) (DefmoduleData(theEnv)->BNumberOfDefmodules * sizeof(struct defmodule)); DefmoduleData(theEnv)->DefmoduleArray = (struct defmodule *) genlongalloc(theEnv,space); /*================================*/ /* Allocate the space needed for */ /* the port item data structures. */ /*================================*/ if (DefmoduleData(theEnv)->NumberOfPortItems == 0) { DefmoduleData(theEnv)->PortItemArray = NULL; return; } space = (unsigned long) (DefmoduleData(theEnv)->NumberOfPortItems * sizeof(struct portItem)); DefmoduleData(theEnv)->PortItemArray = (struct portItem *) genlongalloc(theEnv,space); }
开发者ID:femto,项目名称:rbclips,代码行数:42,
示例22: MarkModulesAsUnvisitedgloble void MarkModulesAsUnvisited( void *theEnv, EXEC_STATUS) { struct defmodule *theModule; DefmoduleData(theEnv,execStatus)->CurrentModule->visitedFlag = FALSE; for (theModule = (struct defmodule *) EnvGetNextDefmodule(theEnv,execStatus,NULL); theModule != NULL; theModule = (struct defmodule *) EnvGetNextDefmodule(theEnv,execStatus,theModule)) { theModule->visitedFlag = FALSE; } }
开发者ID:atrniv,项目名称:CLIPS,代码行数:12,
示例23: RegisterModuleItemunsigned RegisterModuleItem( Environment *theEnv, const char *theItem, AllocateModuleFunction *allocateFunction, FreeModuleFunction *freeFunction, void *(*bloadModuleReference)(Environment *,unsigned long), void (*constructsToCModuleReference)(Environment *,FILE *,unsigned long,unsigned int,unsigned int), FindConstructFunction *findFunction) { struct moduleItem *newModuleItem; newModuleItem = get_struct(theEnv,moduleItem); newModuleItem->name = theItem; newModuleItem->allocateFunction = allocateFunction; newModuleItem->freeFunction = freeFunction; newModuleItem->bloadModuleReference = bloadModuleReference; newModuleItem->constructsToCModuleReference = constructsToCModuleReference; newModuleItem->findFunction = findFunction; newModuleItem->moduleIndex = DefmoduleData(theEnv)->NumberOfModuleItems++; newModuleItem->next = NULL; if (DefmoduleData(theEnv)->LastModuleItem == NULL) { DefmoduleData(theEnv)->ListOfModuleItems = newModuleItem; DefmoduleData(theEnv)->LastModuleItem = newModuleItem; } else { DefmoduleData(theEnv)->LastModuleItem->next = newModuleItem; DefmoduleData(theEnv)->LastModuleItem = newModuleItem; } return newModuleItem->moduleIndex; }
开发者ID:DrItanium,项目名称:maya,代码行数:34,
示例24: UpdateStatusvoid UpdateStatus(void) { void *theEnv = GlobalEnv; static long lastModuleIndex = -1; if (lastModuleIndex != DefmoduleData(theEnv)->ModuleChangeIndex) {#if DEFRULE_CONSTRUCT EnvSetFocusChanged(theEnv,TRUE); EnvSetAgendaChanged(theEnv,TRUE);#endif#if DEFTEMPLATE_CONSTRUCT EnvSetFactListChanged(theEnv,TRUE);#endif#if OBJECT_SYSTEM EnvSetInstancesChanged(theEnv,TRUE);#endif#if DEFGLOBAL_CONSTRUCT EnvSetGlobalsChanged(theEnv,TRUE);#endif lastModuleIndex = DefmoduleData(GlobalEnv)->ModuleChangeIndex; }#if DEFRULE_CONSTRUCT UpdateStatusContent(AgendaWindow); UpdateStatusContent(FocusWindow);#endif#if DEFTEMPLATE_CONSTRUCT UpdateStatusContent(FactsWindow);#endif#if OBJECT_SYSTEM UpdateStatusContent(InstancesWindow);#endif#if DEFGLOBAL_CONSTRUCT UpdateStatusContent(GlobalsWindow); #endif}
开发者ID:Viriana,项目名称:SISE,代码行数:40,
示例25: RegisterModuleItemgloble int RegisterModuleItem( void *theEnv, char *theItem, void *(*allocateFunction)(void *), void (*freeFunction)(void *,void *), void *(*bloadModuleReference)(void *,int), void (*constructsToCModuleReference)(void *,FILE *,int,int,int), void *(*findFunction)(void *,char *)) { struct moduleItem *newModuleItem; newModuleItem = get_struct(theEnv,moduleItem); newModuleItem->name = theItem; newModuleItem->allocateFunction = allocateFunction; newModuleItem->freeFunction = freeFunction; newModuleItem->bloadModuleReference = bloadModuleReference; newModuleItem->constructsToCModuleReference = constructsToCModuleReference; newModuleItem->findFunction = findFunction; newModuleItem->moduleIndex = DefmoduleData(theEnv)->NumberOfModuleItems++; newModuleItem->next = NULL; if (DefmoduleData(theEnv)->LastModuleItem == NULL) { DefmoduleData(theEnv)->ListOfModuleItems = newModuleItem; DefmoduleData(theEnv)->LastModuleItem = newModuleItem; } else { DefmoduleData(theEnv)->LastModuleItem->next = newModuleItem; DefmoduleData(theEnv)->LastModuleItem = newModuleItem; } return(newModuleItem->moduleIndex); }
开发者ID:bigsmiles,项目名称:eventCLIPS,代码行数:34,
示例26: ifgloble struct portConstructItem *ValidPortConstructItem( void *theEnv, char *theName) { struct portConstructItem *theItem; for (theItem = DefmoduleData(theEnv)->ListOfPortConstructItems; theItem != NULL; theItem = theItem->next) { if (strcmp(theName,theItem->constructName) == 0) return(theItem); } return(NULL); }
开发者ID:RobotJustina,项目名称:JUSTINA,代码行数:13,
示例27: ifgloble struct moduleItem *FindModuleItem( void *theEnv, char *theName) { struct moduleItem *theModuleItem; for (theModuleItem = DefmoduleData(theEnv)->ListOfModuleItems; theModuleItem != NULL; theModuleItem = theModuleItem->next) { if (strcmp(theModuleItem->name,theName) == 0) return(theModuleItem); } return(NULL); }
开发者ID:bigsmiles,项目名称:eventCLIPS,代码行数:13,
注:本文中的DefmoduleData函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ DefruleData函数代码示例 C++ DefglobalData函数代码示例 |