/* Network-Integrated Multimedia Middleware (NMM)
 * http://www.motama.com/nmm.html
 *
 * Copyright (C) 2006-2007
 * Motama GmbH, Saarbruecken, Germany
 * http://www.motama.com
 *
 * This file is part of NMM. 
 * 
 * NMM 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; only version 2 of the License.      
 * 
 * NMM 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 NMM; if not, write to the Free Software Foundation,    
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 */


module NMM{

  /**
   * Interface to set parameters for NxtvepgPlugin
   */
  interface INxtvepgPlugin {

    /**
     * sets the remote host where the nxtvepg-daemon if different from localhost
     *@param loc location of nxtvepg-daemon
     */
    void setLocation(in string loc);

    /**
    * sets the remote port where the nxtvepg-daemon if different from localhost
    *@param nmm_int32 port
    */
    void setPort(in nmm_int32 p);

    /**
     * adding a provider-string for XML-Dump
     */
    void addProvider(in string p);
    
    /**
     * returns the providers for XMLDump, that are selected
     */
    list<string> getProvider();

    /**
     * sets the path and name of the plugin-Configuration-File
     */
    void setConfigFile(in string file);
    /**
     *returns the path and name of Configuraaiton-File used
     */
    string getConfigFile();

    /**
     * seting database-directory for nxtvepg-tool
     */
    void setDBDir(in string db);
    /**
     * get database-directory
     */
    string getDBDir();

    /**
     * if the file contains data for differnet countris, specify, wich data should be evaluated
     *@param abreviation for locale, eg de for germany
     */
    void setLocale(in string l);
    /**
     * get the locale-string set
     *@return localstring
     */
    string getLocale();

    /**
     * set the interval when a new grabb-command should be issued. The syntax of the string must be XY, where X=d|m|s Y=0-...
     * X=d means daily, the number specifies, after what amount of days the command should be re-launched
     *@param period
     */
    void setPeriod(in string p);
    /**
     * get the period set
     *@return period
     */
    string getPeriod();

    /**
     * enbale/disable the use of tv_split, wich is contains in xmltv-tools-distribution
     */
    void setUseTv_split(in nmm_bool b);
    nmm_bool getUseTv_split();
  };
}
