/* CORBA Interface definitions. Author: Dmitri Hrapof Version: 0.4 Copyright (C) 2004, 2005 Dmitri Hrapof This file is part of Geiriadur. Geiriadur 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, or (at your option) any later version. Geiriadur 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 Geiriadur; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __GEIRIADUR_IDL__ #define __GEIRIADUR_IDL__ #pragma prefix "cymraeg.ru" module Dictionary { typedef unsigned long Did; typedef unsigned long Language; typedef unsigned long Part; typedef sequence utf8; typedef sequence octets; typedef sequence bulls; struct Word { Did id; Language lang; Part prt; utf8 value; utf8 pron; utf8 attr; }; typedef sequence Words; struct Example { Did id; utf8 first; utf8 second; }; typedef sequence Examples; struct Translation { Did id; Word first; Word second; utf8 note; unsigned long usuality; Examples usage; }; typedef sequence Translations; struct Entry { Word headword; Translations meanings; }; typedef sequence Entries; exception InternalError { }; exception NotFound { }; exception Oes { }; exception NoPermission { }; interface Lookup { Entries translate (in utf8 word, in Language from, in Language to) raises (InternalError); Entries etalsnart (in utf8 word, in Language from, in Language to) raises (InternalError); Entries interpret (in utf8 word, in Language from, in Language to, in Language via) raises (InternalError); Entries find (in Did word, in Language to) raises (NotFound, InternalError); Words locate (in utf8 word, in Language from) raises (InternalError); Words paradigm (in Did word) raises (NotFound, InternalError); Words enumerate (in Language to, in Language from); }; interface Workshop { enum M {B, E, F, K, S}; Did once (in string user) raises (NoPermission); Did create (in M table, in Word c, in boolean check, in utf8 user, in octets digest, out Did once) raises (Oes, NoPermission, InternalError); Did pcreate (in Did first, in Did second, in utf8 comment, in unsigned long usuality, in utf8 user, in octets digest, out Did once) raises (Oes, NoPermission, InternalError); Did xcreate (in Example c, in utf8 user, in octets digest, out Did once) raises (NoPermission, InternalError); void destroy (in M table, in Did id, in utf8 user, in octets digest, out Did once) raises (NoPermission, InternalError); void pdestroy (in Did id, in utf8 user, in octets digest, out Did once) raises (NoPermission, InternalError); void xdestroy (in Did id, in utf8 user, in octets digest, out Did once) raises (NoPermission, InternalError); void edit (in M table, in Word c, in utf8 user, in octets digest, out Did once) raises (NotFound, NoPermission, InternalError); void pedit (in Did id, in Did first, in Did second, in utf8 comment, in unsigned long usuality, in utf8 user, in octets digest, out Did once) raises (NotFound, NoPermission, InternalError); void xedit (in Example c, in utf8 user, in octets digest, out Did once) raises (NotFound, NoPermission, InternalError); Words list (in M table, in Language lang, in utf8 mask, in boolean attr, in Part prt, in boolean pt, in unsigned long offset, in unsigned long count) raises (InternalError); Words zlist (in Language lang, in utf8 mask, in Did word, in unsigned long offset, in unsigned long count, out bulls translations) raises (InternalError); Words flist (in Did word, in boolean fork) raises (InternalError); Translations plist (in Language fro, in Language to, in utf8 m, in unsigned long off, in unsigned long cou) raises (InternalError); Translation phind (in Did tran) raises (NotFound, InternalError); Examples xlist (in Did tran) raises (InternalError); unsigned long count (in Language lang, in utf8 letter, in utf8 limit) raises (InternalError); unsigned long pcount (in Language from, in Language to, in utf8 letter, in utf8 limit) raises (InternalError); }; }; #endif // __GEIRIADUR_IDL__