Ejemplo n.º 1
0
unsigned char InstallUserDataRecord(
  void *theEnv,
  struct userDataRecord *theRecord)
  {
   theRecord->dataID = UserDataData(theEnv)->UserDataRecordCount;
   UserDataData(theEnv)->UserDataRecordArray[UserDataData(theEnv)->UserDataRecordCount] = theRecord;
   return(UserDataData(theEnv)->UserDataRecordCount++);
  }
Ejemplo n.º 2
0
globle unsigned char InstallUserDataRecord(
  void *theEnv,
  EXEC_STATUS,
  struct userDataRecord *theRecord)
  {
   theRecord->dataID = UserDataData(theEnv,execStatus)->UserDataRecordCount;
   UserDataData(theEnv,execStatus)->UserDataRecordArray[UserDataData(theEnv,execStatus)->UserDataRecordCount] = theRecord;
   return(UserDataData(theEnv,execStatus)->UserDataRecordCount++);
  }
Ejemplo n.º 3
0
struct userData *DeleteUserData(
  void *theEnv,
  unsigned char userDataID,
  struct userData *theList)
  {
   struct userData *theData, *lastData = NULL;
   
   for (theData = theList;
        theData != NULL;
        theData = theData->next)
     {
      if (theData->dataID == userDataID)
        { 
         if (lastData == NULL)
           { theList = theData->next; }
         else
           { lastData->next = theData->next; }
            
         (*UserDataData(theEnv)->UserDataRecordArray[userDataID]->deleteUserData)(theEnv,theData);
         return(theList);
        }
        
      lastData = theData;
     }
        
   return(theList);   
  }
Ejemplo n.º 4
0
void ClearUserDataList(
  void *theEnv,
  struct userData *theList)
  {
   struct userData *nextData;
   
   while (theList != NULL)
     {
      nextData = theList->next;
      (*UserDataData(theEnv)->UserDataRecordArray[theList->dataID]->deleteUserData)(theEnv,theList);
      theList = nextData;
     }
  }
Ejemplo n.º 5
0
globle void ClearUserDataList(
  void *theEnv,
  EXEC_STATUS,
  struct userData *theList)
  {
   struct userData *nextData;
   
   while (theList != NULL)
     {
      nextData = theList->next;
      (*UserDataData(theEnv,execStatus)->UserDataRecordArray[theList->dataID]->deleteUserData)(theEnv,execStatus,theList);
      theList = nextData;
     }
  }
Ejemplo n.º 6
0
struct userData *FetchUserData(
  void *theEnv,
  unsigned char userDataID,
  struct userData **theList)
  {
   struct userData *theData;

   for (theData = *theList;
        theData != NULL;
        theData = theData->next)
     {
      if (theData->dataID == userDataID)
        { return(theData); }
     }
     
   theData = (struct userData *) (*UserDataData(theEnv)->UserDataRecordArray[userDataID]->createUserData)(theEnv);
   theData->dataID = userDataID;
   theData->next = *theList;
   *theList = theData;
   
   return(theData);   
  }