/* Copyright (C) 2003 Paul Davis This program 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; either version 2 of the License, or (at your option) any later version. 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 __ardour_image_comp_h__ #define __ardour_image_comp_h__ #include namespace ardourvis { /** Simple version number */ const int32_t MSG_VERSION = 1 ; /** the default port we use */ const int32_t DEFAULT_PORT = 30000 ; /** the maximum buffer size we will use to send receive a message (image data handled differently) */ const int32_t MAX_MSG_SIZE = 256 ; /** the number of characters used for a value describing the characters within a textual data element */ const int32_t TEXT_SIZE_CHARS = 3 ; /** the number of characters we use for time values within a message */ const int32_t TIME_VALUE_CHARS = 10 ; /** the number of charachters we use for other value data, ie image width/height values */ const int32_t IMAGE_SIZE_CHARS = 3 ; /** the number of characters used to for the size of the image data message */ const int32_t IMAGE_DATA_MESSAGE_SIZE_CHARS = 32 ; // ------------------------------------------------------------------------- // // Main Actions // we join the action chars with items to create the message // with the exception of the return values, all messages begin with one // of these message parts /** Insert an Item */ const std::string INSERT_ITEM = "IN" ; /** Remove an Item */ const std::string REMOVE_ITEM = "RM" ; /** Rename a named item */ const std::string RENAME_ITEM = "MV" ; /** Request some aditional data */ const std::string REQUEST_DATA = "RQ" ; /** Return of a data request */ const std::string RETURN_DATA = "RD" ; /** Update a item */ const std::string ITEM_UPDATE = "IU" ; /** Select an Item */ const std::string ITEM_SELECTED = "IS" ; /** Sesion Action */ const std::string SESSION_ACTION = "SA" ; /** Sesion Action */ const std::string SHUTDOWN = "SD" ; // ------------------------------------------------------------------------- // // Return values const std::string RETURN_TRUE = "RT1" ; const std::string RETURN_FALSE = "RT0" ; // ------------------------------------------------------------------------- // // Updateable attributes /** Update the position of a time axis item */ const std::string POSITION_CHANGE = "PC" ; /** Update the duration of a time axis item */ const std::string DURATION_CHANGE = "DC" ; /** Enable the position lock constraint no a time axis item */ const std::string POSITION_LOCK_CHANGE = "PL" ; /** Enable the duration lock constraint no a time axis item */ const std::string DURATION_LOCK_CHANGE = "PL" ; /** Update the Maximum duration of a time axis item (_Upper _Duration) */ const std::string MAX_DURATION_CHANGE = "UD" ; /** Enable the Maximum duration constraint of a time axis item (_Enable _Upper (Duration)) */ const std::string MAX_DURATION_ENABLE_CHANGE = "EU" ; /** Update the Minimum duration of a time axis item (_Lowerr _Duration) */ const std::string MIN_DURATION_CHANGE = "LD" ; /** Enable the Minimum duration constraint of a time axis item (_Enable _Lower (Duration)) */ const std::string MIN_DURATION_ENABLE_CHANGE = "EL" ; /** Refresh the image data of an imageframe item (original image has been altered?) */ const std::string IMAGE_REFRESH = "IR" ; /** the session sample rate has changed */ const std::string SAMPLE_RATE_CHANGE = "RC" ; // ------------------------------------------------------------------------- // // Requestable data items /** RGB data of the iamge */ // this is probably a bad choice of string ! const std::string IMAGE_RGB_DATA = "ID" ; /** the (path) name of the Ardour session */ const std::string SESSION_NAME = "SN" ; /** the current sample rate */ const std::string SAMPLE_RATE = "SR" ; /** the (path) name of the image compositor session */ const std::string COMPOSITOR_SESSION = "CS" ; // ------------------------------------------------------------------------- // // Session Actions - follwed by session path /** Close a session */ const std::string CLOSE_SESSION = "CS" ; /** Open a session */ const std::string OPEN_SESSION = "OS" ; // ------------------------------------------------------------------------- // // Items const std::string IMAGEFRAME_TIME_AXIS = "IT" ; const std::string MARKER_TIME_AXIS = "MT" ; const std::string IMAGEFRAME_ITEM = "II" ; const std::string MARKER_ITEM = "MI" ; /** or an ImageFrameTimeAxisGroup */ const std::string IMAGEFRAME_GROUP = "IG" ; } /* namespace ardour_visual */ #endif /* __ardour_image_comp_socket_h__ */