mirror of
				https://github.com/ElvishArtisan/rivendell.git
				synced 2025-10-29 16:53:53 +01:00 
			
		
		
		
	* Added a 'STATIONS.REPORT_EDITOR_PATH' field to the database. * Incremented the database version to 302. * Added a 'Report Editor' control to the 'Edit Host' dialog in rdadmin(1). * Modified the report generator to use the editor specified in the 'Report Editor' control rather than than the value of the $VISUAL environmental variable.
		
			
				
	
	
		
			129 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			129 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| // rdstation.h
 | |
| //
 | |
| // Abstract a Rivendell Workstation
 | |
| //
 | |
| //   (C) Copyright 2002-2004,2016 Fred Gleason <fredg@paravelsystems.com>
 | |
| //
 | |
| //   This program is free software; you can redistribute it and/or modify
 | |
| //   it under the terms of the GNU General Public License version 2 as
 | |
| //   published by the Free Software Foundation.
 | |
| //
 | |
| //   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 RDSTATION_H
 | |
| #define RDSTATION_H
 | |
| 
 | |
| #include <qsqldatabase.h>
 | |
| #include <qhostaddress.h>
 | |
| 
 | |
| #include <rdconfig.h>
 | |
| 
 | |
| class RDStation
 | |
| {
 | |
|  public:
 | |
|   enum AudioDriver {None=0,Hpi=1,Jack=2,Alsa=3};
 | |
|   enum Capability {HaveOggenc=0,HaveOgg123=1,HaveFlac=2,
 | |
| 		   HaveLame=3,HaveMpg321=4,HaveTwoLame=5,HaveMp4Decode=6};
 | |
|   enum FilterMode {FilterSynchronous=0,FilterAsynchronous=1};
 | |
|   RDStation(const QString &name,bool create=false);
 | |
|   ~RDStation();
 | |
|   QString name() const;
 | |
|   bool exists() const;
 | |
|   QString shortName() const;
 | |
|   void setShortName(const QString &str) const;
 | |
|   QString description() const;
 | |
|   void setDescription(QString path) const;
 | |
|   QString userName() const;
 | |
|   void setUserName(QString name) const;
 | |
|   QString defaultName() const;
 | |
|   void setDefaultName(QString name) const;
 | |
|   QHostAddress address() const;
 | |
|   void setAddress(QHostAddress addr) const;
 | |
|   QHostAddress httpAddress(RDConfig *config) const;
 | |
|   QString httpStation() const;
 | |
|   void setHttpStation(const QString &str);
 | |
|   QHostAddress caeAddress(RDConfig *config) const;
 | |
|   QString caeStation() const;
 | |
|   void setCaeStation(const QString &str);
 | |
|   QString webServiceUrl(RDConfig *config) const;
 | |
|   int timeOffset();
 | |
|   void setTimeOffset(int msecs);
 | |
|   unsigned heartbeatCart() const;
 | |
|   void setHeartbeatCart(unsigned cartnum) const;
 | |
|   unsigned heartbeatInterval() const;
 | |
|   void setHeartbeatInterval(unsigned interval) const;
 | |
|   unsigned startupCart() const;
 | |
|   void setStartupCart(unsigned cartnum) const;
 | |
|   QString editorPath() const;
 | |
|   void setEditorPath(const QString &cmd);
 | |
|   QString reportEditorPath() const;
 | |
|   void setReportEditorPath(const QString &cmd);
 | |
|   RDStation::FilterMode filterMode() const;
 | |
|   void setFilterMode(RDStation::FilterMode mode) const;
 | |
|   bool startJack() const;
 | |
|   void setStartJack(bool state) const;
 | |
|   QString jackServerName() const;
 | |
|   void setJackServerName(const QString &str) const;
 | |
|   QString jackCommandLine() const;
 | |
|   void setJackCommandLine(const QString &str) const;
 | |
|   int jackPorts() const;
 | |
|   void setJackPorts(int ports) const;
 | |
|   int cueCard() const;
 | |
|   void setCueCard(int card);
 | |
|   int cuePort() const;
 | |
|   void setCuePort(int port);
 | |
|   unsigned cueStartCart() const;
 | |
|   void setCueStartCart(unsigned cartnum) const;
 | |
|   unsigned cueStopCart() const;
 | |
|   void setCueStopCart(unsigned cartnum) const;
 | |
|   int cartSlotColumns() const;
 | |
|   void setCartSlotColumns(int cols);
 | |
|   int cartSlotRows() const;
 | |
|   void setCartSlotRows(int rows);
 | |
|   bool enableDragdrop() const;
 | |
|   void setEnableDragdrop(bool state);
 | |
|   bool enforcePanelSetup() const;
 | |
|   void setEnforcePanelSetup(bool state);
 | |
|   bool systemMaint() const;
 | |
|   void setSystemMaint(bool state) const;
 | |
|   bool scanned() const;
 | |
|   void setScanned(bool state) const;
 | |
|   bool haveCapability(Capability cap) const;
 | |
|   void setHaveCapability(Capability cap,bool state) const;
 | |
|   int cards() const;
 | |
|   RDStation::AudioDriver cardDriver(int cardnum) const;
 | |
|   void setCardDriver(int cardnum,AudioDriver driver) const;
 | |
|   QString driverVersion(AudioDriver driver) const;
 | |
|   void setDriverVersion(AudioDriver driver,QString ver) const;
 | |
|   QString cardName(int cardnum) const;
 | |
|   void setCardName(int cardnum,QString name) const;
 | |
|   int cardInputs(int cardnum) const;
 | |
|   void setCardInputs(int cardnum,int inputs) const;
 | |
|   int cardOutputs(int cardnum) const;
 | |
|   void setCardOutputs(int cardnum,int outputs) const;
 | |
|   static bool create(const QString &name,QString *err_msg,
 | |
| 		     const QString &exemplar="",
 | |
| 		     const QHostAddress &hostaddr=QHostAddress());
 | |
|   static void remove(const QString &name);
 | |
| 
 | |
|  private:
 | |
|   void SetRow(const QString ¶m,const QString &value) const;
 | |
|   void SetRow(const QString ¶m,int value) const;
 | |
|   void SetRow(const QString ¶m,unsigned value) const;
 | |
|   void SetRow(const QString ¶m,bool value) const;
 | |
|   QString station_name;
 | |
|   int time_offset;
 | |
|   bool time_offset_valid;
 | |
| };
 | |
| 
 | |
| 
 | |
| #endif 
 |