Crate projectm_rs
source · [−]Structs
Constants
Event types
Event types
Event types
Event types
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Keycodes
Modifiers
Modifiers
Modifiers
Modifiers
!< Set this flag to disable loading a preset playlist on startup.
!< No flags.
!< Left audio channel.
!< Right audio channel.
!< Left audio channel.
!< Right audio channel.
!< Rating for hard cuts.
!< Rating for soft cuts.
!< Draws a blob-style waveform.
!< Draws another blob-style waveform.
!< Draws a five-blob waveform.
!< Draws a circular waveform.
!< Draws a derivative-line waveform.
!< Draws a double-line waveform.
!< Draws a single-line waveform.
!< Draws a radial blob waveform.
!< Random waveform type.
Functions
@brief Adds a new preset at the end of the playlist.
@brief Allocates memory for a projectm_settings struct and returns the pointer.
@brief Allocates memory for a string and returns the pointer.
@brief Clears the preset playlist. @param instance The projectM instance handle.
@brief Creates a new projectM instance, reading settings from the given file. @param setting_file_path A path to the settings file to read the configuration from. If NULL or an empty path are provided, default settings will be used. @param flags Any combination of values from the projectm_flags enumeration. @return A projectM handle for the newly created instance that must be used in subsequent API calls. NULL if the instance could not be created successfully.
@brief Creates a new projectM instance with given settings. @param settings A pointer to a projectm_settings_t with the settings to be used by the new instance. If this pointer is NULL, default settings will be used. @param flags Any combination of values from the projectm_flags enumeration. @return A projectM handle for the newly created instance that must be used in subsequent API calls. NULL if the instance could not be created successfully.
@brief Default key handler that processes user input.
@brief Deletes one character from the preset search text.
@brief Destroys the given instance and frees the resources.
@brief Frees the memory of an allocated projectm_settings structure.
@brief Frees the memory of an allocated string.
@brief Returns whether aspect ratio correction is enabled or not. @param instance The projectM instance handle. @return True if aspect ratio correction is enabled, false otherwise.
@brief Returns the path projectM uses to search for additional data. @param instance The projectM instance handle. @return The data dir path.
@brief Returns the current “easter egg” value. @param instance The projectM instance handle. @return The current “easter egg” value.
@brief Returns whether the current preset was loaded successfully or not. @param instance The projectM instance handle. @return True if the preset was not loaded successfully, false if it is displayed correctly.
@brief Returns the target frames per second count. @note This is not the actual FPS, but the targeted refresh framerate if the integrating application. @param instance The projectM instance handle.
@brief Returns the minimum display time before a hard cut can happen. @param instance The projectM instance handle. @return The minimum number of seconds the preset will be displayed before a hard cut.
@brief Returns whether hard cuts are enabled or not. @param instance The projectM instance handle. @return True if hard cuts are enabled, false otherwise.
@brief Returns the current hard cut sensitivity. @param instance The projectM instance handle. @return The current hard cut sensitivity.
@brief Returns the path and filename of the font used to render the menu overlay text. @param instance The projectM instance handle. @return The path and filename of the menu text font.
@brief Returns the per-pixel equation mesh size in units. @param instance The projectM instance handle. @param width The width of the mesh. @param height The height of the mesh.
@brief Returns the number of presets in the current playlist. @param instance The projectM instance handle. @return The number of presets in the currently loaded playlist.
@brief Returns the path and filename of the preset at the requested playlist index. @note Make sure the index is inside the playlist bounds! @param instance The projectM instance handle. @param index The playlist index to return the filename for. @return The full path and filename of the preset at the given index.
@brief Returns the playlist index for the given preset name.
@brief Returns the display name of the preset at the requested playlist index. @note Make sure the index is inside the playlist bounds! @param instance The projectM instance handle. @param index The playlist index to return the display name for. @return The display name of the preset at the given index.
@brief Returns the search path for presets and textures. @param instance The projectM instance handle. @return The path used to search for presets and textures.
@brief Returns the rating for the given index and transition type. @param instance The projectM instance handle. @param index The playlist item to retrieve the rating from. @param rating_type The rating type to retrieve, either hard or soft cut. @return The rating value of the requested item and type.
@brief Gets the index of the provided preset name in the current search result list. @param instance The projectM instance handle. @param name The name of the preset to return the index for. @return The search result list index of the given preset name.
@brief Returns the current preset search text. @param instance The projectM instance handle. @return The current search text used to search for presets in the playlist.
@brief Returns the currently selected preset index. @param instance The projectM instance handle. @param index A valid pointer to an unsigned int that will receive the preset index. @return True if a preset idnex was returned, false if no preset was selected, e.g. the playlist is empty.
@brief Returns a structure with the current projectM settings. @param instance The projectM instance handle. @return A struct with all currently used settings.
@brief Returns whether playlist shuffling is currently enabled or not. @param instance The projectM instance handle. @return True if shuffle is enabled, false if not.
@brief Returns the time in seconds for a soft transition between two presets. @param instance The projectM instance handle. @return Time in seconds it takes to smoothly transition from one preset to another.
@brief Returns the size of the internal render texture. @param instance The projectM instance handle. @return The size of the internal rendering texture.
@brief Returns the current title text. @param instance The projectM instance handle. @return The currently set title text.
@brief Returns the path and filename of the font used to render the title overlay text. @param instance The projectM instance handle. @return The path and filename of the title text font.
@brief Returns the current viewport size in pixels. @param instance The projectM instance handle. @param width Valid pointer to a size_t variable that will receive the window width value. @param height Valid pointer to a size_t variable that will receive the window height value.
@brief Enables render-to-texture.
@brief Adds a new preset at the given position in the playlist.
@brief Returns whether the current preset is locked or not. @param instance The projectM instance handle. @return True if the preset lock is enabled, false otherwise.
@brief Returns whether the search text input mode is active or not. @param instance The projectM instance handle. @param no_minimum_length If set to true, will return true if at least one character has been typed, otherwise a minimum length of three characters is required. @return True if text input mode is active, false otherwise.
@brief Key handler that processes user input.
@brief Locks or unlocks the current preset.
@brief Adds 32-bit floating-point audio samples.
@brief Adds 16-bit integer audio samples.
@brief Adds 8-bit unsigned integer audio samples.
@brief Returns the maximum number of audio samples that can be stored.
@brief Populates the on-screen preset menu. @param instance The projectM instance handle.
@brief Returns whether the currently selected preset has a valid position in the playlist.
@brief Removes a preset from the playlist. @param instance The projectM instance handle. @param index The preset index to remove from the playlist.
@brief Renders a single frame.
@brief Reset the projectM OpenGL renderer.
@brief Deletes the whole search text.
@brief Reloads all textures.
@brief Switches to the next preset in the current playlist.
@brief Selects and displays the preset. @param instance The projectM instance handle. @param index the preset to display. @param hard_cut If true, a hard cut is made, otherwise it will be blended smoothly.
@brief Displays the preset with the given name. @param instance The projectM instance handle. @param preset_name The preset name to search for. @param hard_cut If true, the preset will be shown immediately, if false a soft transition will be rendered.
@brief Selects a preset, but does not display it. @param instance The projectM instance handle. @param index The preset index to select.
@brief Switches to the previous preset in the current playlist.
@brief Switches to a random preset in the current playlist.
@brief Enabled or disables aspect ratio correction in presets that support it.
@brief Sets the “easter egg” value.
@brief Sets the minimum display time before a hard cut can happen.
@brief Enables or disables hard cuts.
@brief Sets the hard cut volume sensitivity.
@brief Sets the help menu text.
@brief Sets the per-pixel equation mesh size in units. @note This will recreate the renderer. @param instance The projectM instance handle. @param width The new width of the mesh. @param height The new height of the mesh.
@brief Sets the preset display duration before switching to the next using a soft cut.
@brief Changes the display name of the given preset in the playlist. @param instance The projectM instance handle. @param index the playlist item index to change. @param name The new display name.
@brief Changes the rating or a playlist item and type. @param instance The projectM instance handle. @param index the playlist item to change the rating of. @param rating The new rating value. @param rating_type The type of the rating, either hard or soft cut.
@brief Sets a callback function that will be called when a preset rating changed.
@brief Sets a callback function that will be called when a preset change failed.
@brief Sets a callback function that will be called when a preset changes.
@brief Sets the current preset search text. @param instance The projectM instance handle. @param search_text The search text used to search for presets in the current playlist.
@brief Sets a callback function that will be called when the shuffle setting changes.
@brief Enables or disables preset playlist shuffling. @param instance The projectM instance handle. @param shuffle_enabled True to randomly select the next preset, false to skip to the next item in line.
@brief Sets the time in seconds for a soft transition between two presets.
@brief Changes the size of the internal render texture. @note This will recreate the internal renderer. @param instance The projectM instance handle. @param size The new size of the render texture. Must be a power of 2.
@brief Sets the current title text and displays it. @param instance The projectM instance handle. @param title The title text to display.
@brief Displays a short message in the center of the rendering area for a few seconds.
@brief Sets the current viewport size in pixels.
@brief Starts a touch event or moves an existing waveform.
@brief Removes any additional touch waveforms under the given coordinates. @param instance The projectM instance handle. @param x The last known x touch coordinate. @param y The last known y touch coordinate.
@brief Removes all touch waveforms from the screen.
@brief Centers any waveforms under the coordinates to simulate dragging. @param instance The projectM instance handle. @param x The x coordinate of the drag. @param y the y coordinate of the drag. @param pressure The amount of pressure applied in a range from 0.0 to 1.0.
@brief Saves the given settings struct into a file.
Type Definitions
For specifying audio data format.
Flags that influence projectM instance creation.
Placeholder values that can be used to address channel indices in PCM data arrays.
@brief Callback function that is executed if a preset rating has been changed.
Rating types supported by projectM. Used to control preset selection for different types of transitions (hard/soft).
@brief Callback function that is executed if a preset change failed.
@brief Callback function that is executed on each preset change.
@brief projectM instance settings.
@brief Callback function that is executed is the shuffle setting has changed. @param shuffle_enabled True if shuffle is enabled, false if it was disabled. @param user_data A user-defined data pointer that was provided when registering the callback, e.g. context information.
Waveform render types used in the touch start method.