297 lines
8.2 KiB
C
297 lines
8.2 KiB
C
//
|
|
// --------------------------------------------------------------------------
|
|
// Gurux Ltd
|
|
//
|
|
//
|
|
//
|
|
// Filename: $HeadURL$
|
|
//
|
|
// Version: $Revision$,
|
|
// $Date$
|
|
// $Author$
|
|
//
|
|
// Copyright (c) Gurux Ltd
|
|
//
|
|
//---------------------------------------------------------------------------
|
|
//
|
|
// DESCRIPTION
|
|
//
|
|
// This file is a part of Gurux Device Framework.
|
|
//
|
|
// Gurux Device Framework is Open Source software; you can redistribute it
|
|
// and/or modify it under the terms of the GNU General Public License
|
|
// as published by the Free Software Foundation; version 2 of the License.
|
|
// Gurux Device Framework 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 General Public License for more details.
|
|
//
|
|
// This code is licensed under the GNU General Public License v2.
|
|
// Full text may be retrieved at http://www.gnu.org/licenses/gpl-2.0.txt
|
|
//---------------------------------------------------------------------------
|
|
|
|
#ifndef COSEM_GET_H
|
|
#define COSEM_GET_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include "gxobjects.h"
|
|
#include "dlmssettings.h"
|
|
|
|
int cosem_getData(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getRegister(
|
|
gxValueEventArg* e);
|
|
|
|
#ifndef DLMS_IGNORE_CLOCK
|
|
int cosem_getClock(
|
|
gxValueEventArg* e);
|
|
|
|
//Update Daylight Saving time flag if DST is used.
|
|
void clock_updateDST(
|
|
gxClock* object,
|
|
gxtime* value);
|
|
|
|
//Convert UTC date time to meter date time.
|
|
int clock_utcToMeterTime(
|
|
gxClock* object,
|
|
gxtime* value);
|
|
|
|
#endif // DLMS_IGNORE_CLOCK
|
|
|
|
int cosem_getActionSchedule(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getActivityCalendar(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getAssociationLogicalName(
|
|
dlmsSettings* settings,
|
|
gxValueEventArg* e);
|
|
|
|
#ifndef DLMS_IGNORE_ASSOCIATION_SHORT_NAME
|
|
int cosem_getAssociationShortName(
|
|
dlmsSettings* settings,
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_ASSOCIATION_SHORT_NAME
|
|
|
|
int cosem_getAutoAnswer(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getAutoConnect(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getDemandRegister(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getMacAddressSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getExtendedRegister(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getGprsSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getSecuritySetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getIecHdlcSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getIecLocalPortSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getIP4Setup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getProfileGeneric(
|
|
dlmsSettings* settings,
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getMbusSlavePortSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getDisconnectControl(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getLimiter(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getmMbusClient(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getModemConfiguration(
|
|
dlmsSettings* settings,
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getPppSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getRegisterActivation(
|
|
dlmsSettings* settings,
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getRegisterMonitor(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getSapAssignment(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getSchedule(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getScriptTable(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getSpecialDaysTable(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getTcpUdpSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getMbusMasterPortSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getMessageHandler(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getPushSetup(
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getValue(
|
|
dlmsSettings* settings,
|
|
gxValueEventArg* e);
|
|
|
|
|
|
#ifndef DLMS_IGNORE_G3_PLC_MAC_SETUP
|
|
int cosem_getG3PlcMacSetupNeighbourTables(
|
|
gxArray* tables,
|
|
uint16_t address,
|
|
uint16_t count,
|
|
gxValueEventArg* e);
|
|
|
|
int cosem_getG3PlcMacSetupPosTables(
|
|
gxArray* tables,
|
|
uint16_t address,
|
|
uint16_t count,
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_G3_PLC_MAC_SETUP
|
|
|
|
#ifndef DLMS_IGNORE_MALLOC
|
|
int cosem_getRow(
|
|
gxArray* table,
|
|
int index,
|
|
gxArray* captureObjects,
|
|
gxArray* columns,
|
|
gxByteBuffer* data);
|
|
#endif //DLMS_IGNORE_MALLOC
|
|
|
|
int cosem_getTariffPlan(
|
|
gxValueEventArg* e);
|
|
|
|
#ifndef DLMS_IGNORE_GSM_DIAGNOSTIC
|
|
int cosem_getGsmDiagnostic(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_GSM_DIAGNOSTIC
|
|
|
|
#ifndef DLMS_IGNORE_PARAMETER_MONITOR
|
|
int cosem_getParameterMonitor(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_PARAMETER_MONITOR
|
|
|
|
#ifndef DLMS_IGNORE_COMPACT_DATA
|
|
//Convert compact data buffer to array of values.
|
|
int compactData_getValues(
|
|
dlmsSettings* settings,
|
|
gxByteBuffer* templateDescription,
|
|
gxByteBuffer* buffer,
|
|
variantArray* values);
|
|
#endif //DLMS_IGNORE_COMPACT_DATA
|
|
|
|
#ifndef DLMS_IGNORE_LLC_SSCS_SETUP
|
|
int cosem_getLlcSscsSetup(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_LLC_SSCS_SETUP
|
|
#ifndef DLMS_IGNORE_PRIME_NB_OFDM_PLC_PHYSICAL_LAYER_COUNTERS
|
|
int cosem_getPrimeNbOfdmPlcPhysicalLayerCounters(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_PRIME_NB_OFDM_PLC_PHYSICAL_LAYER_COUNTERS
|
|
#ifndef DLMS_IGNORE_PRIME_NB_OFDM_PLC_MAC_SETUP
|
|
int cosem_getPrimeNbOfdmPlcMacSetup(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_PRIME_NB_OFDM_PLC_MAC_SETUP
|
|
#ifndef DLMS_IGNORE_PRIME_NB_OFDM_PLC_MAC_FUNCTIONAL_PARAMETERS
|
|
int cosem_getPrimeNbOfdmPlcMacFunctionalParameters(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_PRIME_NB_OFDM_PLC_MAC_FUNCTIONAL_PARAMETERS
|
|
#ifndef DLMS_IGNORE_PRIME_NB_OFDM_PLC_MAC_COUNTERS
|
|
int cosem_getPrimeNbOfdmPlcMacCounters(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_PRIME_NB_OFDM_PLC_MAC_COUNTERS
|
|
#ifndef DLMS_IGNORE_PRIME_NB_OFDM_PLC_MAC_NETWORK_ADMINISTRATION_DATA
|
|
int cosem_getPrimeNbOfdmPlcMacNetworkAdministrationData(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_PRIME_NB_OFDM_PLC_MAC_NETWORK_ADMINISTRATION_DATA
|
|
#ifndef DLMS_IGNORE_PRIME_NB_OFDM_PLC_APPLICATIONS_IDENTIFICATION
|
|
int cosem_getPrimeNbOfdmPlcApplicationsIdentification(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_PRIME_NB_OFDM_PLC_APPLICATIONS_IDENTIFICATION
|
|
#ifndef DLMS_IGNORE_ARBITRATOR
|
|
int cosem_getArbitrator(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_ARBITRATOR
|
|
#ifndef DLMS_IGNORE_IEC_8802_LLC_TYPE1_SETUP
|
|
int cosem_getIec8802LlcType1Setup(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_IEC_8802_LLC_TYPE1_SETUP
|
|
#ifndef DLMS_IGNORE_IEC_8802_LLC_TYPE2_SETUP
|
|
int cosem_getIec8802LlcType2Setup(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_IEC_8802_LLC_TYPE2_SETUP
|
|
#ifndef DLMS_IGNORE_IEC_8802_LLC_TYPE3_SETUP
|
|
int cosem_getIec8802LlcType3Setup(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_IEC_8802_LLC_TYPE3_SETUP
|
|
#ifndef DLMS_IGNORE_SFSK_ACTIVE_INITIATOR
|
|
int cosem_getSFSKActiveInitiator(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_SFSK_ACTIVE_INITIATOR
|
|
#ifndef DLMS_IGNORE_SFSK_MAC_COUNTERS
|
|
int cosem_getFSKMacCounters(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_SFSK_MAC_COUNTERS
|
|
#ifndef DLMS_IGNORE_SFSK_MAC_SYNCHRONIZATION_TIMEOUTS
|
|
int cosem_getSFSKMacSynchronizationTimeouts(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_SFSK_MAC_SYNCHRONIZATION_TIMEOUTS
|
|
#ifndef DLMS_IGNORE_SFSK_PHY_MAC_SETUP
|
|
int cosem_getSFSKPhyMacSetUp(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_SFSK_PHY_MAC_SETUP
|
|
#ifndef DLMS_IGNORE_SFSK_REPORTING_SYSTEM_LIST
|
|
int cosem_getSFSKReportingSystemList(
|
|
gxValueEventArg* e);
|
|
#endif //DLMS_IGNORE_SFSK_REPORTING_SYSTEM_LIST
|
|
|
|
#ifdef DLMS_ITALIAN_STANDARD
|
|
//Convert compact data buffer to array of values.
|
|
//Some Italy meters require that there is a array count in data.
|
|
//This is against compact data structure defined in DLMS standard.
|
|
int compactData_getValues2(
|
|
dlmsSettings* settings,
|
|
gxByteBuffer* templateDescription,
|
|
gxByteBuffer* buffer,
|
|
variantArray* values,
|
|
unsigned char appendAA);
|
|
#endif //DLMS_ITALIAN_STANDARD
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif //COSEM_GET_H
|