Nuclide
Software Development Kit for id Technology (BETA)
AVTransmitter.h
1/*
2 * Copyright (c) 2025 Vera Visions LLC.
3 *
4 * Permission to use, copy, modify, and distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
13 * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
14 * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15*/
16
49class
51{
52public:
53 void ncAVTransmitter(void);
54
55#ifdef SERVER
56 virtual void Input(entity,string,string);
57 virtual void SpawnKey(string,string);
58 virtual bool IsAlive(void);
59
60 virtual void EvaluateEntity(void);
61 virtual float SendEntity(entity,float);
62 virtual void TransmitSingleVideo(string videoFile, bool advancesSchedule);
63#endif
64
65#ifdef CLIENT
66 virtual void ReceiveEntity(float,float);
67 virtual void ReloadVideoResources(void);
68 virtual void UpdateReceivers(void);
69 virtual void Draw(void);
70
72 nonvirtual void FlipImages(void);
73#endif
74
75private:
76 NETWORKED_INT(m_tvChannelNum)
77 NETWORKED_STRING(m_tvChannelVideo)
78 NETWORKED_STRING(m_tvChannelAudio)
79 NETWORKED_FLOAT(m_tvChannelTime)
80 NETWORKED_STRING(m_tvChannelDOG)
81 NETWORKED_STRING(m_tvChannelTopText)
82 NETWORKED_STRING(m_tvChannelBottomText)
83 NETWORKED_VECTOR(m_tvChannelLight)
84 NETWORKED_STRING(m_tvChannelUI)
85 NETWORKED_FLOAT(m_tvChannelLightStyle)
86
87#ifdef CLIENT
88 bool m_bCached;
89 string m_tvChannelMat;
90 string m_tvChannelVideoMat;
91 entity m_tvChannelUIRootWindow;
92 entity m_tvChannelUIMenu;
93#endif
94};
95
96typedef enumflags
97{
98 TVCHANNELFL_ORIGIN,
99 TVCHANNELFL_CHAN,
100 TVCHANNELFL_UI,
101 TVCHANNELFL_VIDEO,
102 TVCHANNELFL_AUDIO,
103 TVCHANNELFL_DOG,
104 TVCHANNELFL_TOPTEXT,
105 TVCHANNELFL_BOTTOMTEXT,
106 TVCHANNELFL_LIGHT,
107 TVCHANNELFL_SEEKTIME,
108};
Definition: AVTransmitter.h:51
Definition: MediaSource.h:3
typedef enumflags
Defines the valid alignment flags for text fields.
Definition: font.h:37