Trax3 3.1.0
trax track library
Loading...
Searching...
No Matches
TrackCollectionContainer.h
1// trax track library
2// AD 2014
3//
4// "the resolution of all the fruitless searches"
5//
6// Peter Gabriel
7//
8// Copyright (c) 2025 Trend Redaktions- und Verlagsgesellschaft mbH
9// Copyright (c) 2019 Marc-Michael Horstmann
10//
11// Permission is hereby granted to any person obtaining a copy of this software
12// and associated source code (the "Software"), to use, view, and study the
13// Software for personal or internal business purposes, subject to the following
14// conditions:
15//
16// 1. Redistribution, modification, sublicensing, or commercial use of the
17// Software is NOT permitted without prior written consent from the copyright
18// holder.
19//
20// 2. The Software is provided "AS IS", without warranty of any kind, express
21// or implied.
22//
23// 3. All copies of the Software must retain this license notice.
24//
25// For further information, please contact: horstmann.marc@trendverlag.de
26
27#pragma once
28
29#include "TrackCollection.h"
30
31namespace trax{
32
34 struct TrackCollectionContainer : Collection<TrackCollectionContainer,TrackCollection>,
35 Identified<TrackCollectionContainer>
36 {
38 static dclspc std::unique_ptr<TrackCollectionContainer> Make( bool doCreateCollections = false ) noexcept;
39 };
40
41
48 class TrackCollectionContainerDecorator : public CollectionDecorator<ObjectIDDecorator<Decorator<TrackCollectionContainer>>>{
49 public:
50
51 TrackCollectionContainerDecorator() = delete;
52
55 TrackCollectionContainerDecorator( std::unique_ptr<TrackCollectionContainer> pTrackCollectionContainer )
57 {}
58
59 };
60}
CollectionDecorator(std::shared_ptr< InterfaceType > pComponent)
Definition CollectionDecorator.h:58
The base for decorator implementations. Needed as BaseDecorator to combine other decorator implemente...
Definition ObjectIDDecorator.h:27
A decorator for identification part of trax objects.
Definition ObjectIDDecorator.h:90
TrackCollectionContainerDecorator(std::unique_ptr< TrackCollectionContainer > pTrackCollectionContainer)
Constructs the decorator.
Definition TrackCollectionContainer.h:55
STL namespace.
Namespace of all the trax track libraries classes and methods.
Definition Collection.h:17
Collection to hold a set of TrackCollection objects.
Definition TrackCollectionContainer.h:36
static dclspc std::unique_ptr< TrackCollectionContainer > Make(bool doCreateCollections=false) noexcept
Makes a standard TrackCollectionContainer object.