/*
* 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 PROTOGEN_SEGTYPECODE_H_
#define PROTOGEN_SEGTYPECODE_H_
#pragma interface
#include
/*
* CODE
*
* SegTypeCode(derived) -- segment type
*/
class SegTypeCode : public LinearCode
{
public:
enum Value {
invalid = LinearCode::invalid,
not_present = LinearCode::not_present,
null = LinearCode::null,
first = LinearCode::first,
Acc = first + 0,
ACCval = first + 0,//accident
Add = first + 1,
ADDval = first + 1,//addendum
PatAllInf = first + 2,
AL1val = first + 2,//patient allergy information
BatchHea = first + 3,
BHSval = first + 3,//batch header
Bil = first + 4,
BLGval = first + 4,//billing
BatchTra = first + 5,
BTSval = first + 5,//batch trailer
DiaGno = first + 6,
DG1val = first + 6,//diagnosis
ConTinPoi = first + 7,
DSCval = first + 7,//continuation pointer
DisData = first + 8,
DSPval = first + 8,//display data
Error = first + 9,
ERRval = first + 9,//error
EventType = first + 10,
EVNval = first + 10,//event type
FileHea = first + 11,
FHSval = first + 11,//file header
FinTransAct = first + 12,
FT1val = first + 12,//financial transaction
FileTra = first + 13,
FTSval = first + 13,//file trailer
Gua = first + 14,
GT1val = first + 14,//guarantor
Hea = first + 15,
Hval = first + 15,//header
Ins = first + 16,
IN1val = first + 16,//insurance
InsAddInfo = first + 17,
IN2val = first + 17,//insurance additional info
InsAddInfoCer = first + 18,
IN3val = first + 18,//insurance additional info - certification
Tra = first + 19,
Lval = first + 19,//trailer
MasFileAck = first + 20,
MFAval = first + 20,//master file acknowledgement
MasFileEntry = first + 21,
MFEval = first + 21,//master file entry
MasFileIde = first + 22,
MFIval = first + 22,//master file identification
MergePatInf = first + 23,
MRGval = first + 23,//merge patient information
MesAck = first + 24,
MSAval = first + 24,//message acknowledgement
MesHea = first + 25,
MSHval = first + 25,//message header
SysClock = first + 26,
NCKval = first + 26,//system clock
NextOfKin = first + 27,
NK1val = first + 27,//next of kin
BedStatusUpd = first + 28,
NPUval = first + 28,//bed status update
StatusCha = first + 29,
NSCval = first + 29,//status change
Sta = first + 30,
NSTval = first + 30,//statistics
NotesAndCom = first + 31,
NTEval = first + 31,//notes and comments
Order = first + 32,
Oval = first + 32,//order
ObsReq = first + 33,
OBRval = first + 33,//observation request
Obs = first + 34,
OBXval = first + 34,//observation
DieOrdSupAndPre = first + 35,
ODSval = first + 35,//dietary orders, supplements, and preferences
DietTrayIns = first + 36,
ODTval = first + 36,//diet tray instructions
GenFieThatApplyToMostObs = first + 37,
OM1val = first + 37,//general - fields that apply to most observations
NumObs = first + 38,
OM2val = first + 38,//numeric observation
CatTestObs = first + 39,
OM3val = first + 39,//categorical test/observation
ObsThatReqSpe = first + 40,
OM4val = first + 40,//observations that require specimens
ObsBat = first + 41,
OM5val = first + 41,//observation batteries
ObsThatAreCalFromOtherObs = first + 42,
OM6val = first + 42,//observations that are calculated from other observations
ComOrder = first + 43,
ORCval = first + 43,//common order
Pat = first + 44,
Pval = first + 44,//patient
PatIde = first + 45,
PIDval = first + 45,//patient identification
Pro = first + 46,
PR1val = first + 46,//procedures
PraDet = first + 47,
PRAval = first + 47,//practitioner detail
PatVisit = first + 48,
PV1val = first + 48,//patient visit
PatVisitAddInf = first + 49,
PV2val = first + 49,//patient visit - additional information
QueryDef = first + 50,
QRDval = first + 50,//query definition
QueryFil = first + 51,
QRFval = first + 51,//query filter
Res = first + 52,
Rval = first + 52,//result
ReqDet1 = first + 53,
RQ1val = first + 53,//requisition detail-1
ReqDet = first + 54,
RQDval = first + 54,//requisition detail
PhaAdm = first + 55,
RXAval = first + 55,//pharmacy administration
PhaComOrder = first + 56,
RXCval = first + 56,//pharmacy component order
PhaDis = first + 57,
RXDval = first + 57,//pharmacy dispense
PhaEncOrder = first + 58,
RXEval = first + 58,//pharmacy encoded order
PhaGive = first + 59,
RXGval = first + 59,//pharmacy give
PhaPreOrder = first + 60,
RXOval = first + 60,//pharmacy prescription order
PhaRoute = first + 61,
RXRval = first + 61,//pharmacy route
StaffIde = first + 62,
STFval = first + 62,//staff identification
Ub82Data = first + 63,
UB1val = first + 63,//ub82 data
Ub92Data = first + 64,
UB2val = first + 64,//ub92 data
ResUpdDef = first + 65,
URDval = first + 65,//results/update definition
UnsSel = first + 66,
URSval = first + 66,//unsolicited selection
HpConFigDem = first + 67,
ZDMval = first + 67,//hp configuable demographics
last = 67,
size = last - first + 1
};
SegTypeCode();
SegTypeCode(Value val);
SegTypeCode(const char *s);
operator Value () const;
private:
static const char *_table[size];
};
inline SegTypeCode::SegTypeCode()
: LinearCode(_table,(size_t)size) {}
inline SegTypeCode::SegTypeCode(Value val)
: LinearCode((int)val,_table,(size_t)size) {}
inline SegTypeCode::SegTypeCode(const char *s)
: LinearCode(s,_table,(size_t)size) {}
inline SegTypeCode::operator SegTypeCode::Value () const
{
return (Value)(LinearCode::operator int());
}
#endif /* ! PROTOGEN_SEGTYPECODE_H_ */