1/*
2 * Copyright (c) 1999-2000, Eric Moon.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * 1. Redistributions of source code must retain the above copyright
10 *    notice, this list of conditions, and the following disclaimer.
11 *
12 * 2. Redistributions in binary form must reproduce the above copyright
13 *    notice, this list of conditions, and the following disclaimer in the
14 *    documentation and/or other materials provided with the distribution.
15 *
16 * 3. The name of the author may not be used to endorse or promote products
17 *    derived from this software without specific prior written permission.
18 *
19 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR
20 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
21 * OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
23 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
26 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
27 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */
30
31
32// EndPointInfoView.h (Cortex/InfoView)
33//
34// * PURPOSE
35//   Display input/output related info in the InfoWindow.
36//   Very similar to ConnectionInfoView, only that this
37//   views is prepared to handle wildcard values in the
38//   media_format (a connection should never have to!)
39//
40// * HISTORY
41//   c.lenz		14nov99		Begun
42//
43
44#ifndef __EndPointInfoView_H__
45#define __EndPointInfoView_H__
46
47#include "InfoView.h"
48
49// Media Kit
50#include <MediaDefs.h>
51
52#include "cortex_defs.h"
53__BEGIN_CORTEX_NAMESPACE
54
55class EndPointInfoView :
56	public InfoView {
57
58public:					// *** ctor/dtor
59
60	// creates an InfoView for a media_input. adds source
61	// and destination fields, then calls _addFormatFields
62						EndPointInfoView(
63							const media_input &input);
64
65	// creates an InfoView for a media_output. adds source
66	// and destination fields, then calls _addFormatFields
67						EndPointInfoView(
68							const media_output &output);
69
70	virtual				~EndPointInfoView();
71
72public:					// *** BView impl
73
74	// notify InfoWindowManager
75	virtual void		DetachedFromWindow();
76
77private:				// *** internal operations
78
79	// adds media_format related fields to the view
80	// (wildcard-aware)
81	void				_addFormatFields(
82							const media_format &format);
83
84private:				// *** data members
85
86	// true if media_output
87	bool				m_output;
88
89	int32				m_port;
90
91	int32				m_id;
92};
93
94__END_CORTEX_NAMESPACE
95#endif /* __EndPointInfoView_H__ */
96