/*
 * zGo2ProfileGrooveZ.h
 * 
 * Gocator system communication library
 * Copyright (C) 2013 by LMI Technologies Inc.
 * 
 * Licensed under The MIT License.
 * Redistributions of files must retain the above copyright notice.
 */

#ifndef LMITECH_GO2PROFILEGROOVEZ_H_INCLUDED
#define LMITECH_GO2PROFILEGROOVEZ_H_INCLUDED

#include <Go2Measurements/Go2ProfileGrooveZ.h>
#include <z/zGo2Measurement.h>
#include <z/zGo2Api.h>
#include <Go2ApiBegin.h>

/*
 * Go2ProfileGrooveZ Class 
 */

typedef struct Go2ProfileGrooveZClass
{
    GO2_MEASUREMENT_FIELDS(); 
    Go2ProfileArea area; 
    Go2ProfileGrooveShape shape;
    Go2ProfileGrooveSelectType selectType;
    Go2UInt32 selectN;
    Go2ProfileGrooveLocation location;
    Go2Double depthMin;
    Go2Double widthMin;
    Go2Double widthMax;
} Go2ProfileGrooveZClass; 

GO2_EXPORT(Go2Status) Go2ProfileGrooveZ_Construct(Go2ProfileGrooveZ* measurement, Go2UInt32 id, Go2Object system); 
GO2_EXPORT(Go2Status) Go2ProfileGrooveZ_Init(Go2ProfileGrooveZ measurement, Go2UInt32 id, Go2Object system); 

GO2_EXPORT(Go2Status) Go2ProfileGrooveZ_VRelease(Go2ProfileGrooveZ measurement); 
GO2_EXPORT(Go2Status) Go2ProfileGrooveZ_VRead(Go2ProfileGrooveZ measurement, zXml xml, zXmlItem item); 
GO2_EXPORT(Go2Status) Go2ProfileGrooveZ_VWrite(Go2ProfileGrooveZ measurement, zXml xml, zXmlItem item); 


#include <Go2ApiEnd.h>
#endif
