/* * 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_SPESOUCODE_H_ #define ASTM_SPESOUCODE_H_ #pragma interface #include /* * CODE * * SpeSouCode(user_defined) -- specimen source */ class SpeSouCode : public LinearCode { public: enum Value { invalid = LinearCode::invalid, not_present = LinearCode::not_present, null = LinearCode::null, first = LinearCode::first, Art = first + 0, ARTERIALval = first + 0,//arterial Ven = first + 1, VENOUSval = first + 1,//venous Cap = first + 2, CAPILLARYval = first + 2,//capillary MixedVen = first + 3, MIXED_VENOUSval = first + 3,//mixed venous Unr = first + 4, URINEval = first + 4,//unrine NotSpe = first + 5, NOT_SPECIFIEDval = first + 5,//not specified ConTrolSolS2030 = first + 6, S2030val = first + 6,//control solution S2030 ConTrolSolS2040 = first + 7, S2040val = first + 7,//control solution S2040 ConTrolSolS2050 = first + 8, S2050val = first + 8,//control solution S2050 ConTrolSolS2060 = first + 9, S2060val = first + 9,//control solution S2060 NonRConTrolSol = first + 10, NON_R_val = first + 10,//non -r- control solution last = 10, size = last - first + 1 }; SpeSouCode(); SpeSouCode(Value val); SpeSouCode(const char *s); operator Value () const; private: static const char *_table[size]; }; inline SpeSouCode::SpeSouCode() : LinearCode(_table,(size_t)size) {} inline SpeSouCode::SpeSouCode(Value val) : LinearCode((int)val,_table,(size_t)size) {} inline SpeSouCode::SpeSouCode(const char *s) : LinearCode(s,_table,(size_t)size) {} inline SpeSouCode::operator SpeSouCode::Value () const { return (Value)(LinearCode::operator int()); } #endif /* ! ASTM_SPESOUCODE_H_ */