/* * 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 HL7_ABNFLAGSCODE_H_ #define HL7_ABNFLAGSCODE_H_ #pragma interface #include /* * CODE * * AbnFlagsCode(hl7_standard) -- abnormal flags */ class AbnFlagsCode : public LinearCode { public: enum Value { invalid = LinearCode::invalid, not_present = LinearCode::not_present, null = LinearCode::null, first = LinearCode::first, BelowAbsLowOffInsScale = first + 0, _LTval = first + 0,//below absolute low-off instrument scale AboveAbsHighOffInsScale = first + 1, _GTval = first + 1,//above absolute high-off instrument scale AbnAppToNonNumRes = first + 2, Aval = first + 2,//abnormal (applies to non-numeric results) VeryAbnAppToNonNumUnitsAnaToPanicLimForNumLim = first + 3, AAval = first + 3,//very abnormal (applies to non-numerics units, analogous to panic limits for numerics limits) BetUseWhenDirNotRel = first + 4, Bval = first + 4,//better--use when direction not relevant SigChaDown = first + 5, Dval = first + 5,//significant change down AboveHighNor = first + 6, Hval = first + 6,//above high normal AboveUpperPanicLim = first + 7, HHval = first + 7,//above upper panic limits Int = first + 8, Ival = first + 8,//intermediate BelowLowNor = first + 9, Lval = first + 9,//below low normal BelowLowerPanicLim = first + 10, LLval = first + 10,//below lower panic limits ModSen = first + 11, MSval = first + 11,//moderately sensitive NorAppToNonNumRes = first + 12, Nval = first + 12,//normal (applies to non-numeric results) NoRangeDefOrNorRanDonTApply = first + 13, NULLval = first + 13,//no range defined, or normal ranges don't apply Res = first + 14, Rval = first + 14,//resistant Sen = first + 15, Sval = first + 15,//sensitive SigChaUp = first + 16, Uval = first + 16,//significant change up VerySen = first + 17, VSval = first + 17,//very sensitive WorseUseWhenDirNotRel = first + 18, Wval = first + 18,//worse--use when direction not relevant last = 18, size = last - first + 1 }; AbnFlagsCode(); AbnFlagsCode(Value val); AbnFlagsCode(const char *s); operator Value () const; private: static const char *_table[size]; }; inline AbnFlagsCode::AbnFlagsCode() : LinearCode(_table,(size_t)size) {} inline AbnFlagsCode::AbnFlagsCode(Value val) : LinearCode((int)val,_table,(size_t)size) {} inline AbnFlagsCode::AbnFlagsCode(const char *s) : LinearCode(s,_table,(size_t)size) {} inline AbnFlagsCode::operator AbnFlagsCode::Value () const { return (Value)(LinearCode::operator int()); } #endif /* ! HL7_ABNFLAGSCODE_H_ */