Isomet Modular Synthesiser (iMS) API
v1.4.2
iMS API
|
An ImageGroup collects together multiple associated images and a single ImageSequence for controlling Image playback order. More...
#include <include/Image.h>
Public Member Functions | |
Constructors & Destructor | |
ImageGroup (const std::string &name="", const std::time_t &create_time=std::time(nullptr), const std::time_t &modified_time=std::time(nullptr)) | |
Create a default empty ImageGroup. More... | |
ImageGroup (const ImageGroup &) | |
Copy Constructor. | |
ImageGroup & | operator= (const ImageGroup &) |
Assignment Constructor. | |
~ImageGroup () | |
Destructor. | |
ImageGroup collection modifiers | |
void | AddImage (const Image &img) |
Adds a new Image to the back of the Image Queue. More... | |
iterator | InsertImage (iterator it, const Image &img) |
Inserts a new Image before the specified element in the Image Queue. More... | |
iterator | RemoveImage (iterator it) |
Removes an Image at the specified element in the Image Queue. More... | |
iterator | RemoveImage (iterator first, iterator last) |
Removes a range of Image's from the specified range of elements in the Image Queue. More... | |
void | Clear () |
Clear ImageGroup. More... | |
int | Size () const |
Returns the number of Images in the ImageGroup. More... | |
Timestamping | |
const std::time_t & | CreatedTime () const |
Returns Time at which the Container was created. More... | |
std::string | CreatedTimeFormat () const |
Returns Human-readable string for the time at which the ImageGroup was created. More... | |
User MetaData | |
std::string & | Author () |
Author Set Accessor. More... | |
const std::string & | Author () const |
Author Get Accessor. More... | |
std::string & | Company () |
Company Set Accessor. More... | |
const std::string & | Company () const |
Company Get Accessor. More... | |
std::string & | Revision () |
Revision Set Accessor. More... | |
const std::string & | Revision () const |
Revision Get Accessor. More... | |
std::string & | Description () |
Description Set Accessor. More... | |
const std::string & | Description () const |
Description Get Accessor. More... | |
ImageGroup Sequence | |
ImageSequence & | Sequence () |
ImageSequence Set Accessor. More... | |
const ImageSequence & | Sequence () const |
ImageSequence Get Accesor. More... | |
![]() | |
void | clear () |
clears the contents More... | |
iterator | insert (iterator pos, const Image &value) |
Inserts a single new element into the DequeBase. More... | |
iterator | insert (const_iterator pos, size_t count, const Image &value) |
Inserts multiple copies of an element into the DequeBase. | |
iterator | insert (iterator pos, const_iterator first, const_iterator last) |
Inserts a range of elements into the DequeBase. | |
void | push_back (const Image &value) |
Appends the given element value to the end of the container. | |
void | pop_back () |
Removes the last element of the container. | |
void | push_front (const Image &value) |
Prepends the given element value to the beginning of the container. | |
void | pop_front () |
Removes the first element of the container. | |
iterator | erase (iterator pos) |
Removes the element at pos. | |
iterator | erase (iterator first, iterator last) |
Removes the elements in the range [first; last]. | |
std::size_t | size () const |
Returns the number of elements in the container. | |
DequeBase (const std::string &Name="[no name]", const std::time_t &modified_time=std::time(nullptr)) | |
Create a default empty List with optional name. | |
DequeBase (size_t, const Image &, const std::string &Name="[no name]", const std::time_t &modified_time=std::time(nullptr)) | |
Fill Constructor. | |
DequeBase (const_iterator first, const_iterator last, const std::string &Name="[no name]", const std::time_t &modified_time=std::time(nullptr)) | |
Range Constructor. | |
DequeBase (const DequeBase &) | |
Copy Constructor. | |
~DequeBase () | |
Destructor. | |
DequeBase & | operator= (const DequeBase &) |
Assignment Constructor. | |
Image & | operator[] (int idx) |
Random Write Access to an element in the Deque. More... | |
const Image & | operator[] (int idx) const |
Random Access to an element in the Deque. More... | |
bool | operator== (DequeBase const &rhs) const |
Equality Operator checks Deque object UUID's for equivalence. More... | |
const std::array< std::uint8_t, 16 > | GetUUID () const |
Returns a vector representing the Unique Identifier assigned to the DequeBase object. More... | |
const std::time_t & | ModifiedTime () const |
Returns Time at which the Container was last modified. More... | |
std::string | ModifiedTimeFormat () const |
Returns Human-readable string for the time at which the Container was last modified. More... | |
const std::string & | Name () const |
A string stored with the Container to aid human users in identifying its purpose. More... | |
std::string & | Name () |
iterator | begin () |
Returns an iterator pointing to the first element in the DequeBase container. More... | |
const_iterator | begin () const |
Returns a const_iterator pointing to the first element in the DequeBase container. More... | |
iterator | end () |
Returns an iterator referring to the past-the-end element in the DequeBase container. More... | |
const_iterator | end () const |
Returns a const_iterator referring to the past-the-end element in the DequeBase container. More... | |
const_iterator | cbegin () const |
Returns a const_iterator pointing to the first element in the DequeBase container. More... | |
const_iterator | cend () const |
Returns a const_iterator referring to the past-the-end element in the DequeBase container. More... | |
Additional Inherited Members | |
![]() | |
typedef std::deque< Image >::iterator | iterator |
Iterator defined for user manipulation of DequeBase. | |
typedef std::deque< Image >::const_iterator | const_iterator |
Const Iterator defined for user readback of DequeBase. | |
An ImageGroup collects together multiple associated images and a single ImageSequence for controlling Image playback order.
Individual Image's may be played back on an iMS System freely but to specify more complex behaviour, typically an ImageGroup is used. An ImageGroup can contain one or many images and always has exactly one sequence which may be used to define an order in which those Images are played back on the iMS Controller.
Additionally, user information may be supplied in the form of metadata (name, author, company, revision, description) to assist in identifying the purpose of an ImageGroup.
iMS::ImageGroup::ImageGroup | ( | const std::string & | name = "" , |
const std::time_t & | create_time = std::time(nullptr) , |
||
const std::time_t & | modified_time = std::time(nullptr) |
||
) |
Create a default empty ImageGroup.
The ImageGroup is created with zero Images in its list and a default ImageSequence with zero entries. Call as ImageGroup()
or ImageGroup
("My \c Group"). do not use the create_time or modified_time parameters.
name | Optionally, the caller may specify a Name for the ImageGroup. If not specified, it defaults to an empty string. |
create_time | Specify the creation time for the ImageGroup. This is intended for use only when loading ImageGroup's from an ImageProject disk file and should not be used. |
modified_time | Specify the last modified time for the ImageGroup. This is intended for use only when loading ImageGroup's from an ImageProject disk file and should not be used. |
void iMS::ImageGroup::AddImage | ( | const Image & | img | ) |
std::string& iMS::ImageGroup::Author | ( | ) |
const std::string& iMS::ImageGroup::Author | ( | ) | const |
void iMS::ImageGroup::Clear | ( | ) |
Clear ImageGroup.
Remove all Images from the ImageGroup and all entries from the ImageSequence
std::string& iMS::ImageGroup::Company | ( | ) |
Company Set Accessor.
Sets the Company name for the ImageGroup
const std::string& iMS::ImageGroup::Company | ( | ) | const |
Company Get Accessor.
Gets the Company name for the ImageGroup
const std::time_t& iMS::ImageGroup::CreatedTime | ( | ) | const |
Returns Time at which the Container was created.
At the time the ImageGroup is first created, the system time is recorded. If a ImageGroup is copied or assigned to another object, the new object inherits the Creation time of the parent so the timestamp always refers to the time at which an ImageGroup was initially created.
std::string iMS::ImageGroup::CreatedTimeFormat | ( | ) | const |
Returns Human-readable string for the time at which the ImageGroup was created.
std::string& iMS::ImageGroup::Description | ( | ) |
Description Set Accessor.
Sets a Description field for the ImageGroup
const std::string& iMS::ImageGroup::Description | ( | ) | const |
Description Get Accessor.
Gets the Description field for the ImageGroup
std::string& iMS::ImageGroup::Revision | ( | ) |
Revision Set Accessor.
Sets the Revision number for the ImageGroup
Please note that this field is not handled internally by the ImageGroup class. It is left to the user application to modify, update or increment the Revision number as well as specifying a numbering scheme as best fits the application.
const std::string& iMS::ImageGroup::Revision | ( | ) | const |
Revision Get Accessor.
Gets the Revision number for the ImageGroup
ImageSequence& iMS::ImageGroup::Sequence | ( | ) |
ImageSequence Set Accessor.
Returns a reference to the ImageGroup sequence to allow user application code to modify the Sequence Table.
const ImageSequence& iMS::ImageGroup::Sequence | ( | ) | const |
ImageSequence Get Accesor.
Returns a const reference to the ImageGroup sequence to allow user application code to view the Sequence Table.
int iMS::ImageGroup::Size | ( | ) | const |
Returns the number of Images in the ImageGroup.
Returns the number of Images in the ImageGroup