Ignore:
Timestamp:
09/10/01 14:32:27 (23 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Cosy/candrv
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Cosy/candrv/canopen.cc

    r920 r926  
    184184}
    185185 
    186 void CanOpen::SendSDO(BYTE_t node, WORD_t idx, BYTE_t subidx, BYTE_t val)
    187 {
    188     fSdoList.Add(node, idx, subidx);
     186void CanOpen::SendSDO(BYTE_t node, WORD_t idx, BYTE_t subidx, BYTE_t val, bool store)
     187{
     188    if (store)
     189        fSdoList.Add(node, idx, subidx);
    189190
    190191    SendCanFrame(CobId(node, kSDO_TX), kSDO_RX1,
     
    192193}
    193194
    194 void CanOpen::SendSDO(BYTE_t node, WORD_t idx, BYTE_t subidx, WORD_t val)
    195 {
    196     fSdoList.Add(node, idx, subidx);
     195void CanOpen::SendSDO(BYTE_t node, WORD_t idx, BYTE_t subidx, WORD_t val, bool store)
     196{
     197    if (store)
     198        fSdoList.Add(node, idx, subidx);
    197199
    198200    SendCanFrame(CobId(node, kSDO_TX), kSDO_RX2,
     
    201203}
    202204
    203 void CanOpen::SendSDO(BYTE_t node, WORD_t idx, BYTE_t subidx, LWORD_t val)
    204 {
    205     fSdoList.Add(node, idx, subidx);
     205void CanOpen::SendSDO(BYTE_t node, WORD_t idx, BYTE_t subidx, LWORD_t val, bool store)
     206{
     207    if (store)
     208        fSdoList.Add(node, idx, subidx);
    206209
    207210    SendCanFrame(CobId(node, kSDO_TX), kSDO_RX4,
  • trunk/MagicSoft/Cosy/candrv/nodedrv.cc

    r925 r926  
    77#include "MLogManip.h"
    88
    9 NodeDrv::NodeDrv(BYTE_t nodeid, MLog &out) : Log(out), fNetwork(NULL), fId(32), fError(0)
     9NodeDrv::NodeDrv(BYTE_t nodeid, const char *name, MLog &out) : Log(out), fNetwork(NULL), fId(32), fError(0)
    1010{
    1111    if (nodeid>31)
     
    1616
    1717    fId = nodeid;
     18
     19    if (name)
     20    {
     21        fName = new char[strlen(name)+1];
     22        strcpy(fName, name);
     23    }
     24    else
     25    {
     26        fName = new char[9];
     27        sprintf(fName, "Node#%d", nodeid);
     28    }
     29}
     30
     31NodeDrv::~NodeDrv()
     32{
     33    delete fName;
    1834}
    1935
     
    8096}
    8197
    82 void NodeDrv::SendSDO(WORD_t idx, BYTE_t subidx, BYTE_t val)
     98void NodeDrv::SendSDO(WORD_t idx, BYTE_t subidx, BYTE_t val, bool store)
    8399{
    84     fNetwork->SendSDO(fId, idx, subidx, val);
     100    fNetwork->SendSDO(fId, idx, subidx, val, store);
    85101}
    86102
    87 void NodeDrv::SendSDO(WORD_t idx, BYTE_t subidx, WORD_t val)
     103void NodeDrv::SendSDO(WORD_t idx, BYTE_t subidx, WORD_t val, bool store)
    88104{
    89     fNetwork->SendSDO(fId, idx, subidx, val);
     105    fNetwork->SendSDO(fId, idx, subidx, val, store);
    90106}
    91107
    92 void NodeDrv::SendSDO(WORD_t idx, BYTE_t subidx, LWORD_t val)
     108void NodeDrv::SendSDO(WORD_t idx, BYTE_t subidx, LWORD_t val, bool store)
    93109{
    94     fNetwork->SendSDO(fId, idx, subidx, val);
     110    fNetwork->SendSDO(fId, idx, subidx, val, store);
    95111}
    96112
    97113void NodeDrv::SendSDO(WORD_t idx, BYTE_t val)
    98114{
    99     fNetwork->SendSDO(fId, idx, val);
     115    fNetwork->SendSDO(fId, idx, val, true);
    100116}
    101117
    102118void NodeDrv::SendSDO(WORD_t idx, WORD_t val)
    103119{
    104     fNetwork->SendSDO(fId, idx, val);
     120    fNetwork->SendSDO(fId, idx, val, true);
    105121}
    106122
    107123void NodeDrv::SendSDO(WORD_t idx, LWORD_t val)
    108124{
    109     fNetwork->SendSDO(fId, idx, val);
     125    fNetwork->SendSDO(fId, idx, val, true);
    110126}
    111127
    112 void NodeDrv::RequestSDO(WORD_t idx, BYTE_t subidx=0)
     128void NodeDrv::RequestSDO(WORD_t idx, BYTE_t subidx)
    113129{
    114130    fNetwork->RequestSDO(fId, idx, subidx);
  • trunk/MagicSoft/Cosy/candrv/nodedrv.h

    r925 r926  
    1313    BYTE_t   fId;
    1414
     15    char *fName;
     16
    1517    int fError;
    1618
     
    2123
    2224public:
    23     NodeDrv(BYTE_t nodeid, MLog &out=gLog);
     25    NodeDrv(BYTE_t nodeid, const char *name=NULL, MLog &out=gLog);
     26    virtual ~NodeDrv();
    2427
    25     BYTE_t   GetId()      { return fId; }
    26     Network *GetNetwork() { return fNetwork; }
     28    BYTE_t   GetId() const       { return fId;   }
     29    char    *GetNodeName() const { return fName; }
     30    Network *GetNetwork()        { return fNetwork; }
    2731
    2832    virtual void InitDevice(Network *net);
     
    4751                  BYTE_t m4=0, BYTE_t m5=0, BYTE_t m6=0, BYTE_t m7=0);
    4852
    49     void SendSDO(WORD_t idx, BYTE_t subidx, BYTE_t val);
    50     void SendSDO(WORD_t idx, BYTE_t subidx, WORD_t val);
    51     void SendSDO(WORD_t idx, BYTE_t subidx, LWORD_t val);
     53    void SendSDO(WORD_t idx, BYTE_t subidx, BYTE_t val, bool store=true);
     54    void SendSDO(WORD_t idx, BYTE_t subidx, WORD_t val, bool store=true);
     55    void SendSDO(WORD_t idx, BYTE_t subidx, LWORD_t val, bool store=true);
    5256
    5357    void SendSDO(WORD_t idx, BYTE_t val);
Note: See TracChangeset for help on using the changeset viewer.