Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
gsePacketData.h
00001 /** 00002 * Rapid-prototyping protection schemes with IEC 61850 00003 * 00004 * Copyright (c) 2012 Steven Blair 00005 * 00006 * This program is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU General Public License 00008 * as published by the Free Software Foundation; either version 2 00009 * of the License, or (at your option) any later version. 00010 00011 * This program is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 * GNU General Public License for more details. 00015 00016 * You should have received a copy of the GNU General Public License 00017 * along with this program; if not, write to the Free Software 00018 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00019 */ 00020 00021 #ifndef GSE_PACKET_DATA_H 00022 #define GSE_PACKET_DATA_H 00023 00024 #ifdef __cplusplus /* If this is a C++ compiler, use C linkage */ 00025 extern "C" { 00026 #endif 00027 00028 #include <stdlib.h> 00029 #include <string.h> 00030 #include "ctypes.h" 00031 00032 struct gseControl { 00033 struct ethHeaderData ethHeaderData; 00034 unsigned char *gocbRef; // <LDinst>/LLN0$<GSEControl.name> e.g. "C1/LLN0$ItlPositions" 00035 CTYPE_INT32U timeAllowedToLive; 00036 unsigned char *datSet; // <IEDname><LDinst>/LLN0$<DataSet.name> e.g. "E1Q1SB1C1/LLN0$Positions" 00037 unsigned char *goID; // optional 00038 CTYPE_TIMESTAMP t; 00039 CTYPE_INT32U stNum; 00040 CTYPE_INT32U sqNum; 00041 CTYPE_BOOLEAN test; 00042 CTYPE_INT32U confRev; 00043 CTYPE_BOOLEAN ndsCom; 00044 CTYPE_INT32U numDatSetEntries; 00045 CTYPE_INT32U minTime; // stored in milliseconds 00046 CTYPE_INT32U maxTime; // stored in milliseconds 00047 int (*encodeDataset)(unsigned char *buf); // function pointer to dataset-specific encoder 00048 int (*getDatasetLength)(); // function pointer to dataset-specific getLength function 00049 int (*send)(unsigned char *buf, CTYPE_BOOLEAN statusChange, CTYPE_INT32U timeAllowedToLive); // function pointer to send GSE packet 00050 }; 00051 00052 #ifdef __cplusplus /* If this is a C++ compiler, end C linkage */ 00053 } 00054 #endif 00055 00056 #endif
Generated on Sat Jul 23 2022 01:15:10 by
1.7.2