author | greg |
Wed, 15 Jul 2009 09:32:35 +0200 | |
changeset 555 | ee24dcbd3e64 |
parent 554 | b9b7ed3821f0 |
child 556 | 8296acd119a9 |
--- a/configure Fri Jul 10 11:41:00 2009 +0200 +++ b/configure Wed Jul 15 09:32:35 2009 +0200 @@ -767,6 +767,7 @@ elif [ "$SUB_TARGET" = "unix" ]; then MAKEFILES=$MAKEFILES\ +\ examples/CANOpenShell/Makefile.in\ \ examples/TestMasterSlave/Makefile.in\ \ examples/TestMasterSlaveLSS/Makefile.in\ \ examples/SillySlave/Makefile.in\ @@ -775,6 +776,7 @@ if [ "$SUB_TARGET" = "win32" ]; then MAKEFILES=$MAKEFILES\ +\ examples/CANOpenShell/Makefile.in\ \ examples/TestMasterSlave/Makefile.in\ \ examples/TestMasterSlaveLSS/Makefile.in\ \ examples/SillySlave/Makefile.in\
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/CANOpenShell/CANOpenShell.c Wed Jul 15 09:32:35 2009 +0200 @@ -0,0 +1,487 @@ +/* +This file is part of CanFestival, a library implementing CanOpen Stack. + +Copyright (C): Edouard TISSERANT and Francis DUPIN + +See COPYING file for copyrights details. + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version. + +This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + + +#if defined(WIN32) && !defined(__CYGWIN__) + #include <windows.h> + #define CLEARSCREEN "cls" + #define SLEEP(time) Sleep(time * 1000) +#else + #include <unistd.h> + #include <stdio.h> + #include <string.h> + #include <stdlib.h> + #include <signal.h> + #define CLEARSCREEN "clear" + #define SLEEP(time) sleep(time) +#endif + +//**************************************************************************** +// INCLUDES +#include "canfestival.h" +#include "CANOpenShell.h" +#include "CANOpenShellMasterOD.h" +#include "CANOpenShellSlaveOD.h" + +//**************************************************************************** +// DEFINES +#define MAX_NODES 127 +#define cst_str4(c1, c2, c3, c4) ((((unsigned int)0 | \ + (char)c4 << 8) | \ + (char)c3) << 8 | \ + (char)c2) << 8 | \ + (char)c1 + +#define INIT_ERR 2 +#define QUIT 1 + +//**************************************************************************** +// GLOBALS +char BoardBusName[11]; +char BoardBaudRate[5]; +s_BOARD Board = {BoardBusName, BoardBaudRate}; +CO_Data* CANOpenShellOD_Data; +int init_step = 0; +char LibraryPath[512]; + +/*****************************************************************************/ +#if !defined(WIN32) || defined(__CYGWIN__) +void catch_signal(int sig) +{ + signal(SIGTERM, catch_signal); + signal(SIGINT, catch_signal); + printf("Got Signal %d\n",sig); +} +#endif + +/* Sleep for n seconds */ +void SleepFunction(int second) +{ + SLEEP(second); +} + +/* Ask a slave node to go in operational mode */ +void StartNode(CO_Data* d, UNS8 nodeid) +{ + EnterMutex(); + masterSendNMTstateChange(d, nodeid, NMT_Start_Node); + LeaveMutex(); +} + +/* Ask a slave node to go in pre-operational mode */ +void StopNode(CO_Data* d, UNS8 nodeid) +{ + EnterMutex(); + masterSendNMTstateChange(d, nodeid, NMT_Stop_Node); + LeaveMutex(); +} + +/* Ask a slave node to reset */ +void ResetNode(CO_Data* d, UNS8 nodeid) +{ + EnterMutex(); + masterSendNMTstateChange(d, nodeid, NMT_Reset_Node); + LeaveMutex(); +} + +/* Reset all nodes on the network and print message when boot-up*/ +void DiscoverNodes(CO_Data* d) +{ + printf("Wait for Slave nodes bootup...\n\n"); + ResetNode(CANOpenShellOD_Data, 0x0); +} + +/* Callback function that check the read SDO demand */ +void CheckReadInfoSDO(CO_Data* d, UNS8 nodeid) +{ + UNS32 abortCode; + UNS32 data; + UNS32 size=64; + + if(getReadResultNetworkDict(d, nodeid, &data, &size, &abortCode) != SDO_FINISHED) + printf("Master : Failed in getting information for slave %2.2x, AbortCode :%4.4x \n", nodeid, abortCode); + + /* Finalise last SDO transfer with this node */ + closeSDOtransfer(CANOpenShellOD_Data, nodeid, SDO_CLIENT); + + /* Display data received */ + switch(init_step) + { + case 1: + printf("Device type : %x\n", data); + break; + case 2: + printf("Vendor ID : %x\n", data); + break; + case 3: + printf("Product Code : %x\n", data); + break; + case 4: + printf("Revision Number : %x\n", data); + break; + } + GetSlaveNodeInfo(d, nodeid); +} + +/* Retrieve node informations located at index 0x1000 (Device Type) and 0x1018 (Identity) */ +void GetSlaveNodeInfo(CO_Data* d, UNS8 nodeid) +{ + switch(++init_step) + { + case 1: /* Get device type */ + printf("##################################\n"); + printf("#### Informations for node %x ####\n", nodeid); + printf("##################################\n"); + readNetworkDictCallback(d, nodeid, 0x1000, 0x00, 0, CheckReadInfoSDO); + break; + + case 2: /* Get Vendor ID */ + readNetworkDictCallback(d, nodeid, 0x1018, 0x01, 0, CheckReadInfoSDO); + break; + + case 3: /* Get Product Code */ + readNetworkDictCallback(d, nodeid, 0x1018, 0x02, 0, CheckReadInfoSDO); + break; + + case 4: /* Get Revision Number */ + readNetworkDictCallback(d, nodeid, 0x1018, 0x03, 0, CheckReadInfoSDO); + break; + + case 5: /* Print node info */ + init_step = 0; + } +} + +/* Callback function that check the read SDO demand */ +void CheckReadSDO(CO_Data* d, UNS8 nodeid) +{ + UNS32 abortCode; + UNS32 data; + UNS32 size=64; + + if(getReadResultNetworkDict(d, nodeid, &data, &size, &abortCode) != SDO_FINISHED) + printf("\nResult : Failed in getting information for slave %2.2x, AbortCode :%4.4x \n", nodeid, abortCode); + else + printf("\nResult : = %x\n", data); + + /* Finalise last SDO transfer with this node */ + closeSDOtransfer(CANOpenShellOD_Data, nodeid, SDO_CLIENT); +} + +/* Read a slave node object dictionary entry */ +void ReadDeviceEntry(CO_Data* d, char* sdo) +{ + int nodeid; + int index; + int subindex; + int size; + int datatype = 0; + + sscanf(sdo, "%2x%4x%2x", &nodeid, &index, &subindex); + + printf("##################################\n"); + printf("#### Read SDO ####\n"); + printf("##################################\n"); + printf("NodeId : %2.2x\n", nodeid); + printf("Index : %4.4x\n", index); + printf("SubIndex : %2.2x\n", subindex); + + readNetworkDictCallback(d, (UNS8)nodeid, (UNS16)index, (UNS8)subindex, (UNS8)datatype, CheckReadSDO); +} + +/* Callback function that check the write SDO demand */ +void CheckWriteSDO(CO_Data* d, UNS8 nodeid) +{ + UNS32 abortCode; + + if(getWriteResultNetworkDict(d, nodeid, &abortCode) != SDO_FINISHED) + printf("\nResult : Failed in getting information for slave %2.2x, AbortCode :%4.4x \n", nodeid, abortCode); + else + printf("\nSend data OK\n"); + + /* Finalise last SDO transfer with this node */ + closeSDOtransfer(CANOpenShellOD_Data, nodeid, SDO_CLIENT); +} + +/* Write a slave node object dictionnary entry */ +void WriteDeviceEntry(CO_Data* d, char* sdo) +{ + int nodeid; + int index; + int subindex; + int size; + int data; + + sscanf(sdo, "%2x%4x%2x%2x%4x", &nodeid , &index, &subindex, &size, &data); + + printf("##################################\n"); + printf("#### Write SDO ####\n"); + printf("##################################\n"); + printf("NodeId : %2.2x\n", nodeid); + printf("Index : %4.4x\n", index); + printf("SubIndex : %2.2x\n", subindex); + printf("Size : %2.2x\n", size); + printf("Data : %x\n", data); + + writeNetworkDictCallBackAI(d, nodeid, index, subindex, size, 0, &data, CheckWriteSDO, 1); +} + +void CANOpenShellOD_post_SlaveBootup(CO_Data* d, UNS8 nodeid) +{ + printf("Slave %x boot up\n", nodeid); +} + +/*************************** CALLBACK FUNCTIONS *****************************************/ +void CANOpenShellOD_initialisation(CO_Data* d) +{ + //printf("Master_initialisation\n"); +} + +void CANOpenShellOD_preOperational(CO_Data* d) +{ + //printf("Master_preOperational\n"); +} + +void CANOpenShellOD_operational(CO_Data* d) +{ + //printf("Master_operational\n"); +} + +void CANOpenShellOD_stopped(CO_Data* d) +{ + //printf("Master_stopped\n"); +} + +void CANOpenShellOD_post_sync(CO_Data* d) +{ + //printf("Master_post_sync\n"); +} + +void CANOpenShellOD_post_TPDO(CO_Data* d) +{ + //printf("Master_post_TPDO\n"); +} + +/*************************** MASTER INITIALISATION **********************************/ +void Init(CO_Data* d, UNS32 nodeid) +{ + if(Board.baudrate) + { + /* Defining the node Id */ + setNodeId(CANOpenShellOD_Data, nodeid); + + /* Init */ + setState(CANOpenShellOD_Data, Initialisation); + } +} + +/*************************** MASTER CLEANUP *****************************************/ +void Exit(CO_Data* d, UNS32 nodeid) +{ + if(strcmp(Board.baudrate, "none")) + { + /* Reset all nodes on the network */ + masterSendNMTstateChange(CANOpenShellOD_Data, (UNS8)nodeid, NMT_Reset_Node); + + /* Stop master */ + setState(CANOpenShellOD_Data, Stopped); + } +} + +int ExtractNodeId(char *command) { + int nodeid; + sscanf(command, "%2x", &nodeid); + return nodeid; +} + +int NodeInit(CO_Data* d, int DeviceNodeID, int DeviceIsMaster) +{ + if(DeviceIsMaster) + { + CANOpenShellOD_Data = &CANOpenShellMasterOD_Data; + } + else + { + CANOpenShellOD_Data = &CANOpenShellSlaveOD_Data; + } + + /* Load can library */ + LoadCanDriver(LibraryPath); + + /* Init stack timer */ + TimerInit(); + + /* Define callback functions */ + CANOpenShellOD_Data->initialisation = CANOpenShellOD_initialisation; + CANOpenShellOD_Data->preOperational = CANOpenShellOD_preOperational; + CANOpenShellOD_Data->operational = CANOpenShellOD_operational; + CANOpenShellOD_Data->stopped = CANOpenShellOD_stopped; + CANOpenShellOD_Data->post_sync = CANOpenShellOD_post_sync; + CANOpenShellOD_Data->post_TPDO = CANOpenShellOD_post_TPDO; + CANOpenShellOD_Data->post_SlaveBootup=CANOpenShellOD_post_SlaveBootup; + + /* Open the Peak CANOpen device */ + if(!canOpen(&Board,CANOpenShellOD_Data)) return 1; + + /* Start Timer thread */ + StartTimerLoop(&Init); + return 0; +} + +void help_menu(void) +{ + printf(" MANDATORY COMMAND (must be the first command):\n"); + printf(" load#Can library path,channel,baudrate,device nodeid,device type (m for master, s for slave)\n"); + printf("\n"); + printf(" NETWORK: (if nodeid=0x00 : broadcast)\n"); + printf(" ssta#[nodeid] : Start a node\n"); + printf(" ssto#[nodeid] : Stop a node\n"); + printf(" srst#[nodeid] : Reset a node\n"); + printf(" scan : Reset all nodes and print message when bootup\n"); + printf(" wait#[seconds] : Sleep for n seconds\n"); + printf("\n"); + printf(" SDO: (size parameter : nb BYTES)\n"); + printf(" info#[nodeid]\n"); + printf(" rsdo#[nodeid][index][subindex] : read sdo\n"); + printf(" wsdo#[nodeid][index][subindex][size][data] : write sdo\n"); + printf("\n"); + printf(" help : Display this menu\n"); + printf(" quit : Quit application\n"); + printf("\n"); + printf("\n"); +} + +int ProcessCommand(char* command) +{ + int ret = 0; + int sec = 0; + int DeviceNodeID; + int DeviceType; + + switch(cst_str4(command[0], command[1], command[2], command[3])) + { + case cst_str4('l', 'o', 'a', 'd') : /* Library Interface*/ + ret = sscanf(command, "load#%100[^,],%10[^,],%4[^,],%d,%d", + LibraryPath, + BoardBusName, + BoardBaudRate, + &DeviceNodeID, + &DeviceType); + + if(ret == 5) + { + ret = NodeInit(CANOpenShellOD_Data, DeviceNodeID, DeviceType); + return ret; + } + else{ + help_menu(); + exit(1); + } + break; + case cst_str4('h', 'e', 'l', 'p') : /* Display Help*/ + help_menu(); + break; + case cst_str4('s', 's', 't', 'a') : /* Slave Start*/ + StartNode(CANOpenShellOD_Data, ExtractNodeId(command + 5)); + break; + case cst_str4('s', 's', 't', 'o') : /* Slave Stop */ + StopNode(CANOpenShellOD_Data, ExtractNodeId(command + 5)); + break; + case cst_str4('s', 'r', 's', 't') : /* Slave Reset */ + ResetNode(CANOpenShellOD_Data, ExtractNodeId(command + 5)); + break; + case cst_str4('i', 'n', 'f', 'o') : /* Retrieve node informations */ + GetSlaveNodeInfo(CANOpenShellOD_Data, ExtractNodeId(command + 5)); + break; + case cst_str4('r', 's', 'd', 'o') : /* Read device entry */ + ReadDeviceEntry(CANOpenShellOD_Data, command + 5); + break; + case cst_str4('w', 's', 'd', 'o') : /* Write device entry */ + WriteDeviceEntry(CANOpenShellOD_Data, command + 5); + break; + case cst_str4('s', 'c', 'a', 'n') : /* Display master node state */ + DiscoverNodes(CANOpenShellOD_Data); + break; + case cst_str4('w', 'a', 'i', 't') : /* Display master node state */ + ret = sscanf(command, "wait=%d", &sec); + if(ret == 1) SleepFunction(sec); + break; + case cst_str4('q', 'u', 'i', 't') : /* Quit application */ + return QUIT; + default : + help_menu(); + } + return 0; +} + +/****************************************************************************/ +/*************************** MAIN *****************************************/ +/****************************************************************************/ + +int main(int argc, char** argv) +{ + extern char *optarg; + char command[20]; + char* res; + int ret=0; + int sysret=0; + int i=0; + + /* Print help and exit immediatly*/ + if(argc < 1) + { + help_menu(); + exit(1); + } + + /* Strip command-line*/ + for(i=1 ; i<argc ; i++) + { + if(ProcessCommand(argv[i]) == INIT_ERR) goto init_fail; + } + + #if !defined(WIN32) || defined(__CYGWIN__) + /* install signal handler for manual break */ + signal(SIGTERM, catch_signal); + signal(SIGINT, catch_signal); + #endif + + /* Enter in a loop to read stdin command until "quit" is called */ + while(ret != QUIT) + { + // wait on stdin for string command + res = fgets(command, sizeof(command), stdin); + sysret = system(CLEARSCREEN); + ret = ProcessCommand(command); + fflush(stdout); + } + + printf("Finishing.\n"); + + // Stop timer thread + StopTimerLoop(&Exit); + +init_fail: + TimerCleanup(); + return 0; +} +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/CANOpenShell/CANOpenShell.h Wed Jul 15 09:32:35 2009 +0200 @@ -0,0 +1,40 @@ +/* +This file is part of CanFestival, a library implementing CanOpen Stack. + +Copyright (C): Edouard TISSERANT and Francis DUPIN + +See COPYING file for copyrights details. + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version. + +This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ +#ifdef USE_XENO +#define eprintf(...) +#else +#define eprintf(...) printf (__VA_ARGS__) +#endif + +#include "canfestival.h" + +void help(void); +void StartNode(CO_Data*, UNS8); +void StopNode(CO_Data*, UNS8); +void ResetNode(CO_Data*, UNS8); +void DiscoverNodes(CO_Data*); +void CheckReadInfoSDO(CO_Data*, UNS8); +void GetSlaveNodeInfo(CO_Data*, UNS8); +void CheckReadSDO(CO_Data*, UNS8); +void CheckWriteSDO(CO_Data*, UNS8); +void ReadDeviceEntry(CO_Data*, char*); +void WriteDeviceEntry(CO_Data*, char*);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/CANOpenShell/CANOpenShell.vcproj Wed Jul 15 09:32:35 2009 +0200 @@ -0,0 +1,219 @@ +<?xml version="1.0" encoding="Windows-1252"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="9,00" + Name="CANOpenShell" + ProjectGUID="{06B3C378-9EE4-4C56-A519-775FF499DAB5}" + RootNamespace="CANOpenShell" + Keyword="Win32Proj" + TargetFrameworkVersion="196613" + > + <Platforms> + <Platform + Name="Win32" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + OutputDirectory="$(SolutionDir)$(ConfigurationName)" + IntermediateDirectory="$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + AdditionalIncludeDirectories="..\..\include;..\..\include\win32" + PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="4" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + AdditionalDependencies=""..\..\lib\static\libcanfestival.lib" "..\..\lib\static\libcanfestival_win32.lib" "..\..\lib\static\libgcc.lib"" + LinkIncremental="2" + GenerateDebugInformation="false" + SubSystem="1" + TargetMachine="1" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Release|Win32" + OutputDirectory="$(SolutionDir)$(ConfigurationName)" + IntermediateDirectory="$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="2" + EnableIntrinsicFunctions="true" + PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" + RuntimeLibrary="2" + EnableFunctionLevelLinking="true" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="1" + GenerateDebugInformation="true" + SubSystem="1" + OptimizeReferences="2" + EnableCOMDATFolding="2" + TargetMachine="1" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + </Configurations> + <References> + </References> + <Files> + <Filter + Name="Fichiers sources" + Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" + UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" + > + <File + RelativePath=".\getopt.c" + > + </File> + <File + RelativePath=".\CANOpenShell.c" + > + </File> + <File + RelativePath=".\CANOpenShellOD.c" + > + </File> + </Filter> + <Filter + Name="Fichiers d'en-t�te" + Filter="h;hpp;hxx;hm;inl;inc;xsd" + UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" + > + <File + RelativePath=".\getopt.h" + > + </File> + <File + RelativePath=".\CANOpenShell.h" + > + </File> + <File + RelativePath=".\CANOpenShellOD.h" + > + </File> + </Filter> + <Filter + Name="Fichiers de ressources" + Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" + UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" + > + </Filter> + <File + RelativePath=".\ReadMe.txt" + > + </File> + </Files> + <Globals> + </Globals> +</VisualStudioProject>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/CANOpenShell/CANOpenShellMasterOD.od Wed Jul 15 09:32:35 2009 +0200 @@ -0,0 +1,1577 @@ +<?xml version="1.0"?> +<!DOCTYPE PyObject SYSTEM "PyObjects.dtd"> +<PyObject module="node" class="Node" id="190894796"> +<attr name="Profile" type="dict" id="190907772" > +</attr> +<attr name="Description" type="string"></attr> +<attr name="Dictionary" type="dict" id="190907908" > + <entry> + <key type="numeric" value="4096" /> + <val type="numeric" value="0" /> + </entry> + <entry> + <key type="numeric" value="4097" /> + <val type="numeric" value="0" /> + </entry> + <entry> + <key type="numeric" value="4101" /> + <val type="numeric" value="1073741952" /> + </entry> + <entry> + <key type="numeric" value="4102" /> + <val type="numeric" value="50000" /> + </entry> + <entry> + <key type="numeric" value="4119" /> + <val type="numeric" value="0" /> + </entry> + <entry> + <key type="numeric" value="4120" /> + <val type="list" id="190895756" > + <item type="numeric" value="0" /> + <item type="numeric" value="0" /> + <item type="numeric" value="0" /> + <item type="numeric" value="0" /> + </val> + </entry> + <entry> + <key type="numeric" value="4736" /> + <val type="list" id="190897452" > + <item type="numeric" value="1536" /> + <item type="numeric" value="1408" /> + <item type="numeric" value="0" /> + </val> + </entry> + <entry> + <key type="numeric" value="4737" /> + <val type="list" id="190897516" > + <item type="numeric" value="1537" /> + <item type="numeric" value="1409" /> + <item type="numeric" value="1" /> + </val> + </entry> + <entry> + <key type="numeric" value="4738" /> + <val type="list" id="190897388" > + <item type="numeric" value="1538" /> + <item type="numeric" value="1410" /> + <item type="numeric" value="2" /> + </val> + </entry> + <entry> + <key type="numeric" value="4739" /> + <val type="list" id="190897260" > + <item type="numeric" value="1539" /> + <item type="numeric" value="1411" /> + <item type="numeric" value="3" /> + </val> + </entry> + <entry> + <key type="numeric" value="4740" /> + <val type="list" id="190897772" > + <item type="numeric" value="1540" /> + <item type="numeric" value="1412" /> + <item type="numeric" value="4" /> + </val> + </entry> + <entry> + <key type="numeric" value="4741" /> + <val type="list" id="190896396" > + <item type="numeric" value="1541" /> + <item type="numeric" value="1413" /> + <item type="numeric" value="5" /> + </val> + </entry> + <entry> + <key type="numeric" value="4742" /> + <val type="list" id="190896332" > + <item type="numeric" value="1542" /> + <item type="numeric" value="1414" /> + <item type="numeric" value="6" /> + </val> + </entry> + <entry> + <key type="numeric" value="4743" /> + <val type="list" id="190896268" > + <item type="numeric" value="1543" /> + <item type="numeric" value="1415" /> + <item type="numeric" value="7" /> + </val> + </entry> + <entry> + <key type="numeric" value="4744" /> + <val type="list" id="190896204" > + <item type="numeric" value="1544" /> + <item type="numeric" value="1416" /> + <item type="numeric" value="8" /> + </val> + </entry> + <entry> + <key type="numeric" value="4745" /> + <val type="list" id="190896140" > + <item type="numeric" value="1545" /> + <item type="numeric" value="1417" /> + <item type="numeric" value="9" /> + </val> + </entry> + <entry> + <key type="numeric" value="4746" /> + <val type="list" id="190895340" > + <item type="numeric" value="1546" /> + <item type="numeric" value="1418" /> + <item type="numeric" value="10" /> + </val> + </entry> + <entry> + <key type="numeric" value="4747" /> + <val type="list" id="190895404" > + <item type="numeric" value="1547" /> + <item type="numeric" value="1419" /> + <item type="numeric" value="11" /> + </val> + </entry> + <entry> + <key type="numeric" value="4748" /> + <val type="list" id="190895212" > + <item type="numeric" value="1548" /> + <item type="numeric" value="1420" /> + <item type="numeric" value="12" /> + </val> + </entry> + <entry> + <key type="numeric" value="4749" /> + <val type="list" id="190895276" > + <item type="numeric" value="1549" /> + <item type="numeric" value="1421" /> + <item type="numeric" value="13" /> + </val> + </entry> + <entry> + <key type="numeric" value="4750" /> + <val type="list" id="190895468" > + <item type="numeric" value="1550" /> + <item type="numeric" value="1422" /> + <item type="numeric" value="14" /> + </val> + </entry> + <entry> + <key type="numeric" value="4751" /> + <val type="list" id="190898092" > + <item type="numeric" value="1551" /> + <item type="numeric" value="1423" /> + <item type="numeric" value="15" /> + </val> + </entry> + <entry> + <key type="numeric" value="4752" /> + <val type="list" id="190897836" > + <item type="numeric" value="1552" /> + <item type="numeric" value="1424" /> + <item type="numeric" value="16" /> + </val> + </entry> + <entry> + <key type="numeric" value="4753" /> + <val type="list" id="190897964" > + <item type="numeric" value="1553" /> + <item type="numeric" value="1425" /> + <item type="numeric" value="17" /> + </val> + </entry> + <entry> + <key type="numeric" value="4754" /> + <val type="list" id="190896908" > + <item type="numeric" value="1554" /> + <item type="numeric" value="1426" /> + <item type="numeric" value="18" /> + </val> + </entry> + <entry> + <key type="numeric" value="4755" /> + <val type="list" id="190896972" > + <item type="numeric" value="1555" /> + <item type="numeric" value="1427" /> + <item type="numeric" value="19" /> + </val> + </entry> + <entry> + <key type="numeric" value="4756" /> + <val type="list" id="190896780" > + <item type="numeric" value="1556" /> + <item type="numeric" value="1428" /> + <item type="numeric" value="20" /> + </val> + </entry> + <entry> + <key type="numeric" value="4757" /> + <val type="list" id="190896844" > + <item type="numeric" value="1557" /> + <item type="numeric" value="1429" /> + <item type="numeric" value="21" /> + </val> + </entry> + <entry> + <key type="numeric" value="4758" /> + <val type="list" id="190897068" > + <item type="numeric" value="1558" /> + <item type="numeric" value="1430" /> + <item type="numeric" value="22" /> + </val> + </entry> + <entry> + <key type="numeric" value="4759" /> + <val type="list" id="190895916" > + <item type="numeric" value="1559" /> + <item type="numeric" value="1431" /> + <item type="numeric" value="23" /> + </val> + </entry> + <entry> + <key type="numeric" value="4760" /> + <val type="list" id="190895852" > + <item type="numeric" value="1560" /> + <item type="numeric" value="1432" /> + <item type="numeric" value="24" /> + </val> + </entry> + <entry> + <key type="numeric" value="4761" /> + <val type="list" id="190896044" > + <item type="numeric" value="1561" /> + <item type="numeric" value="1433" /> + <item type="numeric" value="25" /> + </val> + </entry> + <entry> + <key type="numeric" value="4762" /> + <val type="list" id="190895980" > + <item type="numeric" value="1562" /> + <item type="numeric" value="1434" /> + <item type="numeric" value="26" /> + </val> + </entry> + <entry> + <key type="numeric" value="4763" /> + <val type="list" id="190896108" > + <item type="numeric" value="1563" /> + <item type="numeric" value="1435" /> + <item type="numeric" value="27" /> + </val> + </entry> + <entry> + <key type="numeric" value="4764" /> + <val type="list" id="190895116" > + <item type="numeric" value="1564" /> + <item type="numeric" value="1436" /> + <item type="numeric" value="28" /> + </val> + </entry> + <entry> + <key type="numeric" value="4765" /> + <val type="list" id="190894924" > + <item type="numeric" value="1565" /> + <item type="numeric" value="1437" /> + <item type="numeric" value="29" /> + </val> + </entry> + <entry> + <key type="numeric" value="4766" /> + <val type="list" id="190894860" > + <item type="numeric" value="1566" /> + <item type="numeric" value="1438" /> + <item type="numeric" value="30" /> + </val> + </entry> + <entry> + <key type="numeric" value="4767" /> + <val type="list" id="190895052" > + <item type="numeric" value="1567" /> + <item type="numeric" value="1439" /> + <item type="numeric" value="31" /> + </val> + </entry> + <entry> + <key type="numeric" value="4768" /> + <val type="list" id="190894988" > + <item type="numeric" value="1568" /> + <item type="numeric" value="1440" /> + <item type="numeric" value="32" /> + </val> + </entry> + <entry> + <key type="numeric" value="4769" /> + <val type="list" id="190900684" > + <item type="numeric" value="1569" /> + <item type="numeric" value="1441" /> + <item type="numeric" value="33" /> + </val> + </entry> + <entry> + <key type="numeric" value="4770" /> + <val type="list" id="190900300" > + <item type="numeric" value="1570" /> + <item type="numeric" value="1442" /> + <item type="numeric" value="34" /> + </val> + </entry> + <entry> + <key type="numeric" value="4771" /> + <val type="list" id="190900364" > + <item type="numeric" value="1571" /> + <item type="numeric" value="1443" /> + <item type="numeric" value="35" /> + </val> + </entry> + <entry> + <key type="numeric" value="4772" /> + <val type="list" id="190900460" > + <item type="numeric" value="1572" /> + <item type="numeric" value="1444" /> + <item type="numeric" value="36" /> + </val> + </entry> + <entry> + <key type="numeric" value="4773" /> + <val type="list" id="190900556" > + <item type="numeric" value="1573" /> + <item type="numeric" value="1445" /> + <item type="numeric" value="37" /> + </val> + </entry> + <entry> + <key type="numeric" value="4774" /> + <val type="list" id="190901292" > + <item type="numeric" value="1574" /> + <item type="numeric" value="1446" /> + <item type="numeric" value="38" /> + </val> + </entry> + <entry> + <key type="numeric" value="4775" /> + <val type="list" id="190901196" > + <item type="numeric" value="1575" /> + <item type="numeric" value="1447" /> + <item type="numeric" value="39" /> + </val> + </entry> + <entry> + <key type="numeric" value="4776" /> + <val type="list" id="190901068" > + <item type="numeric" value="1576" /> + <item type="numeric" value="1448" /> + <item type="numeric" value="40" /> + </val> + </entry> + <entry> + <key type="numeric" value="4777" /> + <val type="list" id="190900972" > + <item type="numeric" value="1577" /> + <item type="numeric" value="1449" /> + <item type="numeric" value="41" /> + </val> + </entry> + <entry> + <key type="numeric" value="4778" /> + <val type="list" id="190900844" > + <item type="numeric" value="1578" /> + <item type="numeric" value="1450" /> + <item type="numeric" value="42" /> + </val> + </entry> + <entry> + <key type="numeric" value="4779" /> + <val type="list" id="190898956" > + <item type="numeric" value="1579" /> + <item type="numeric" value="1451" /> + <item type="numeric" value="43" /> + </val> + </entry> + <entry> + <key type="numeric" value="4780" /> + <val type="list" id="190901644" > + <item type="numeric" value="1580" /> + <item type="numeric" value="1452" /> + <item type="numeric" value="44" /> + </val> + </entry> + <entry> + <key type="numeric" value="4781" /> + <val type="list" id="190902220" > + <item type="numeric" value="1581" /> + <item type="numeric" value="1453" /> + <item type="numeric" value="45" /> + </val> + </entry> + <entry> + <key type="numeric" value="4782" /> + <val type="list" id="190902092" > + <item type="numeric" value="1582" /> + <item type="numeric" value="1454" /> + <item type="numeric" value="46" /> + </val> + </entry> + <entry> + <key type="numeric" value="4783" /> + <val type="list" id="190902156" > + <item type="numeric" value="1583" /> + <item type="numeric" value="1455" /> + <item type="numeric" value="47" /> + </val> + </entry> + <entry> + <key type="numeric" value="4784" /> + <val type="list" id="190901708" > + <item type="numeric" value="1584" /> + <item type="numeric" value="1456" /> + <item type="numeric" value="48" /> + </val> + </entry> + <entry> + <key type="numeric" value="4785" /> + <val type="list" id="190901772" > + <item type="numeric" value="1585" /> + <item type="numeric" value="1457" /> + <item type="numeric" value="49" /> + </val> + </entry> + <entry> + <key type="numeric" value="4786" /> + <val type="list" id="190901868" > + <item type="numeric" value="1586" /> + <item type="numeric" value="1458" /> + <item type="numeric" value="50" /> + </val> + </entry> + <entry> + <key type="numeric" value="4787" /> + <val type="list" id="190901932" > + <item type="numeric" value="1587" /> + <item type="numeric" value="1459" /> + <item type="numeric" value="51" /> + </val> + </entry> + <entry> + <key type="numeric" value="4788" /> + <val type="list" id="190898252" > + <item type="numeric" value="1588" /> + <item type="numeric" value="1460" /> + <item type="numeric" value="52" /> + </val> + </entry> + <entry> + <key type="numeric" value="4789" /> + <val type="list" id="190898380" > + <item type="numeric" value="1589" /> + <item type="numeric" value="1461" /> + <item type="numeric" value="53" /> + </val> + </entry> + <entry> + <key type="numeric" value="4790" /> + <val type="list" id="190898636" > + <item type="numeric" value="1590" /> + <item type="numeric" value="1462" /> + <item type="numeric" value="54" /> + </val> + </entry> + <entry> + <key type="numeric" value="4791" /> + <val type="list" id="190898508" > + <item type="numeric" value="1591" /> + <item type="numeric" value="1463" /> + <item type="numeric" value="55" /> + </val> + </entry> + <entry> + <key type="numeric" value="4792" /> + <val type="list" id="190898764" > + <item type="numeric" value="1592" /> + <item type="numeric" value="1464" /> + <item type="numeric" value="56" /> + </val> + </entry> + <entry> + <key type="numeric" value="4793" /> + <val type="list" id="190901996" > + <item type="numeric" value="1593" /> + <item type="numeric" value="1465" /> + <item type="numeric" value="57" /> + </val> + </entry> + <entry> + <key type="numeric" value="4794" /> + <val type="list" id="190901484" > + <item type="numeric" value="1594" /> + <item type="numeric" value="1466" /> + <item type="numeric" value="58" /> + </val> + </entry> + <entry> + <key type="numeric" value="4795" /> + <val type="list" id="190901612" > + <item type="numeric" value="1595" /> + <item type="numeric" value="1467" /> + <item type="numeric" value="59" /> + </val> + </entry> + <entry> + <key type="numeric" value="4796" /> + <val type="list" id="190899660" > + <item type="numeric" value="1596" /> + <item type="numeric" value="1468" /> + <item type="numeric" value="60" /> + </val> + </entry> + <entry> + <key type="numeric" value="4797" /> + <val type="list" id="190899532" > + <item type="numeric" value="1597" /> + <item type="numeric" value="1469" /> + <item type="numeric" value="61" /> + </val> + </entry> + <entry> + <key type="numeric" value="4798" /> + <val type="list" id="190899404" > + <item type="numeric" value="1598" /> + <item type="numeric" value="1470" /> + <item type="numeric" value="62" /> + </val> + </entry> + <entry> + <key type="numeric" value="4799" /> + <val type="list" id="190899276" > + <item type="numeric" value="1599" /> + <item type="numeric" value="1471" /> + <item type="numeric" value="63" /> + </val> + </entry> + <entry> + <key type="numeric" value="4800" /> + <val type="list" id="190899148" > + <item type="numeric" value="1600" /> + <item type="numeric" value="1472" /> + <item type="numeric" value="64" /> + </val> + </entry> + <entry> + <key type="numeric" value="4801" /> + <val type="list" id="190901452" > + <item type="numeric" value="1601" /> + <item type="numeric" value="1473" /> + <item type="numeric" value="65" /> + </val> + </entry> + <entry> + <key type="numeric" value="4802" /> + <val type="list" id="190901324" > + <item type="numeric" value="1602" /> + <item type="numeric" value="1474" /> + <item type="numeric" value="66" /> + </val> + </entry> + <entry> + <key type="numeric" value="4803" /> + <val type="list" id="190900236" > + <item type="numeric" value="1603" /> + <item type="numeric" value="1475" /> + <item type="numeric" value="67" /> + </val> + </entry> + <entry> + <key type="numeric" value="4804" /> + <val type="list" id="190900044" > + <item type="numeric" value="1604" /> + <item type="numeric" value="1476" /> + <item type="numeric" value="68" /> + </val> + </entry> + <entry> + <key type="numeric" value="4805" /> + <val type="list" id="190900172" > + <item type="numeric" value="1605" /> + <item type="numeric" value="1477" /> + <item type="numeric" value="69" /> + </val> + </entry> + <entry> + <key type="numeric" value="4806" /> + <val type="list" id="190899788" > + <item type="numeric" value="1606" /> + <item type="numeric" value="1478" /> + <item type="numeric" value="70" /> + </val> + </entry> + <entry> + <key type="numeric" value="4807" /> + <val type="list" id="190899916" > + <item type="numeric" value="1607" /> + <item type="numeric" value="1479" /> + <item type="numeric" value="71" /> + </val> + </entry> + <entry> + <key type="numeric" value="4808" /> + <val type="list" id="190901516" > + <item type="numeric" value="1608" /> + <item type="numeric" value="1480" /> + <item type="numeric" value="72" /> + </val> + </entry> + <entry> + <key type="numeric" value="4809" /> + <val type="list" id="190903148" > + <item type="numeric" value="1609" /> + <item type="numeric" value="1481" /> + <item type="numeric" value="73" /> + </val> + </entry> + <entry> + <key type="numeric" value="4810" /> + <val type="list" id="190902988" > + <item type="numeric" value="1610" /> + <item type="numeric" value="1482" /> + <item type="numeric" value="74" /> + </val> + </entry> + <entry> + <key type="numeric" value="4811" /> + <val type="list" id="190902892" > + <item type="numeric" value="1611" /> + <item type="numeric" value="1483" /> + <item type="numeric" value="75" /> + </val> + </entry> + <entry> + <key type="numeric" value="4812" /> + <val type="list" id="190902412" > + <item type="numeric" value="1612" /> + <item type="numeric" value="1484" /> + <item type="numeric" value="76" /> + </val> + </entry> + <entry> + <key type="numeric" value="4813" /> + <val type="list" id="190902380" > + <item type="numeric" value="1613" /> + <item type="numeric" value="1485" /> + <item type="numeric" value="77" /> + </val> + </entry> + <entry> + <key type="numeric" value="4814" /> + <val type="list" id="190903020" > + <item type="numeric" value="1614" /> + <item type="numeric" value="1486" /> + <item type="numeric" value="78" /> + </val> + </entry> + <entry> + <key type="numeric" value="4815" /> + <val type="list" id="190902764" > + <item type="numeric" value="1615" /> + <item type="numeric" value="1487" /> + <item type="numeric" value="79" /> + </val> + </entry> + <entry> + <key type="numeric" value="4816" /> + <val type="list" id="190902572" > + <item type="numeric" value="1616" /> + <item type="numeric" value="1488" /> + <item type="numeric" value="80" /> + </val> + </entry> + <entry> + <key type="numeric" value="4817" /> + <val type="list" id="190902508" > + <item type="numeric" value="1617" /> + <item type="numeric" value="1489" /> + <item type="numeric" value="81" /> + </val> + </entry> + <entry> + <key type="numeric" value="4818" /> + <val type="list" id="190902636" > + <item type="numeric" value="1618" /> + <item type="numeric" value="1490" /> + <item type="numeric" value="82" /> + </val> + </entry> + <entry> + <key type="numeric" value="4819" /> + <val type="list" id="190902828" > + <item type="numeric" value="1619" /> + <item type="numeric" value="1491" /> + <item type="numeric" value="83" /> + </val> + </entry> + <entry> + <key type="numeric" value="4820" /> + <val type="list" id="190902860" > + <item type="numeric" value="1620" /> + <item type="numeric" value="1492" /> + <item type="numeric" value="84" /> + </val> + </entry> + <entry> + <key type="numeric" value="4821" /> + <val type="list" id="190903628" > + <item type="numeric" value="1621" /> + <item type="numeric" value="1493" /> + <item type="numeric" value="85" /> + </val> + </entry> + <entry> + <key type="numeric" value="4822" /> + <val type="list" id="190903212" > + <item type="numeric" value="1622" /> + <item type="numeric" value="1494" /> + <item type="numeric" value="86" /> + </val> + </entry> + <entry> + <key type="numeric" value="4823" /> + <val type="list" id="190903276" > + <item type="numeric" value="1623" /> + <item type="numeric" value="1495" /> + <item type="numeric" value="87" /> + </val> + </entry> + <entry> + <key type="numeric" value="4824" /> + <val type="list" id="190903372" > + <item type="numeric" value="1624" /> + <item type="numeric" value="1496" /> + <item type="numeric" value="88" /> + </val> + </entry> + <entry> + <key type="numeric" value="4825" /> + <val type="list" id="190903500" > + <item type="numeric" value="1625" /> + <item type="numeric" value="1497" /> + <item type="numeric" value="89" /> + </val> + </entry> + <entry> + <key type="numeric" value="4826" /> + <val type="list" id="190903724" > + <item type="numeric" value="1626" /> + <item type="numeric" value="1498" /> + <item type="numeric" value="90" /> + </val> + </entry> + <entry> + <key type="numeric" value="4827" /> + <val type="list" id="190903788" > + <item type="numeric" value="1627" /> + <item type="numeric" value="1499" /> + <item type="numeric" value="91" /> + </val> + </entry> + <entry> + <key type="numeric" value="4828" /> + <val type="list" id="190903852" > + <item type="numeric" value="1628" /> + <item type="numeric" value="1500" /> + <item type="numeric" value="92" /> + </val> + </entry> + <entry> + <key type="numeric" value="4829" /> + <val type="list" id="190903916" > + <item type="numeric" value="1629" /> + <item type="numeric" value="1501" /> + <item type="numeric" value="93" /> + </val> + </entry> + <entry> + <key type="numeric" value="4830" /> + <val type="list" id="190903980" > + <item type="numeric" value="1630" /> + <item type="numeric" value="1502" /> + <item type="numeric" value="94" /> + </val> + </entry> + <entry> + <key type="numeric" value="4831" /> + <val type="list" id="190904044" > + <item type="numeric" value="1631" /> + <item type="numeric" value="1503" /> + <item type="numeric" value="95" /> + </val> + </entry> + <entry> + <key type="numeric" value="4832" /> + <val type="list" id="190904108" > + <item type="numeric" value="1632" /> + <item type="numeric" value="1504" /> + <item type="numeric" value="96" /> + </val> + </entry> + <entry> + <key type="numeric" value="4833" /> + <val type="list" id="190904172" > + <item type="numeric" value="1633" /> + <item type="numeric" value="1505" /> + <item type="numeric" value="97" /> + </val> + </entry> + <entry> + <key type="numeric" value="4834" /> + <val type="list" id="190904236" > + <item type="numeric" value="1634" /> + <item type="numeric" value="1506" /> + <item type="numeric" value="98" /> + </val> + </entry> + <entry> + <key type="numeric" value="4835" /> + <val type="list" id="190904300" > + <item type="numeric" value="1635" /> + <item type="numeric" value="1507" /> + <item type="numeric" value="99" /> + </val> + </entry> + <entry> + <key type="numeric" value="4836" /> + <val type="list" id="190904364" > + <item type="numeric" value="1636" /> + <item type="numeric" value="1508" /> + <item type="numeric" value="100" /> + </val> + </entry> + <entry> + <key type="numeric" value="4837" /> + <val type="list" id="190904428" > + <item type="numeric" value="1637" /> + <item type="numeric" value="1509" /> + <item type="numeric" value="101" /> + </val> + </entry> + <entry> + <key type="numeric" value="4838" /> + <val type="list" id="190904492" > + <item type="numeric" value="1638" /> + <item type="numeric" value="1510" /> + <item type="numeric" value="102" /> + </val> + </entry> + <entry> + <key type="numeric" value="4839" /> + <val type="list" id="190904556" > + <item type="numeric" value="1639" /> + <item type="numeric" value="1511" /> + <item type="numeric" value="103" /> + </val> + </entry> + <entry> + <key type="numeric" value="4840" /> + <val type="list" id="190904620" > + <item type="numeric" value="1640" /> + <item type="numeric" value="1512" /> + <item type="numeric" value="104" /> + </val> + </entry> + <entry> + <key type="numeric" value="4841" /> + <val type="list" id="190904684" > + <item type="numeric" value="1641" /> + <item type="numeric" value="1513" /> + <item type="numeric" value="105" /> + </val> + </entry> + <entry> + <key type="numeric" value="4842" /> + <val type="list" id="190904748" > + <item type="numeric" value="1642" /> + <item type="numeric" value="1514" /> + <item type="numeric" value="106" /> + </val> + </entry> + <entry> + <key type="numeric" value="4843" /> + <val type="list" id="190904812" > + <item type="numeric" value="1643" /> + <item type="numeric" value="1515" /> + <item type="numeric" value="107" /> + </val> + </entry> + <entry> + <key type="numeric" value="4844" /> + <val type="list" id="190904876" > + <item type="numeric" value="1644" /> + <item type="numeric" value="1516" /> + <item type="numeric" value="108" /> + </val> + </entry> + <entry> + <key type="numeric" value="4845" /> + <val type="list" id="190904940" > + <item type="numeric" value="1645" /> + <item type="numeric" value="1517" /> + <item type="numeric" value="109" /> + </val> + </entry> + <entry> + <key type="numeric" value="4846" /> + <val type="list" id="190905004" > + <item type="numeric" value="1646" /> + <item type="numeric" value="1518" /> + <item type="numeric" value="110" /> + </val> + </entry> + <entry> + <key type="numeric" value="4847" /> + <val type="list" id="190905068" > + <item type="numeric" value="1647" /> + <item type="numeric" value="1519" /> + <item type="numeric" value="111" /> + </val> + </entry> + <entry> + <key type="numeric" value="4848" /> + <val type="list" id="190905132" > + <item type="numeric" value="1648" /> + <item type="numeric" value="1520" /> + <item type="numeric" value="112" /> + </val> + </entry> + <entry> + <key type="numeric" value="4849" /> + <val type="list" id="190905196" > + <item type="numeric" value="1649" /> + <item type="numeric" value="1521" /> + <item type="numeric" value="113" /> + </val> + </entry> + <entry> + <key type="numeric" value="4850" /> + <val type="list" id="190905260" > + <item type="numeric" value="1650" /> + <item type="numeric" value="1522" /> + <item type="numeric" value="114" /> + </val> + </entry> + <entry> + <key type="numeric" value="4851" /> + <val type="list" id="190905324" > + <item type="numeric" value="1651" /> + <item type="numeric" value="1523" /> + <item type="numeric" value="115" /> + </val> + </entry> + <entry> + <key type="numeric" value="4852" /> + <val type="list" id="190905388" > + <item type="numeric" value="1652" /> + <item type="numeric" value="1524" /> + <item type="numeric" value="116" /> + </val> + </entry> + <entry> + <key type="numeric" value="4853" /> + <val type="list" id="190905452" > + <item type="numeric" value="1653" /> + <item type="numeric" value="1525" /> + <item type="numeric" value="117" /> + </val> + </entry> + <entry> + <key type="numeric" value="4854" /> + <val type="list" id="190905516" > + <item type="numeric" value="1654" /> + <item type="numeric" value="1526" /> + <item type="numeric" value="118" /> + </val> + </entry> + <entry> + <key type="numeric" value="4855" /> + <val type="list" id="190905580" > + <item type="numeric" value="1655" /> + <item type="numeric" value="1527" /> + <item type="numeric" value="119" /> + </val> + </entry> + <entry> + <key type="numeric" value="4856" /> + <val type="list" id="190905644" > + <item type="numeric" value="1656" /> + <item type="numeric" value="1528" /> + <item type="numeric" value="120" /> + </val> + </entry> + <entry> + <key type="numeric" value="4857" /> + <val type="list" id="190905708" > + <item type="numeric" value="1657" /> + <item type="numeric" value="1529" /> + <item type="numeric" value="121" /> + </val> + </entry> + <entry> + <key type="numeric" value="4858" /> + <val type="list" id="190905772" > + <item type="numeric" value="1658" /> + <item type="numeric" value="1530" /> + <item type="numeric" value="122" /> + </val> + </entry> + <entry> + <key type="numeric" value="4859" /> + <val type="list" id="190905836" > + <item type="numeric" value="1659" /> + <item type="numeric" value="1531" /> + <item type="numeric" value="123" /> + </val> + </entry> + <entry> + <key type="numeric" value="4860" /> + <val type="list" id="190905900" > + <item type="numeric" value="1660" /> + <item type="numeric" value="1532" /> + <item type="numeric" value="124" /> + </val> + </entry> + <entry> + <key type="numeric" value="4861" /> + <val type="list" id="190905964" > + <item type="numeric" value="1661" /> + <item type="numeric" value="1533" /> + <item type="numeric" value="125" /> + </val> + </entry> + <entry> + <key type="numeric" value="4862" /> + <val type="list" id="190906028" > + <item type="numeric" value="1662" /> + <item type="numeric" value="1534" /> + <item type="numeric" value="126" /> + </val> + </entry> +</attr> +<attr name="SpecificMenu" type="list" id="190906092" > +</attr> +<attr name="DefaultStringSize" type="numeric" value="10" /> +<attr name="ParamsDictionary" type="dict" id="190908044" > +</attr> +<attr name="UserMapping" type="dict" id="190908180" > +</attr> +<attr name="DS302" type="dict" id="190908316" > + <entry> + <key type="numeric" value="7968" /> + <val type="dict" id="190908452" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="190910732" > + <item type="dict" id="190908588" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of Entries" /> + </entry> + </item> + <item type="dict" id="190908724" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="15" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Store DCF for node %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Store DCF" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="7969" /> + <val type="dict" id="190908860" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="190911180" > + <item type="dict" id="190908996" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of Entries" /> + </entry> + </item> + <item type="dict" id="190909132" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="2" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Storage Format for Node %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Storage Format" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="7970" /> + <val type="dict" id="190909268" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="190911628" > + <item type="dict" id="190909404" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of Entries" /> + </entry> + </item> + <item type="dict" id="190909540" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="15" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Concise DCF for Node %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Concise DCF" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8016" /> + <val type="dict" id="190909676" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="190911884" > + <item type="dict" id="190909812" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of different programs supported on the node" /> + </entry> + </item> + <item type="dict" id="190909948" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="15" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program Number %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Download Program Data" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8017" /> + <val type="dict" id="190910084" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="190912140" > + <item type="dict" id="190910220" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of different programs on the node" /> + </entry> + </item> + <item type="dict" id="190914604" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program Number %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program Control" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8018" /> + <val type="dict" id="190914740" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="190912396" > + <item type="dict" id="190914876" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of Entries" /> + </entry> + </item> + <item type="dict" id="190915012" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="7" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Application software date" /> + </entry> + </item> + <item type="dict" id="190915148" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="7" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Application sofware time" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Verify Application Software" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="3" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8019" /> + <val type="dict" id="190915284" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="190912652" > + <item type="dict" id="190915420" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of different programs on the node" /> + </entry> + </item> + <item type="dict" id="190915556" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="7" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program number %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Expected Application SW Date" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8021" /> + <val type="dict" id="190915692" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="190912972" > + <item type="dict" id="190915828" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of different programs on the node" /> + </entry> + </item> + <item type="dict" id="190915964" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="7" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program number %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Expected Application SW Time" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> +</attr> +<attr name="ProfileName" type="string" value="None" /> +<attr name="Type" type="string">master</attr> +<attr name="ID" type="numeric" value="0" /> +<attr name="Name" type="string">CANOpenShellMasterOD</attr> +</PyObject>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/CANOpenShell/CANOpenShellSlaveOD.od Wed Jul 15 09:32:35 2009 +0200 @@ -0,0 +1,1569 @@ +<?xml version="1.0"?> +<!DOCTYPE PyObject SYSTEM "PyObjects.dtd"> +<PyObject module="node" class="Node" id="194706956"> +<attr name="Profile" type="dict" id="194697660" > +</attr> +<attr name="Description" type="string"></attr> +<attr name="Dictionary" type="dict" id="194697796" > + <entry> + <key type="numeric" value="4096" /> + <val type="numeric" value="0" /> + </entry> + <entry> + <key type="numeric" value="4097" /> + <val type="numeric" value="0" /> + </entry> + <entry> + <key type="numeric" value="4119" /> + <val type="numeric" value="0" /> + </entry> + <entry> + <key type="numeric" value="4120" /> + <val type="list" id="194706892" > + <item type="numeric" value="0" /> + <item type="numeric" value="0" /> + <item type="numeric" value="0" /> + <item type="numeric" value="0" /> + </val> + </entry> + <entry> + <key type="numeric" value="4736" /> + <val type="list" id="194704428" > + <item type="numeric" value="1536" /> + <item type="numeric" value="1408" /> + <item type="numeric" value="0" /> + </val> + </entry> + <entry> + <key type="numeric" value="4737" /> + <val type="list" id="194704396" > + <item type="numeric" value="1537" /> + <item type="numeric" value="1409" /> + <item type="numeric" value="1" /> + </val> + </entry> + <entry> + <key type="numeric" value="4738" /> + <val type="list" id="194704332" > + <item type="numeric" value="1538" /> + <item type="numeric" value="1410" /> + <item type="numeric" value="2" /> + </val> + </entry> + <entry> + <key type="numeric" value="4739" /> + <val type="list" id="194704268" > + <item type="numeric" value="1539" /> + <item type="numeric" value="1411" /> + <item type="numeric" value="3" /> + </val> + </entry> + <entry> + <key type="numeric" value="4740" /> + <val type="list" id="194704204" > + <item type="numeric" value="1540" /> + <item type="numeric" value="1412" /> + <item type="numeric" value="4" /> + </val> + </entry> + <entry> + <key type="numeric" value="4741" /> + <val type="list" id="194703404" > + <item type="numeric" value="1541" /> + <item type="numeric" value="1413" /> + <item type="numeric" value="5" /> + </val> + </entry> + <entry> + <key type="numeric" value="4742" /> + <val type="list" id="194703468" > + <item type="numeric" value="1542" /> + <item type="numeric" value="1414" /> + <item type="numeric" value="6" /> + </val> + </entry> + <entry> + <key type="numeric" value="4743" /> + <val type="list" id="194706188" > + <item type="numeric" value="1543" /> + <item type="numeric" value="1415" /> + <item type="numeric" value="7" /> + </val> + </entry> + <entry> + <key type="numeric" value="4744" /> + <val type="list" id="194706316" > + <item type="numeric" value="1544" /> + <item type="numeric" value="1416" /> + <item type="numeric" value="8" /> + </val> + </entry> + <entry> + <key type="numeric" value="4745" /> + <val type="list" id="194705932" > + <item type="numeric" value="1545" /> + <item type="numeric" value="1417" /> + <item type="numeric" value="9" /> + </val> + </entry> + <entry> + <key type="numeric" value="4746" /> + <val type="list" id="194706060" > + <item type="numeric" value="1546" /> + <item type="numeric" value="1418" /> + <item type="numeric" value="10" /> + </val> + </entry> + <entry> + <key type="numeric" value="4747" /> + <val type="list" id="194706444" > + <item type="numeric" value="1547" /> + <item type="numeric" value="1419" /> + <item type="numeric" value="11" /> + </val> + </entry> + <entry> + <key type="numeric" value="4748" /> + <val type="list" id="194704972" > + <item type="numeric" value="1548" /> + <item type="numeric" value="1420" /> + <item type="numeric" value="12" /> + </val> + </entry> + <entry> + <key type="numeric" value="4749" /> + <val type="list" id="194705036" > + <item type="numeric" value="1549" /> + <item type="numeric" value="1421" /> + <item type="numeric" value="13" /> + </val> + </entry> + <entry> + <key type="numeric" value="4750" /> + <val type="list" id="194704844" > + <item type="numeric" value="1550" /> + <item type="numeric" value="1422" /> + <item type="numeric" value="14" /> + </val> + </entry> + <entry> + <key type="numeric" value="4751" /> + <val type="list" id="194704908" > + <item type="numeric" value="1551" /> + <item type="numeric" value="1423" /> + <item type="numeric" value="15" /> + </val> + </entry> + <entry> + <key type="numeric" value="4752" /> + <val type="list" id="194706636" > + <item type="numeric" value="1552" /> + <item type="numeric" value="1424" /> + <item type="numeric" value="16" /> + </val> + </entry> + <entry> + <key type="numeric" value="4753" /> + <val type="list" id="194706508" > + <item type="numeric" value="1553" /> + <item type="numeric" value="1425" /> + <item type="numeric" value="17" /> + </val> + </entry> + <entry> + <key type="numeric" value="4754" /> + <val type="list" id="194705164" > + <item type="numeric" value="1554" /> + <item type="numeric" value="1426" /> + <item type="numeric" value="18" /> + </val> + </entry> + <entry> + <key type="numeric" value="4755" /> + <val type="list" id="194706764" > + <item type="numeric" value="1555" /> + <item type="numeric" value="1427" /> + <item type="numeric" value="19" /> + </val> + </entry> + <entry> + <key type="numeric" value="4756" /> + <val type="list" id="194703916" > + <item type="numeric" value="1556" /> + <item type="numeric" value="1428" /> + <item type="numeric" value="20" /> + </val> + </entry> + <entry> + <key type="numeric" value="4757" /> + <val type="list" id="194703852" > + <item type="numeric" value="1557" /> + <item type="numeric" value="1429" /> + <item type="numeric" value="21" /> + </val> + </entry> + <entry> + <key type="numeric" value="4758" /> + <val type="list" id="194704044" > + <item type="numeric" value="1558" /> + <item type="numeric" value="1430" /> + <item type="numeric" value="22" /> + </val> + </entry> + <entry> + <key type="numeric" value="4759" /> + <val type="list" id="194703980" > + <item type="numeric" value="1559" /> + <item type="numeric" value="1431" /> + <item type="numeric" value="23" /> + </val> + </entry> + <entry> + <key type="numeric" value="4760" /> + <val type="list" id="194704108" > + <item type="numeric" value="1560" /> + <item type="numeric" value="1432" /> + <item type="numeric" value="24" /> + </val> + </entry> + <entry> + <key type="numeric" value="4761" /> + <val type="list" id="194707020" > + <item type="numeric" value="1561" /> + <item type="numeric" value="1433" /> + <item type="numeric" value="25" /> + </val> + </entry> + <entry> + <key type="numeric" value="4762" /> + <val type="list" id="194707340" > + <item type="numeric" value="1562" /> + <item type="numeric" value="1434" /> + <item type="numeric" value="26" /> + </val> + </entry> + <entry> + <key type="numeric" value="4763" /> + <val type="list" id="194707212" > + <item type="numeric" value="1563" /> + <item type="numeric" value="1435" /> + <item type="numeric" value="27" /> + </val> + </entry> + <entry> + <key type="numeric" value="4764" /> + <val type="list" id="194707084" > + <item type="numeric" value="1564" /> + <item type="numeric" value="1436" /> + <item type="numeric" value="28" /> + </val> + </entry> + <entry> + <key type="numeric" value="4765" /> + <val type="list" id="194702796" > + <item type="numeric" value="1565" /> + <item type="numeric" value="1437" /> + <item type="numeric" value="29" /> + </val> + </entry> + <entry> + <key type="numeric" value="4766" /> + <val type="list" id="194702732" > + <item type="numeric" value="1566" /> + <item type="numeric" value="1438" /> + <item type="numeric" value="30" /> + </val> + </entry> + <entry> + <key type="numeric" value="4767" /> + <val type="list" id="194702668" > + <item type="numeric" value="1567" /> + <item type="numeric" value="1439" /> + <item type="numeric" value="31" /> + </val> + </entry> + <entry> + <key type="numeric" value="4768" /> + <val type="list" id="194702604" > + <item type="numeric" value="1568" /> + <item type="numeric" value="1440" /> + <item type="numeric" value="32" /> + </val> + </entry> + <entry> + <key type="numeric" value="4769" /> + <val type="list" id="194702540" > + <item type="numeric" value="1569" /> + <item type="numeric" value="1441" /> + <item type="numeric" value="33" /> + </val> + </entry> + <entry> + <key type="numeric" value="4770" /> + <val type="list" id="194703308" > + <item type="numeric" value="1570" /> + <item type="numeric" value="1442" /> + <item type="numeric" value="34" /> + </val> + </entry> + <entry> + <key type="numeric" value="4771" /> + <val type="list" id="194703180" > + <item type="numeric" value="1571" /> + <item type="numeric" value="1443" /> + <item type="numeric" value="35" /> + </val> + </entry> + <entry> + <key type="numeric" value="4772" /> + <val type="list" id="194703244" > + <item type="numeric" value="1572" /> + <item type="numeric" value="1444" /> + <item type="numeric" value="36" /> + </val> + </entry> + <entry> + <key type="numeric" value="4773" /> + <val type="list" id="194703148" > + <item type="numeric" value="1573" /> + <item type="numeric" value="1445" /> + <item type="numeric" value="37" /> + </val> + </entry> + <entry> + <key type="numeric" value="4774" /> + <val type="list" id="194702956" > + <item type="numeric" value="1574" /> + <item type="numeric" value="1446" /> + <item type="numeric" value="38" /> + </val> + </entry> + <entry> + <key type="numeric" value="4775" /> + <val type="list" id="194702892" > + <item type="numeric" value="1575" /> + <item type="numeric" value="1447" /> + <item type="numeric" value="39" /> + </val> + </entry> + <entry> + <key type="numeric" value="4776" /> + <val type="list" id="194703084" > + <item type="numeric" value="1576" /> + <item type="numeric" value="1448" /> + <item type="numeric" value="40" /> + </val> + </entry> + <entry> + <key type="numeric" value="4777" /> + <val type="list" id="194703020" > + <item type="numeric" value="1577" /> + <item type="numeric" value="1449" /> + <item type="numeric" value="41" /> + </val> + </entry> + <entry> + <key type="numeric" value="4778" /> + <val type="list" id="190901132" > + <item type="numeric" value="1578" /> + <item type="numeric" value="1450" /> + <item type="numeric" value="42" /> + </val> + </entry> + <entry> + <key type="numeric" value="4779" /> + <val type="list" id="194708716" > + <item type="numeric" value="1579" /> + <item type="numeric" value="1451" /> + <item type="numeric" value="43" /> + </val> + </entry> + <entry> + <key type="numeric" value="4780" /> + <val type="list" id="194711148" > + <item type="numeric" value="1580" /> + <item type="numeric" value="1452" /> + <item type="numeric" value="44" /> + </val> + </entry> + <entry> + <key type="numeric" value="4781" /> + <val type="list" id="194708332" > + <item type="numeric" value="1581" /> + <item type="numeric" value="1453" /> + <item type="numeric" value="45" /> + </val> + </entry> + <entry> + <key type="numeric" value="4782" /> + <val type="list" id="194708396" > + <item type="numeric" value="1582" /> + <item type="numeric" value="1454" /> + <item type="numeric" value="46" /> + </val> + </entry> + <entry> + <key type="numeric" value="4783" /> + <val type="list" id="194708492" > + <item type="numeric" value="1583" /> + <item type="numeric" value="1455" /> + <item type="numeric" value="47" /> + </val> + </entry> + <entry> + <key type="numeric" value="4784" /> + <val type="list" id="194708588" > + <item type="numeric" value="1584" /> + <item type="numeric" value="1456" /> + <item type="numeric" value="48" /> + </val> + </entry> + <entry> + <key type="numeric" value="4785" /> + <val type="list" id="194709260" > + <item type="numeric" value="1585" /> + <item type="numeric" value="1457" /> + <item type="numeric" value="49" /> + </val> + </entry> + <entry> + <key type="numeric" value="4786" /> + <val type="list" id="194709164" > + <item type="numeric" value="1586" /> + <item type="numeric" value="1458" /> + <item type="numeric" value="50" /> + </val> + </entry> + <entry> + <key type="numeric" value="4787" /> + <val type="list" id="194709068" > + <item type="numeric" value="1587" /> + <item type="numeric" value="1459" /> + <item type="numeric" value="51" /> + </val> + </entry> + <entry> + <key type="numeric" value="4788" /> + <val type="list" id="194708940" > + <item type="numeric" value="1588" /> + <item type="numeric" value="1460" /> + <item type="numeric" value="52" /> + </val> + </entry> + <entry> + <key type="numeric" value="4789" /> + <val type="list" id="194708812" > + <item type="numeric" value="1589" /> + <item type="numeric" value="1461" /> + <item type="numeric" value="53" /> + </val> + </entry> + <entry> + <key type="numeric" value="4790" /> + <val type="list" id="194710988" > + <item type="numeric" value="1590" /> + <item type="numeric" value="1462" /> + <item type="numeric" value="54" /> + </val> + </entry> + <entry> + <key type="numeric" value="4791" /> + <val type="list" id="194709676" > + <item type="numeric" value="1591" /> + <item type="numeric" value="1463" /> + <item type="numeric" value="55" /> + </val> + </entry> + <entry> + <key type="numeric" value="4792" /> + <val type="list" id="194710700" > + <item type="numeric" value="1592" /> + <item type="numeric" value="1464" /> + <item type="numeric" value="56" /> + </val> + </entry> + <entry> + <key type="numeric" value="4793" /> + <val type="list" id="194710444" > + <item type="numeric" value="1593" /> + <item type="numeric" value="1465" /> + <item type="numeric" value="57" /> + </val> + </entry> + <entry> + <key type="numeric" value="4794" /> + <val type="list" id="194710316" > + <item type="numeric" value="1594" /> + <item type="numeric" value="1466" /> + <item type="numeric" value="58" /> + </val> + </entry> + <entry> + <key type="numeric" value="4795" /> + <val type="list" id="194710380" > + <item type="numeric" value="1595" /> + <item type="numeric" value="1467" /> + <item type="numeric" value="59" /> + </val> + </entry> + <entry> + <key type="numeric" value="4796" /> + <val type="list" id="194710124" > + <item type="numeric" value="1596" /> + <item type="numeric" value="1468" /> + <item type="numeric" value="60" /> + </val> + </entry> + <entry> + <key type="numeric" value="4797" /> + <val type="list" id="194710188" > + <item type="numeric" value="1597" /> + <item type="numeric" value="1469" /> + <item type="numeric" value="61" /> + </val> + </entry> + <entry> + <key type="numeric" value="4798" /> + <val type="list" id="194710956" > + <item type="numeric" value="1598" /> + <item type="numeric" value="1470" /> + <item type="numeric" value="62" /> + </val> + </entry> + <entry> + <key type="numeric" value="4799" /> + <val type="list" id="194709772" > + <item type="numeric" value="1599" /> + <item type="numeric" value="1471" /> + <item type="numeric" value="63" /> + </val> + </entry> + <entry> + <key type="numeric" value="4800" /> + <val type="list" id="194709868" > + <item type="numeric" value="1600" /> + <item type="numeric" value="1472" /> + <item type="numeric" value="64" /> + </val> + </entry> + <entry> + <key type="numeric" value="4801" /> + <val type="list" id="194709932" > + <item type="numeric" value="1601" /> + <item type="numeric" value="1473" /> + <item type="numeric" value="65" /> + </val> + </entry> + <entry> + <key type="numeric" value="4802" /> + <val type="list" id="194711020" > + <item type="numeric" value="1602" /> + <item type="numeric" value="1474" /> + <item type="numeric" value="66" /> + </val> + </entry> + <entry> + <key type="numeric" value="4803" /> + <val type="list" id="194711052" > + <item type="numeric" value="1603" /> + <item type="numeric" value="1475" /> + <item type="numeric" value="67" /> + </val> + </entry> + <entry> + <key type="numeric" value="4804" /> + <val type="list" id="194710540" > + <item type="numeric" value="1604" /> + <item type="numeric" value="1476" /> + <item type="numeric" value="68" /> + </val> + </entry> + <entry> + <key type="numeric" value="4805" /> + <val type="list" id="194710476" > + <item type="numeric" value="1605" /> + <item type="numeric" value="1477" /> + <item type="numeric" value="69" /> + </val> + </entry> + <entry> + <key type="numeric" value="4806" /> + <val type="list" id="194710028" > + <item type="numeric" value="1606" /> + <item type="numeric" value="1478" /> + <item type="numeric" value="70" /> + </val> + </entry> + <entry> + <key type="numeric" value="4807" /> + <val type="list" id="194710636" > + <item type="numeric" value="1607" /> + <item type="numeric" value="1479" /> + <item type="numeric" value="71" /> + </val> + </entry> + <entry> + <key type="numeric" value="4808" /> + <val type="list" id="194710828" > + <item type="numeric" value="1608" /> + <item type="numeric" value="1480" /> + <item type="numeric" value="72" /> + </val> + </entry> + <entry> + <key type="numeric" value="4809" /> + <val type="list" id="194710796" > + <item type="numeric" value="1609" /> + <item type="numeric" value="1481" /> + <item type="numeric" value="73" /> + </val> + </entry> + <entry> + <key type="numeric" value="4810" /> + <val type="list" id="194709516" > + <item type="numeric" value="1610" /> + <item type="numeric" value="1482" /> + <item type="numeric" value="74" /> + </val> + </entry> + <entry> + <key type="numeric" value="4811" /> + <val type="list" id="194707756" > + <item type="numeric" value="1611" /> + <item type="numeric" value="1483" /> + <item type="numeric" value="75" /> + </val> + </entry> + <entry> + <key type="numeric" value="4812" /> + <val type="list" id="194707628" > + <item type="numeric" value="1612" /> + <item type="numeric" value="1484" /> + <item type="numeric" value="76" /> + </val> + </entry> + <entry> + <key type="numeric" value="4813" /> + <val type="list" id="194707500" > + <item type="numeric" value="1613" /> + <item type="numeric" value="1485" /> + <item type="numeric" value="77" /> + </val> + </entry> + <entry> + <key type="numeric" value="4814" /> + <val type="list" id="194709420" > + <item type="numeric" value="1614" /> + <item type="numeric" value="1486" /> + <item type="numeric" value="78" /> + </val> + </entry> + <entry> + <key type="numeric" value="4815" /> + <val type="list" id="194709612" > + <item type="numeric" value="1615" /> + <item type="numeric" value="1487" /> + <item type="numeric" value="79" /> + </val> + </entry> + <entry> + <key type="numeric" value="4816" /> + <val type="list" id="194708300" > + <item type="numeric" value="1616" /> + <item type="numeric" value="1488" /> + <item type="numeric" value="80" /> + </val> + </entry> + <entry> + <key type="numeric" value="4817" /> + <val type="list" id="194708140" > + <item type="numeric" value="1617" /> + <item type="numeric" value="1489" /> + <item type="numeric" value="81" /> + </val> + </entry> + <entry> + <key type="numeric" value="4818" /> + <val type="list" id="194708236" > + <item type="numeric" value="1618" /> + <item type="numeric" value="1490" /> + <item type="numeric" value="82" /> + </val> + </entry> + <entry> + <key type="numeric" value="4819" /> + <val type="list" id="194707884" > + <item type="numeric" value="1619" /> + <item type="numeric" value="1491" /> + <item type="numeric" value="83" /> + </val> + </entry> + <entry> + <key type="numeric" value="4820" /> + <val type="list" id="194708012" > + <item type="numeric" value="1620" /> + <item type="numeric" value="1492" /> + <item type="numeric" value="84" /> + </val> + </entry> + <entry> + <key type="numeric" value="4821" /> + <val type="list" id="194711244" > + <item type="numeric" value="1621" /> + <item type="numeric" value="1493" /> + <item type="numeric" value="85" /> + </val> + </entry> + <entry> + <key type="numeric" value="4822" /> + <val type="list" id="194711308" > + <item type="numeric" value="1622" /> + <item type="numeric" value="1494" /> + <item type="numeric" value="86" /> + </val> + </entry> + <entry> + <key type="numeric" value="4823" /> + <val type="list" id="194711436" > + <item type="numeric" value="1623" /> + <item type="numeric" value="1495" /> + <item type="numeric" value="87" /> + </val> + </entry> + <entry> + <key type="numeric" value="4824" /> + <val type="list" id="194711532" > + <item type="numeric" value="1624" /> + <item type="numeric" value="1496" /> + <item type="numeric" value="88" /> + </val> + </entry> + <entry> + <key type="numeric" value="4825" /> + <val type="list" id="194711628" > + <item type="numeric" value="1625" /> + <item type="numeric" value="1497" /> + <item type="numeric" value="89" /> + </val> + </entry> + <entry> + <key type="numeric" value="4826" /> + <val type="list" id="194711692" > + <item type="numeric" value="1626" /> + <item type="numeric" value="1498" /> + <item type="numeric" value="90" /> + </val> + </entry> + <entry> + <key type="numeric" value="4827" /> + <val type="list" id="194711756" > + <item type="numeric" value="1627" /> + <item type="numeric" value="1499" /> + <item type="numeric" value="91" /> + </val> + </entry> + <entry> + <key type="numeric" value="4828" /> + <val type="list" id="194711820" > + <item type="numeric" value="1628" /> + <item type="numeric" value="1500" /> + <item type="numeric" value="92" /> + </val> + </entry> + <entry> + <key type="numeric" value="4829" /> + <val type="list" id="194711884" > + <item type="numeric" value="1629" /> + <item type="numeric" value="1501" /> + <item type="numeric" value="93" /> + </val> + </entry> + <entry> + <key type="numeric" value="4830" /> + <val type="list" id="194711948" > + <item type="numeric" value="1630" /> + <item type="numeric" value="1502" /> + <item type="numeric" value="94" /> + </val> + </entry> + <entry> + <key type="numeric" value="4831" /> + <val type="list" id="194712012" > + <item type="numeric" value="1631" /> + <item type="numeric" value="1503" /> + <item type="numeric" value="95" /> + </val> + </entry> + <entry> + <key type="numeric" value="4832" /> + <val type="list" id="194712076" > + <item type="numeric" value="1632" /> + <item type="numeric" value="1504" /> + <item type="numeric" value="96" /> + </val> + </entry> + <entry> + <key type="numeric" value="4833" /> + <val type="list" id="194712140" > + <item type="numeric" value="1633" /> + <item type="numeric" value="1505" /> + <item type="numeric" value="97" /> + </val> + </entry> + <entry> + <key type="numeric" value="4834" /> + <val type="list" id="194712204" > + <item type="numeric" value="1634" /> + <item type="numeric" value="1506" /> + <item type="numeric" value="98" /> + </val> + </entry> + <entry> + <key type="numeric" value="4835" /> + <val type="list" id="194712268" > + <item type="numeric" value="1635" /> + <item type="numeric" value="1507" /> + <item type="numeric" value="99" /> + </val> + </entry> + <entry> + <key type="numeric" value="4836" /> + <val type="list" id="194712332" > + <item type="numeric" value="1636" /> + <item type="numeric" value="1508" /> + <item type="numeric" value="100" /> + </val> + </entry> + <entry> + <key type="numeric" value="4837" /> + <val type="list" id="194712396" > + <item type="numeric" value="1637" /> + <item type="numeric" value="1509" /> + <item type="numeric" value="101" /> + </val> + </entry> + <entry> + <key type="numeric" value="4838" /> + <val type="list" id="194712460" > + <item type="numeric" value="1638" /> + <item type="numeric" value="1510" /> + <item type="numeric" value="102" /> + </val> + </entry> + <entry> + <key type="numeric" value="4839" /> + <val type="list" id="194712524" > + <item type="numeric" value="1639" /> + <item type="numeric" value="1511" /> + <item type="numeric" value="103" /> + </val> + </entry> + <entry> + <key type="numeric" value="4840" /> + <val type="list" id="194712588" > + <item type="numeric" value="1640" /> + <item type="numeric" value="1512" /> + <item type="numeric" value="104" /> + </val> + </entry> + <entry> + <key type="numeric" value="4841" /> + <val type="list" id="194712652" > + <item type="numeric" value="1641" /> + <item type="numeric" value="1513" /> + <item type="numeric" value="105" /> + </val> + </entry> + <entry> + <key type="numeric" value="4842" /> + <val type="list" id="194712716" > + <item type="numeric" value="1642" /> + <item type="numeric" value="1514" /> + <item type="numeric" value="106" /> + </val> + </entry> + <entry> + <key type="numeric" value="4843" /> + <val type="list" id="194712780" > + <item type="numeric" value="1643" /> + <item type="numeric" value="1515" /> + <item type="numeric" value="107" /> + </val> + </entry> + <entry> + <key type="numeric" value="4844" /> + <val type="list" id="194712844" > + <item type="numeric" value="1644" /> + <item type="numeric" value="1516" /> + <item type="numeric" value="108" /> + </val> + </entry> + <entry> + <key type="numeric" value="4845" /> + <val type="list" id="194712908" > + <item type="numeric" value="1645" /> + <item type="numeric" value="1517" /> + <item type="numeric" value="109" /> + </val> + </entry> + <entry> + <key type="numeric" value="4846" /> + <val type="list" id="194712972" > + <item type="numeric" value="1646" /> + <item type="numeric" value="1518" /> + <item type="numeric" value="110" /> + </val> + </entry> + <entry> + <key type="numeric" value="4847" /> + <val type="list" id="194713036" > + <item type="numeric" value="1647" /> + <item type="numeric" value="1519" /> + <item type="numeric" value="111" /> + </val> + </entry> + <entry> + <key type="numeric" value="4848" /> + <val type="list" id="194713100" > + <item type="numeric" value="1648" /> + <item type="numeric" value="1520" /> + <item type="numeric" value="112" /> + </val> + </entry> + <entry> + <key type="numeric" value="4849" /> + <val type="list" id="194713164" > + <item type="numeric" value="1649" /> + <item type="numeric" value="1521" /> + <item type="numeric" value="113" /> + </val> + </entry> + <entry> + <key type="numeric" value="4850" /> + <val type="list" id="194713228" > + <item type="numeric" value="1650" /> + <item type="numeric" value="1522" /> + <item type="numeric" value="114" /> + </val> + </entry> + <entry> + <key type="numeric" value="4851" /> + <val type="list" id="194713292" > + <item type="numeric" value="1651" /> + <item type="numeric" value="1523" /> + <item type="numeric" value="115" /> + </val> + </entry> + <entry> + <key type="numeric" value="4852" /> + <val type="list" id="194713356" > + <item type="numeric" value="1652" /> + <item type="numeric" value="1524" /> + <item type="numeric" value="116" /> + </val> + </entry> + <entry> + <key type="numeric" value="4853" /> + <val type="list" id="194713420" > + <item type="numeric" value="1653" /> + <item type="numeric" value="1525" /> + <item type="numeric" value="117" /> + </val> + </entry> + <entry> + <key type="numeric" value="4854" /> + <val type="list" id="194713484" > + <item type="numeric" value="1654" /> + <item type="numeric" value="1526" /> + <item type="numeric" value="118" /> + </val> + </entry> + <entry> + <key type="numeric" value="4855" /> + <val type="list" id="194713548" > + <item type="numeric" value="1655" /> + <item type="numeric" value="1527" /> + <item type="numeric" value="119" /> + </val> + </entry> + <entry> + <key type="numeric" value="4856" /> + <val type="list" id="194713612" > + <item type="numeric" value="1656" /> + <item type="numeric" value="1528" /> + <item type="numeric" value="120" /> + </val> + </entry> + <entry> + <key type="numeric" value="4857" /> + <val type="list" id="194713676" > + <item type="numeric" value="1657" /> + <item type="numeric" value="1529" /> + <item type="numeric" value="121" /> + </val> + </entry> + <entry> + <key type="numeric" value="4858" /> + <val type="list" id="194713740" > + <item type="numeric" value="1658" /> + <item type="numeric" value="1530" /> + <item type="numeric" value="122" /> + </val> + </entry> + <entry> + <key type="numeric" value="4859" /> + <val type="list" id="194713804" > + <item type="numeric" value="1659" /> + <item type="numeric" value="1531" /> + <item type="numeric" value="123" /> + </val> + </entry> + <entry> + <key type="numeric" value="4860" /> + <val type="list" id="194713868" > + <item type="numeric" value="1660" /> + <item type="numeric" value="1532" /> + <item type="numeric" value="124" /> + </val> + </entry> + <entry> + <key type="numeric" value="4861" /> + <val type="list" id="194713932" > + <item type="numeric" value="1661" /> + <item type="numeric" value="1533" /> + <item type="numeric" value="125" /> + </val> + </entry> + <entry> + <key type="numeric" value="4862" /> + <val type="list" id="194713996" > + <item type="numeric" value="1662" /> + <item type="numeric" value="1534" /> + <item type="numeric" value="126" /> + </val> + </entry> +</attr> +<attr name="SpecificMenu" type="list" id="194714060" > +</attr> +<attr name="DefaultStringSize" type="numeric" value="10" /> +<attr name="ParamsDictionary" type="dict" id="194697932" > +</attr> +<attr name="UserMapping" type="dict" id="194698068" > +</attr> +<attr name="DS302" type="dict" id="194698204" > + <entry> + <key type="numeric" value="7968" /> + <val type="dict" id="194698340" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="194714572" > + <item type="dict" id="194698476" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of Entries" /> + </entry> + </item> + <item type="dict" id="194698612" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="15" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Store DCF for node %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Store DCF" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="7969" /> + <val type="dict" id="194698748" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="194715020" > + <item type="dict" id="194698884" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of Entries" /> + </entry> + </item> + <item type="dict" id="194699020" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="2" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Storage Format for Node %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Storage Format" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="7970" /> + <val type="dict" id="194719788" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="194715468" > + <item type="dict" id="194719924" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of Entries" /> + </entry> + </item> + <item type="dict" id="194720060" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="15" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Concise DCF for Node %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Concise DCF" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8016" /> + <val type="dict" id="194720196" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="194723948" > + <item type="dict" id="194720332" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of different programs supported on the node" /> + </entry> + </item> + <item type="dict" id="194720468" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="15" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program Number %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Download Program Data" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8017" /> + <val type="dict" id="194720604" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="194724204" > + <item type="dict" id="194720740" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of different programs on the node" /> + </entry> + </item> + <item type="dict" id="194720876" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program Number %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program Control" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8018" /> + <val type="dict" id="194721012" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="194724460" > + <item type="dict" id="194721148" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of Entries" /> + </entry> + </item> + <item type="dict" id="194721284" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="7" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Application software date" /> + </entry> + </item> + <item type="dict" id="194721420" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="7" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Application sofware time" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Verify Application Software" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="3" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8019" /> + <val type="dict" id="194721556" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="194724716" > + <item type="dict" id="194721692" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of different programs on the node" /> + </entry> + </item> + <item type="dict" id="194721828" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="7" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program number %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Expected Application SW Date" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> + <entry> + <key type="numeric" value="8021" /> + <val type="dict" id="194721964" > + <entry> + <key type="string" value="need" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="values" /> + <val type="list" id="194725036" > + <item type="dict" id="194722100" > + <entry> + <key type="string" value="access" /> + <val type="string" value="ro" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="5" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Number of different programs on the node" /> + </entry> + </item> + <item type="dict" id="194722236" > + <entry> + <key type="string" value="access" /> + <val type="string" value="rw" /> + </entry> + <entry> + <key type="string" value="pdo" /> + <val type="False" value="" /> + </entry> + <entry> + <key type="string" value="type" /> + <val type="numeric" value="7" /> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Program number %d[(sub)]" /> + </entry> + <entry> + <key type="string" value="nbmax" /> + <val type="numeric" value="127" /> + </entry> + </item> + </val> + </entry> + <entry> + <key type="string" value="name" /> + <val type="string" value="Expected Application SW Time" /> + </entry> + <entry> + <key type="string" value="struct" /> + <val type="numeric" value="7" /> + </entry> + </val> + </entry> +</attr> +<attr name="ProfileName" type="string" value="None" /> +<attr name="Type" type="string">slave</attr> +<attr name="ID" type="numeric" value="0" /> +<attr name="Name" type="string">CANOpenShellSlaveOD</attr> +</PyObject>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/CANOpenShell/CANOpenShellsln Wed Jul 15 09:32:35 2009 +0200 @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 10.00 +# Visual C++ Express 2008 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CANOpenShell", "CANOpenShell.vcproj", "{06B3C378-9EE4-4C56-A519-775FF499DAB5}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {06B3C378-9EE4-4C56-A519-775FF499DAB5}.Debug|Win32.ActiveCfg = Debug|Win32 + {06B3C378-9EE4-4C56-A519-775FF499DAB5}.Debug|Win32.Build.0 = Debug|Win32 + {06B3C378-9EE4-4C56-A519-775FF499DAB5}.Release|Win32.ActiveCfg = Release|Win32 + {06B3C378-9EE4-4C56-A519-775FF499DAB5}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/CANOpenShell/Makefile.in Wed Jul 15 09:32:35 2009 +0200 @@ -0,0 +1,85 @@ +#! gmake + +# +# Copyright (C) 2006 Laurent Bessard +# +# This file is part of canfestival, a library implementing the canopen +# stack +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# + +CC = SUB_CC +CXX = SUB_CXX +LD = SUB_LD +OPT_CFLAGS = -O2 +CFLAGS = SUB_OPT_CFLAGS +PROG_CFLAGS = SUB_PROG_CFLAGS +EXE_CFLAGS = SUB_EXE_CFLAGS +OS_NAME = SUB_OS_NAME +ARCH_NAME = SUB_ARCH_NAME +PREFIX = SUB_PREFIX +TARGET = SUB_TARGET +CAN_DRIVER = SUB_CAN_DRIVER +TIMERS_DRIVER = SUB_TIMERS_DRIVER +CANOPENSHELL = CANOpenShell + +INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER) -I../../include/$(TIMERS_DRIVER) + +MASTER_OBJS = CANOpenShellMasterOD.o CANOpenShellSlaveOD.o CANOpenShell.o + +OBJS = $(MASTER_OBJS) ../../src/libcanfestival.a ../../drivers/$(TARGET)/libcanfestival_$(TARGET).a + +ifeq ($(TARGET),win32) + CANOPENSHELL = CANOpenShell.exe +endif + +ifeq ($(TIMERS_DRIVER),timers_win32) + EXE_CFLAGS = +endif + +ifeq ($(TIMERS_DRIVER),timers_xeno) + PROGDEFINES = -DUSE_XENO +endif + +ifeq ($(TIMERS_DRIVER),timers_rtai) + PROGDEFINES = -DUSE_RTAI +endif + +all: $(CANOPENSHELL) + +../../drivers/$(TARGET)/libcanfestival_$(TARGET).a: + $(MAKE) -C ../../drivers/$(TARGET) libcanfestival_$(TARGET).a + +$(CANOPENSHELL): $(OBJS) + $(LD) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ $(OBJS) $(EXE_CFLAGS) + mkdir -p Debug; cp $(CANOPENSHELL) Debug + +CANOpenShellOD.c: CANOpenShellOD.od + $(MAKE) -C ../../objdictgen gnosis + python ../../objdictgen/objdictgen.py CANOpenShellMasterOD.od CANOpenShellMasterOD.c + python ../../objdictgen/objdictgen.py CANOpenShellSlaveOD.od CANOpenShellSlaveOD.c + +%o: %c + $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $< + +clean: + rm -f $(MASTER_OBJS) + rm -f $(CANOPENSHELL) + +mrproper: clean + rm -f CANOpenShellMasterOD.c + rm -f CANOpenShellSlaveOD.c +