/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* vim: set et sw=2 ts=2: */ /*************************************************************************** * luapraxisd.h * * Wed Apr 27 11:59:53 CEST 2011 * Copyright 2011 Bent Bisballe Nyeng * deva@aasimon.org ****************************************************************************/ /* * This file is part of Pracro. * * Pracro 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. * * Pracro 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 Pracro; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ #ifndef __PRACRO_LUAPRAXISD_H__ #define __PRACRO_LUAPRAXISD_H__ #include /*** * Praxisd Class * @class Praxisd * @serverside * The praxisd class connects and handles communication with the praxisd * daemon process. */ /*** * @method object Praxisd.new(string host, int port) * Create a new Praxisd connection object. * @param host The hostname to connect to. * @param port The port number to connect to. * @return The newly created communication object. * @example Create a new praxisd object: * px = Praxisd.new('localhost', 10000) */ int px_new(lua_State *L); /*** * @method stringlist praxisd:cavelist() * Get server cave list. * To retrieve cavelist for a patient see @see praxisd:getcave(). * @return The complete list of known (possible) cave from the server. * @example Create a new praxisd object, get and print cavelist: * px = Praxisd.new('localhost', 10000) * lst = px:cavelist() * for i=0,#lst do * print(lst[i]) * end */ int px_cavelist(lua_State *L); /*** * @method stringlist praxisd:getcave(string patientid) * Get cave list from a patient. * To retrieve cavelist from the server see @see praxisd:cavelist(). To add cave * to a patient see @see praxisd:addcave(). * @param patientid A string containing the patientid. * @return The list cave registered with the patient. * @example Create a new praxisd object, get and print cavelist: * px = Praxisd.new('localhost', 10000) * lst = px:getcave('1234567890') * for i=0,#lst do * print(lst[i]) * end */ int px_getcave(lua_State *L); /*** * @method nil praxisd:adddiagnose(string patientid, string diagnose, string text) * Add a diagnose to a patient. * @param patientid A string containing the patientid. * @param diagnose The diagnose code. * @param text A text to store with the diagnose code. The string mat be up to 6 * characters long. If longer it will be trunkated. * @example Create a new praxisd object and add a diagnose: * px = Praxisd.new('localhost', 10000) * px:adddiagnose('1234567890', 'C0001', 'o.dxt') */ int px_adddiagnose(lua_State *L); /*** * @method nil praxisd:addbehandling(string patientid, string behandling, string text) * Add a behandling to a patient. * @param patientid A string containing the patientid. * @param diagnose The behandling code. * @param text A text to store with the behandling code. The string mat be up to 6 * characters long. If longer it will be trunkated. * @example Create a new praxisd object and add a behandling: * px = Praxisd.new('localhost', 10000) * px:addbehandling('1234567890', 'B0001', 'o.sin') */ int px_addbehandling(lua_State *L); /*** * @method nil praxisd:addcave(string patientid, string cave, string text) * Add a cave entry to a patient. To retrieve list of cave from a patient * see @see praxisd:getcave(). * @param patientid A string containing the patientid. * @param diagnose The cave string. * @param text A text to store with the cave entry. NOTE: This is not shown in * PCPraxis! The string mat be up to 6 characters long. If longer it will be * trunkated. * @example Create a new praxisd object and add a cave entry: * px = Praxisd.new('localhost', 10000) * px:addcave('1234567890', 'AZOPT', '') */ int px_addcave(lua_State *L); void register_praxisd(lua_State *L); #endif/*__PRACRO_LUAPRAXISD_H__*/