버전

menu_open

include/AK/Wwise/SourceControl/SourceControlContainers.h

Go to the documentation of this file.
00001 /*******************************************************************************
00002 The content of this file includes portions of the AUDIOKINETIC Wwise Technology
00003 released in source code form as part of the SDK installer package.
00004 
00005 Commercial License Usage
00006 
00007 Licensees holding valid commercial licenses to the AUDIOKINETIC Wwise Technology
00008 may use this file in accordance with the end user license agreement provided 
00009 with the software or, alternatively, in accordance with the terms contained in a
00010 written agreement between you and Audiokinetic Inc.
00011 
00012 Apache License Usage
00013 
00014 Alternatively, this file may be used under the Apache License, Version 2.0 (the 
00015 "Apache License"); you may not use this file except in compliance with the 
00016 Apache License. You may obtain a copy of the Apache License at 
00017 http://www.apache.org/licenses/LICENSE-2.0.
00018 
00019 Unless required by applicable law or agreed to in writing, software distributed
00020 under the Apache License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
00021 OR CONDITIONS OF ANY KIND, either express or implied. See the Apache License for
00022 the specific language governing permissions and limitations under the License.
00023 
00024   Version: <VERSION>  Build: <BUILDNUMBER>
00025   Copyright (c) <COPYRIGHTYEAR> Audiokinetic Inc.
00026 *******************************************************************************/
00027 
00030 
00031 #ifndef _AK_WWISE_SOURCECONTROLCONTAINERS_H
00032 #define _AK_WWISE_SOURCECONTROLCONTAINERS_H
00033 
00034 // Audiokinetic namespace
00035 namespace AK
00036 {
00037     // Audiokinetic Wwise namespace
00038     namespace Wwise
00039     {
00040         namespace SourceControlContainers
00041         {
00043             struct __AkPos{};
00045             typedef __AkPos* AkPos;
00046 
00047             // IAkList
00056             template <class Type, class Arg_Type = const Type&>
00057             class IAkList
00058             {
00059             public:
00060                 virtual unsigned int GetCount() const = 0;
00061                 virtual unsigned int GetSize() const = 0;
00062                 virtual bool IsEmpty() const = 0;
00063 
00064                 virtual AkPos AddHead( Arg_Type in_newElement ) = 0;
00065                 virtual AkPos AddTail( Arg_Type in_newElement ) = 0;
00066 
00067                 virtual void RemoveHead() = 0;
00068                 virtual void RemoveTail() = 0;
00069                 virtual void RemoveAt( AkPos in_position ) = 0;
00070                 virtual void RemoveAll() = 0;
00071 
00072                 virtual Type& GetHead() = 0;
00073                 virtual const Type& GetHead() const = 0;
00074                 virtual Type& GetTail() = 0;
00075                 virtual const Type& GetTail() const = 0;
00076                 virtual AkPos GetHeadPosition() const = 0;
00077                 virtual AkPos GetTailPosition() const = 0;
00078                 virtual Type& GetNext( AkPos& in_rPosition ) = 0;
00079                 virtual const Type& GetNext( AkPos& in_rPosition ) const = 0;
00080                 virtual Type& GetPrev( AkPos& in_rPosition ) = 0;
00081                 virtual const Type& GetPrev( AkPos& in_rPosition ) const = 0;
00082                 virtual Type& GetAt( AkPos in_position ) = 0;
00083                 virtual const Type& GetAt( AkPos in_position ) const = 0;
00084 
00085                 virtual void SetAt( AkPos in_pos, Arg_Type in_newElement ) = 0;
00086                 virtual AkPos InsertBefore( AkPos in_position, Arg_Type in_newElement ) = 0;
00087                 virtual AkPos InsertAfter( AkPos in_position, Arg_Type in_newElement ) = 0;
00088             };
00089 
00090             // IAkMap
00101             template <class Key, class Arg_Key, class Value, class Arg_Value>
00102             class IAkMap
00103             {
00104             public:
00105                 virtual unsigned int GetCount() const = 0;
00106                 virtual unsigned int GetSize() const = 0;
00107                 virtual bool IsEmpty() const = 0;
00108 
00109                 virtual bool Lookup( Arg_Key in_key, Value& in_rValue ) const = 0;
00110 
00111                 virtual Value& operator[]( Arg_Key in_key ) = 0;
00112                 virtual void SetAt( Arg_Key in_key, Arg_Value in_newValue ) = 0;
00113 
00114                 virtual bool RemoveKey( Arg_Key in_key ) = 0;
00115                 virtual void RemoveAll() = 0;
00116 
00117                 virtual AkPos GetStartPosition() const = 0;
00118                 virtual void GetNextAssoc( AkPos& in_rNextPosition, Key& in_rKey, Value& in_rValue ) const = 0;
00119             };      
00120         };
00121     }
00122 }
00123 
00124 #endif // _AK_WWISE_SOURCECONTROLCONTAINERS_H

이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요