/* * This file is automatically Generated by ProtoGen r1.3. * Do not edit it. * * Copyright (c) 1995, 1996 Gunther Schadow. All rights reserved. * * This program is free 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; either version 2 of the License, or * (at your option) any later version. * * This program 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. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef ASTM_SPETYPECODE_H_ #define ASTM_SPETYPECODE_H_ #pragma interface #include /* * CODE * * SpeTypeCode(user_defined) -- specimen type */ class SpeTypeCode : public LinearCode { public: enum Value { invalid = LinearCode::invalid, not_present = LinearCode::not_present, null = LinearCode::null, first = LinearCode::first, Blood = first + 0, BLOODval = first + 0,//blood Gas = first + 1, GASval = first + 1,//gas Urine = first + 2, URINEval = first + 2,//urine QuaCheckLevel1 = first + 3, QC_LEVEL_1val = first + 3,//quality check level 1 QuaCheckLevel2 = first + 4, QC_LEVEL_2val = first + 4,//quality check level 2 QuaCheckLevel3 = first + 5, QC_LEVEL_3val = first + 5,//quality check level 3 QuaCheckLevel4 = first + 6, QC_LEVEL_4val = first + 6,//quality check level 4 QuaCheckLevel5 = first + 7, QC_LEVEL_5val = first + 7,//quality check level 5 QuaCheckLevel6 = first + 8, QC_LEVEL_6val = first + 8,//quality check level 6 QuaCheckLevel7 = first + 9, QC_LEVEL_7val = first + 9,//quality check level 7 QuaCheckLevel8 = first + 10, QC_LEVEL_8val = first + 10,//quality check level 8 GasCal1 = first + 11, GAS_CAL_1val = first + 11,//gas calibration 1 GasCal2 = first + 12, GAS_CAL_2val = first + 12,//gas calibration 2 Cal1 = first + 13, CAL_1val = first + 13,//calibration 1 Cal2 = first + 14, CAL_2val = first + 14,//calibration 2 TotalCal = first + 15, TOTAL_CALval = first + 15,//total calibration last = 15, size = last - first + 1 }; SpeTypeCode(); SpeTypeCode(Value val); SpeTypeCode(const char *s); operator Value () const; private: static const char *_table[size]; }; inline SpeTypeCode::SpeTypeCode() : LinearCode(_table,(size_t)size) {} inline SpeTypeCode::SpeTypeCode(Value val) : LinearCode((int)val,_table,(size_t)size) {} inline SpeTypeCode::SpeTypeCode(const char *s) : LinearCode(s,_table,(size_t)size) {} inline SpeTypeCode::operator SpeTypeCode::Value () const { return (Value)(LinearCode::operator int()); } #endif /* ! ASTM_SPETYPECODE_H_ */