Graphisoft®

GSRootVersion: 1.0

GS 네임스페이스

이 네임스페이스는 기본 인프라 구조를 포함합니다: Object 루트 클래스, 컨테이너, 문자열, 시리얼화, 이벤트 소스/옵저버 등

알고리즘
컨테이너
이벤트
반복자(Iterator)
객체(Object)
시리얼화
텍스트
유틸리티 클래스 함수들

Object

클래스 설명
Object 루트 클래스.

시리얼화

클래스 설명
IChannel 순차 데이터 소스. (입력)
OChannel 순차 데이터 대상. (출력)
IProtocol 시리얼화 하는 동안 사용되는 타입 composer 인터페이스.
OProtocol 시리얼화 하는 동안 사용되는 타입 decomposer 인터페이스.

컨테이너

클래스 설명
Container 모든 컨테이너 클래스들의 루트 클래스.
RandomContainer 랜덤 접근 가능한 컨테이너들의 베이스 클래스.
Array 하나의 연속적으로 재할당하는 버퍼를 사용하는 랜덤 컨테이너.
ArrayFB 고정된 크기의 내장된 초기 버퍼를 가진 배열.
PagedArray 재할당 없는 분리된 메모리 페이지들을 사용하는 랜덤 컨테이너.
StableArray 항목들의 주소들이 바뀌지 않는 랜덤 컨테이너.
AssociativeContainer 연관 컨테이너들의 베이스 클래스.
HashTable 해싱 방법을 사용하는 연관 컨테이너.

반복자(Iterator)

클래스 설명
IteratorBase 모든 반복자 클래스들의 루트 클래스.
ForwardIterator 항목들의 시퀀스의 순방향 열거를 위한 반복자.
BidirectionalIterator 항목들의 시퀀스의 양방향 열거를 위한 반복자.
RandomIterator 항목들의 시퀀스의 랜덤 열거를 위한 반복자.
ConstForwardIterator 상수 항목들의 시퀀스의 순방향 열거를 위한 반복자.
ConstBidirectionalIterator 상수 항목들의 시퀀스의 양방향 열거를 위한 반복자.
ConstRandomIterator 상수 항목들의 시퀀스의 랜덤 열거를 위한 반복자.

알고리즘

함수 설명
Abs 절대값을 계산합니다.
AdjacentFind 동일하거나 특정 조건을 만족하는 2개의 인접 요소들을 검색합니다.
BinarySearch 정렬된 범위 안에 있는 요소가 특정 값과 동일한지, 또는 이항 술어(binary predicate)에 의해 지정된 의미에서 동일한지 여부를 테스트합니다.
Copy 소스 범위로부터 대상 범위까지 요소들의 값들을 할당합니다. 요소들의 소스 시퀀스를 통해 반복하며, 순방향으로 요소들에게 새 위치를 할당합니다.
CopyBackward 소스 범위로부터 대상 범위까지 요소들의 값들을 할당합니다. 요소들의 소스 시퀀스를 통해 반복하며, 역방향으로 요소들에게 새 위치를 할당합니다.
CopyIf 소스 범위로부터 대상 범위까지 요소들 중에서 특정 조건을 만족하는 값들을 할당합니다. 순방향으로 요소들에게 새 위치를 할당합니다.
CopyIfBackward 소스 범위로부터 대상 범위까지 요소들 중에서 특정 조건을 만족하는 값들을 할당합니다. 역방향으로 요소들에게 새 위치를 할당합니다.
Count 범위 안에서 특정 값과 일치하는 값을 가진 요소들의 개수를 리턴합니다.
CountIf 범위 안에서 특정 조건을 만족하는 값들을 가진 요소들의 개수를 리턴합니다.
CutToMax 1번째 파라미터를 상한으로 절단합니다.
CutToMin 1번째 파라미터를 하한으로 절단합니다.
CutToRange 1번째 파라미터를 범위로 절단합니다.
EqualRange 정결된 범위에서 위치들의 한 쌍을 찾습니다. 첫째 위치는 지정된 요소의 위치보다 작거나 동일하며, 둘째 위치는 요소의 위치보다 큽니다. 여기서 시퀀스 내 위치를 설정하는 데 사용되는 등가 또는 순서는 이항 술어(binary predicate)에 의해 지정될 수 있습니다.
Fill 특정 범위 안에 있는 모든 요소에게 동일한 새로운 값을 할당합니다.
FillN 특정 요소로 시작하는 범위 안에 지정된 수의 요소들에게 새로운 값을 할당합니다.
Find 범위 내 지정된 값을 갖는 요소가 처음으로 발견되는 위치를 찾습니다.
FindEnd 범위 내에서 지정된 시퀀스와 동일하거나 이항 술어(binary predicate)로 지정된 의미에서 동일한 마지막 서브 시퀀스를 찾습니다.
FindFirstOf 목표 범위 내의 여러 값 중 처음 발견되는 것 또는 이항 술어(binary predicate)로 지정된 의미에서 지정된 요소 집합에 대해 여러 요소 중 처음 발견되는 것을 검색합니다.
FindIf 범위 내에서 특정 조건을 만족하는 요소가 처음 발견되는 위치를 찾습니다.
ForEach 지정된 술어를 범위 내의 순방향 순서로 각 요소에 적용하고 술어를 리턴합니다.
Generate 술어에 의해 생성된 값들을 범위 내 각 요소에 할당합니다.
GenerateN 함수 객체에 의해 생성된 값들을 범위 내의 지정된 요소의 수에 할당하고 마지막으로 할당된 값 바로 이전 위치를 리턴합니다.
Includes 하나의 정렬된 범위가 두 번째 정렬된 범위에 포함된 모든 요소들을 포함하는지 여부를 테스트합니다. 여기서 요소들 간의 순서 또는 등가 기준은 이항 술어에 의해 지정될 수 있습니다.
InplaceMerge 2개의 연속 정렬된 범위의 요소들을 단일 정렬된 범위로 결합합니다. 여기서 순서 기준은 이항 술어로 지정될 수 있습니다.
IsBetween 주어진 값이 지정된 범위 안에 있는지 여부를 리턴합니다.
IsEqual 2개의 범위를 요소 별로 비교할 때 동일한 것인지, 혹은 이항 술어에 의해 지정된 의미에서 동일한 것인지 비교합니다.
IterSwap 지정된 반복자 쌍에서 참조한 두 값을 교환합니다.
LexicographicalCompare 두 시퀀스 간에 요소 별로 비교하여 두 시퀀스 중 어느 것이 더 작은지 확인합니다.
LowerBound 정렬된 범위의 1번째 요소가 지정된 값보다 작거나 같은 값을 갖는 경우를 찾습니다. 여기서 등가는 이항 술어에 의해 지정될 수 있습니다.
MakeHeap 지정된 범위의 요소들을 첫 번째 요소가 가장 크고 정렬 기준이 이항 술어로 지정될 수 있는 Heap로 변환합니다.
Max 두 객체를 비교하고 그 중에서 더 큰 객체를 리턴합니다. 여기서 순서 기준은 이항 술어로 지정될 수 있습니다.
MaxElement 이항 술어에 의해 순서 기준이 지정될 수 있는 지정된 범위에서 가장 큰 요소 중 처음 발견되는 것을 검색합니다.
Merge 정렬된 2개의 소스 범위의 모든 요소를 단일 정렬된 대상 범위로 결합합니다. 이 경우 순서 기준은 이항 술어로 지정될 수 있습니다.
Min 두 객체를 비교하고 그 중에서 더 작은 객체를 리턴합니다. 여기서 순서 기준은 이항 술어로 지정될 수 있습니다.
MinElement 이항 술어에 의해 순서 기준이 지정될 수 있는 지정된 범위에서 가장 작은 요소 중 처음 발견되는 것을 검색합니다.
Mismatch 동일하거나 이항 술어에 의해 지정된 의미에서 동일한 요소에 대하여 두 범위를 요소 별로 비교하고 차이가 발생하는 첫 번째 위치를 찾습니다.
NextPermutation 원래 순서가 존재하는 경우 사전식 오름차순으로 범위 내 요소들을 재정렬합니다. 여기서 다음 순서에 대한 의미는 이항 술어로 지정될 수 있습니다.
NthElement 일련의 요소들을 분할하여, 그 앞에 있는 모든 요소들이 그것보다 작거나 같도록 그 범위에 있는 시퀀스의 N번째 요소들을 정확하게 위치시키고, 그 시퀀스에서 그것을 따르는 모든 요소들이 그것보다 크거나 같도록 합니다.
PartialSort 범위 내의 지정된 수의 작은 요소들을 오름차순으로, 또는 이항 술어에 의해 지정된 순서 기준에 따라 정렬합니다.
PartialSortCopy 소스 범위의 요소를 지정된 이항 술어보다 작거나 다른 이항 술어에 의해 소스 요소들이 정렬되는 대상 범위로 복사합니다.
Partition 범위 내의 요소를 2개의 분리 집합으로 분류하고, 이러한 요소들은 그것을 만족시키지 못하는 요소보다 먼저 단일 술어를 만족시킵니다.
PopHeap Heap의 앞쪽에서 범위의 다음에서 마지막 위치로 가장 큰 요소를 제거한 다음, 나머지 요소들로부터 새로운 Heap를 형성합니다.
PrevPermutation 원래 순서가 존재하는 경우 사전식 내림차순으로 범위 내 요소들을 재정렬합니다. 여기서 다음 순서에 대한 의미는 이항 술어로 지정될 수 있습니다.
PushHeap 범위의 끝 부분에 있는 요소를 범위의 이전 요소들로 구성된 기존 Heap에 추가합니다.
RandomShuffle 범위 내의 N개 요소들의 시퀀스를 N 중 하나로 재배열합니다! 가능한 정렬들은 임의로 선택됩니다.
Remove 나머지 요소들의 순서를 방해하지 않고 주어진 범위에서 지정된 값을 제거합니다. 그리고 지정된 값이 없는 새 범위의 끝을 리턴합니다.
RemoveCopy 나머지 요소들의 순서를 방해하지 않고 소스 범위에서 대상 범위로 요소들을 복사합니다. 단, 지정된 값의 요소들은 복사에서 제외합니다. 새로운 대상 범위의 끝을 리턴합니다.
RemoveCopyIf 나머지 요소의 순서를 방해하지 않고 소스 범위에서 대상 범위로 요소들을 복사합니다. 단, 술어를 만족하는 요소들은 복사에서 제외합니다. 새로운 대상 범위의 끝을 리턴합니다.
RemoveIf 나머지 요소의 순서를 방해하지 않고 주어진 범위에서 술어를 만족하는 요소들을 제거합니다. 그리고 지정된 값이 없는 새로운 범위의 끝을 리턴합니다.
Replace 범위 내에서 각 요소를 검사하고 지정한 값과 일치하면 그것을 대체합니다.
ReplaceCopy 소스 범위 내에서 각 요소를 검사하고 결과를 새 대상 범위로 복사하는 동안 지정된 값과 일치하는 경우 해당 요소를 대체합니다.
ReplaceCopyIf 소스 범위 내에서 각 요소를 검사하고 결과를 새 대상 범위로 복사하는 동안 지정된 술어를 만족하는 경우 해당 요소를 대체합니다.
ReplaceIf 범위 내에서 각 요소를 검사하고 지정된 술어를 만족하는 경우 그것을 대체합니다.
Reverse 범위 안에 있는 요소들의 순서를 반전합니다.
ReverseCopy 대상 범위로 복사하는 동안 소스 범위 내의 요소들의 순서를 반전합니다.
Rotate 2개의 인접한 범위에 있는 요소들을 교환합니다.
RotateCopy 소스 범위 내의 2개의 인접한 범위에 있는 요소들을 교환하고 결과를 대상 범위로 복사합니다.
Search 주어진 시퀀스 안의 요소들과 비교하여 대상 범위 안에서 요소들과 동일하거나 이항 술어로 지정된 의미에서 동일한 요소들과 동일한 시퀀스가 처음 발견되는 것을 검색합니다.
SearchN 특정 값을 갖거나 또는 이항 술어에 의해 지정된 값과 관계를 갖는 지정된 수의 요소들의 범위 안에서 처음 발견되는 서브 시퀀스를 검색합니다.
SetDifference 1번째 정렬된 소스 범위에 속하지만 2번째 정렬된 소스 범위에 속하지 않는 모든 요소들을 단일 정렬된 대상 범위로 통합합니다. 여기서 순서 기준은 이항 술어로 지정될 수 있습니다.
SetIntersection 양쪽의 정렬된 소스 범위에 속하는 모든 요소를 단일 정렬된 대상 범위로 통합합니다. 여기서 순서 기준은 이항 술어로 지정될 수 있습니다.
SetSymmetricDifference 정렬된 소스 범위 중 하나에 속하지만 양쪽에 모두 속하지 않은 모든 요소를 단일 정렬된 대상 범위로 통합합니다. 여기서 순서 기준은 이항 술어로 지정될 수 있습니다.
SetUnion 정렬된 두 소스 범위 중 적어도 하나에 속하는 모든 요소를 단일 정렬된 목적지 범위로 통합합니다. 여기서 순서 기준은 이항 술어로 지정될 수 있습니다.
Sort 지정된 범위에 있는 요소들을 오름차순 또는 이항 술어로 지정된 순서 기준에 따라 정렬합니다.
SortHeap Heap를 정렬된 범위로 변환합니다.
StablePartition 범위 내의 요소들을 두 개의 분리 집합으로 분류합니다. 여기서 단일 술어를 만족시키는 요소들은 만족시키지 못하는 요소들보다 앞서고 동일한 요소들의 상대적 순서는 유지됩니다.
StableSort 지정된 범위에 있는 요소들을 오름차순 또는 이항 술어에 의해 지정된 순서 기준에 따라 정열하고 동일한 요소들의 상대적 순서는 유지합니다.
Swap 2개의 변수의 내용을 교환합니다.
SwapRanges 한 범위의 요소들을 동일한 크기의 다른 범위의 요소들과 교환합니다.
Transform 소스 범위의 각 요소 또는 두 소스 범위의 요소 쌍에 지정된 술어를 적용하고 술어의 리턴 값들을 대상 범위로 복사합니다.
Unique 지정된 범위 내에서 서로 인접하는 중복 요소들을 제거합니다.
UniqueCopy 소스 범위의 요소들을 서로 인접한 중복 요소를 제외한 대상 범위로 복사합니다.
UpperBound 정렬된 범위 안에서 지정된 값보다 더 큰 값을 갖는 1번째 요소의 위치를 검색합니다. 여기서 순서 기준은 이항 술어에 의헤 지정될 수 있습니다.

텍스트

클래스 설명
UniChar 유니코드(UTF-16) 문자.
UniString 유니코드(UTF-16) 문자열.

이벤트

클래스 설명
Event 루트 이벤트 클래스.
EventObserver 루트 이벤트 옵저버 클래스.
EventSource 루트 이벤트 소스 클래스.

유틸리티 클래스 함수들

클래스 설명
Guid 유니버설하게 유일한 식별자를 대표하는 클래스.
Pair 2개의 객체들을 단일 객체처럼 취급할 수 있는 능력을 제공하는 클래스.
NewPair 새로운 Pair 인스턴스를 생성합니다.