include/dcf.h
author Edouard Tisserant
Thu, 24 Jan 2019 13:53:01 +0100
changeset 808 de1fc3261f21
parent 669 50da44ebaf00
permissions -rw-r--r--
Adding -fPIC isn't necessary of xeno-config is set correctly. Backed out changeset b9f1fcda7d30
178
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     1
/*
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     2
This file is part of CanFestival, a library implementing CanOpen Stack. 
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     3
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     4
Copyright (C): Edouard TISSERANT and Francis DUPIN
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     5
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     6
See COPYING file for copyrights details.
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     7
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     8
This library is free software; you can redistribute it and/or
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
     9
modify it under the terms of the GNU Lesser General Public
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    10
License as published by the Free Software Foundation; either
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    11
version 2.1 of the License, or (at your option) any later version.
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    12
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    13
This library is distributed in the hope that it will be useful,
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    14
but WITHOUT ANY WARRANTY; without even the implied warranty of
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    16
Lesser General Public License for more details.
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    17
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    18
You should have received a copy of the GNU Lesser General Public
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    19
License along with this library; if not, write to the Free Software
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    20
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    21
*/
669
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    22
#include "data.h"
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    23
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    24
#define DCF_STATUS_INIT         0
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    25
#define DCF_STATUS_READ_CHECK   1
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    26
#define DCF_STATUS_WRITE        2
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    27
#define DCF_STATUS_SAVED        3
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    28
#define DCF_STATUS_VERIF_OK     4
178
01d81faa3350 Add concise DCF support
greg
parents:
diff changeset
    29
528
0a30e161d63c Re-write doxygen tags in headers files to generate User API documentation
greg
parents: 349
diff changeset
    30
/** 
669
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    31
 * @brief Init the consise dcf in CO_Data for nodeId
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    32
 *
528
0a30e161d63c Re-write doxygen tags in headers files to generate User API documentation
greg
parents: 349
diff changeset
    33
 * @param *d Pointer on a CAN object data structure
0a30e161d63c Re-write doxygen tags in headers files to generate User API documentation
greg
parents: 349
diff changeset
    34
 * @param nodeId Id of the slave node
669
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    35
 * @return 1: dcf check started
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    36
 *         0: nothing to do   
528
0a30e161d63c Re-write doxygen tags in headers files to generate User API documentation
greg
parents: 349
diff changeset
    37
 */
669
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    38
UNS8 init_consise_dcf(CO_Data* d, UNS8 nodeId);
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    39
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    40
/**
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    41
 * @brief Function to be called from post_SlaveBootup 
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    42
 * for starting the configuration manager
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    43
 *
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    44
 * @param *d Pointer on a CAN object data structure
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    45
 * @param nodeId Id of the slave node
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    46
 * @return 0: configuration manager busy
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    47
 *         1: nothing to check, node started
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    48
 *         2: dcf check started
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    49
*/
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    50
UNS8 check_and_start_node(CO_Data* d, UNS8 nodeId);
50da44ebaf00 Configuration manager with DCF in object 0x1F22 rewritten almost from scratch.
Mongo
parents: 528
diff changeset
    51