#include "stdafx.h"
#include "LKFAufenthaltSubgruppe.h"
#include "LKFAufenthalt.h"
extern "C" {
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "lkf5defs.h"
}


namespace lkfxdok {
	namespace c {
		LKFAufenthaltSubgruppe::LKFAufenthaltSubgruppe(LKFAufenthalt ^aufenthalt, unsigned int index) : LKFAufenthaltChild(aufenthalt, index)
		{
			char buf_gruppe[10];
			char buf_knoten[3];

			lkf_auf_get_subgruppe_gruppe((LKF_AUFENTHALT *)_aufenthalt->_aufenthaltPtr, index, buf_gruppe, buf_knoten);
			_gruppe = gcnew String(buf_gruppe);
			_knoten = gcnew String(buf_knoten);

		}

		String ^LKFAufenthaltSubgruppe::GRUPPE::get(void) {
			return _gruppe;
		}

		String ^LKFAufenthaltSubgruppe::KNOTEN::get(void) {
			return _knoten;
		}

		String ^LKFAufenthaltSubgruppe::MEL::get(void) {
			char mel[10];
			lkf_auf_get_subgruppe_mel((LKF_AUFENTHALT*)_aufenthalt->_aufenthaltPtr, _index, mel);
			return gcnew String(mel);
		}

		long LKFAufenthaltSubgruppe::GetValue(LKFAufenthaltScorField field) {
			return lkf_auf_get_subgruppe_scorvalue((LKF_AUFENTHALT *)_aufenthalt->_aufenthaltPtr, _index, (unsigned int)(int)field);
		}

		long LKFAufenthaltSubgruppe::Punkte::get(void) {
			return GetValue(LKFAufenthaltScorField::SCGES);
		}

		String ^LKFAufenthaltSubgruppe::DIAGIDENT::get(void) {
			char diag[14];
			lkf_auf_get_subgruppe_diag((LKF_AUFENTHALT*)_aufenthalt->_aufenthaltPtr, _index, diag);
			return gcnew String(diag);
		}
	}
}
