xref: /haiku/src/apps/patchbay/EndpointInfo.h (revision c14bca2958fb7b0c34d5464ccfdd87038f909a0c)
142b7984aSPete Goodeve /* EndpointInfo.h
242b7984aSPete Goodeve  * --------------
342b7984aSPete Goodeve  * A simple structure that describes a MIDI object.
442b7984aSPete Goodeve  * Currently, it only contains icon data associated with the object.
542b7984aSPete Goodeve  *
642b7984aSPete Goodeve  * Copyright 2013, Haiku, Inc. All rights reserved.
742b7984aSPete Goodeve  * Distributed under the terms of the MIT License.
842b7984aSPete Goodeve  *
942b7984aSPete Goodeve  * Revisions by Pete Goodeve
1042b7984aSPete Goodeve  *
1142b7984aSPete Goodeve  * Copyright 1999, Be Incorporated.   All Rights Reserved.
1242b7984aSPete Goodeve  * This file may be used under the terms of the Be Sample Code License.
1342b7984aSPete Goodeve  */
14*82fbbe21SPete Goodeve #ifndef ENDPOINTINFO_H
15*82fbbe21SPete Goodeve #define ENDPOINTINFO_H
1642b7984aSPete Goodeve 
1742b7984aSPete Goodeve #include <Mime.h> /* for icon_size */
1842b7984aSPete Goodeve #include <GraphicsDefs.h> /* for color_space */
1942b7984aSPete Goodeve 
2042b7984aSPete Goodeve class BMidiEndpoint;
2142b7984aSPete Goodeve 
2242b7984aSPete Goodeve extern const uint8 LARGE_ICON_SIZE;
2342b7984aSPete Goodeve extern const uint8 MINI_ICON_SIZE;
2442b7984aSPete Goodeve extern const icon_size DISPLAY_ICON_SIZE;
2542b7984aSPete Goodeve extern const color_space ICON_COLOR_SPACE;
2642b7984aSPete Goodeve 
2742b7984aSPete Goodeve class EndpointInfo
2842b7984aSPete Goodeve {
2942b7984aSPete Goodeve public:
3042b7984aSPete Goodeve 	EndpointInfo();
3142b7984aSPete Goodeve 	EndpointInfo(int32 id);
3242b7984aSPete Goodeve 	EndpointInfo(const EndpointInfo& info);
3342b7984aSPete Goodeve 	EndpointInfo& operator=(const EndpointInfo& info);
3442b7984aSPete Goodeve 	~EndpointInfo();
3542b7984aSPete Goodeve 
ID()3642b7984aSPete Goodeve 	int32 ID() const
3742b7984aSPete Goodeve 	{
3842b7984aSPete Goodeve 		return fId;
3942b7984aSPete Goodeve 	}
Icon()4042b7984aSPete Goodeve 	const BBitmap* Icon() const
4142b7984aSPete Goodeve 	{
4242b7984aSPete Goodeve 		return fIcon;
4342b7984aSPete Goodeve 	}
4442b7984aSPete Goodeve 	void UpdateProperties(const BMessage* props);
4542b7984aSPete Goodeve 
4642b7984aSPete Goodeve private:
4742b7984aSPete Goodeve 	int32 fId;
4842b7984aSPete Goodeve 	BBitmap* fIcon;
4942b7984aSPete Goodeve };
5042b7984aSPete Goodeve 
51*82fbbe21SPete Goodeve #endif /* ENDPOINTINFO_H */
52