Microsoft Information Protection (MIP) SDK for C++: Reference 1.15
Doxygen-generated documentation for MIP SDK written in C++
Loading...
Searching...
No Matches
action.h File Reference

A file containing the Action base class and the ActionType enumerator. More...

#include <string>
#include "mip/mip_namespace.h"
+ Include dependency graph for action.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Action
 Interface for an action. More...
 

Enumerations

enum class  ActionType : unsigned int {
  ADD_CONTENT_FOOTER = 1 << 0 ,
  ADD_CONTENT_HEADER = 1 << 1 ,
  ADD_WATERMARK = 1 << 2 ,
  CUSTOM = 1 << 3 ,
  JUSTIFY = 1 << 4 ,
  METADATA = 1 << 5 ,
  PROTECT_ADHOC = 1 << 6 ,
  PROTECT_BY_TEMPLATE = 1 << 7 ,
  PROTECT_DO_NOT_FORWARD = 1 << 8 ,
  REMOVE_CONTENT_FOOTER = 1 << 9 ,
  REMOVE_CONTENT_HEADER = 1 << 10 ,
  REMOVE_PROTECTION = 1 << 11 ,
  REMOVE_WATERMARK = 1 << 12 ,
  APPLY_LABEL = 1 << 13 ,
  RECOMMEND_LABEL = 1 << 14 ,
  PROTECT_ADHOC_DK = 1 << 15 ,
  PROTECT_DO_NOT_FORWARD_DK = 1 << 17 ,
  PROTECT_BY_ENCRYPT_ONLY = 1 << 18 ,
  ADD_DYNAMIC_WATERMARK = 1 << 19 ,
  REMOVE_DYNAMIC_WATERMARK = 1 << 20
}
 Different action types. More...
 

Functions

constexpr ActionType operator& (ActionType a, ActionType b)
 And (&) operator for Action type enum.
 
constexpr ActionType operator^ (ActionType a, ActionType b)
 Xor (^) operator for Action type enum.
 
constexpr ActionType operator| (ActionType a, ActionType b)
 Or (|) operator for Action type enum.
 

Detailed Description

A file containing the Action base class and the ActionType enumerator.

Definition in file action.h.

Enumeration Type Documentation

◆ ActionType

enum class ActionType : unsigned int
strong

Different action types.

Note
CUSTOM is the generic action type. Every other action type is a specific action with a specific meaning.
Enumerator
ADD_CONTENT_FOOTER 

Add a content footer to the document action type.

ADD_CONTENT_HEADER 

Add a content header to the document action type.

ADD_WATERMARK 

Add a water mark to the entire document action type.

CUSTOM 

A custom defined action type.

JUSTIFY 

A justify action type.

METADATA 

A Meta data change action type.

PROTECT_ADHOC 

A protect by adhoc policy action type.

PROTECT_BY_TEMPLATE 

A protect by template action type.

PROTECT_DO_NOT_FORWARD 

A protect by do not forward action type.

REMOVE_CONTENT_FOOTER 

Remove content footer action type.

REMOVE_CONTENT_HEADER 

Remove content header action type.

REMOVE_PROTECTION 

Remove protection action type.

REMOVE_WATERMARK 

Remove watermarking action type.

APPLY_LABEL 

Apply label action type.

RECOMMEND_LABEL 

Recommend label action type.

PROTECT_ADHOC_DK 

A protect by adhoc policy action type.

PROTECT_DO_NOT_FORWARD_DK 

A protect by do not forward action type with double key.

PROTECT_BY_ENCRYPT_ONLY 

A protect by encryption only action type.

ADD_DYNAMIC_WATERMARK 

Add a dynamic watermark to the entire document action type.

REMOVE_DYNAMIC_WATERMARK 

Remove dynamic watermark action type.

Definition at line 46 of file action.h.

46 : unsigned int {
47 ADD_CONTENT_FOOTER = 1 << 0, /**< Add a content footer to the document action type.*/
48 ADD_CONTENT_HEADER = 1 << 1, /**< Add a content header to the document action type.*/
49 ADD_WATERMARK = 1 << 2, /**< Add a water mark to the entire document action type.*/
50 CUSTOM = 1 << 3, /**< A custom defined action type.*/
51 JUSTIFY = 1 << 4, /**< A justify action type.*/
52 METADATA = 1 << 5, /**< A Meta data change action type.*/
53 PROTECT_ADHOC = 1 << 6, /**< A protect by adhoc policy action type.*/
54 PROTECT_BY_TEMPLATE = 1 << 7, /**< A protect by template action type.*/
55 PROTECT_DO_NOT_FORWARD = 1 << 8, /**< A protect by do not forward action type.*/
56 REMOVE_CONTENT_FOOTER = 1 << 9, /**< Remove content footer action type.*/
57 REMOVE_CONTENT_HEADER = 1 << 10, /**< Remove content header action type.*/
58 REMOVE_PROTECTION = 1 << 11, /**< Remove protection action type.*/
59 REMOVE_WATERMARK = 1 << 12, /**< Remove watermarking action type.*/
60 APPLY_LABEL = 1 << 13, /**< Apply label action type.*/
61 RECOMMEND_LABEL = 1 << 14, /**< Recommend label action type.*/
62 PROTECT_ADHOC_DK = 1 << 15, /**< A protect by adhoc policy action type.*/
63 // 1 << 16 reserved
64 PROTECT_DO_NOT_FORWARD_DK = 1 << 17, /**< A protect by do not forward action type with double key.*/
65 PROTECT_BY_ENCRYPT_ONLY = 1 << 18, /**< A protect by encryption only action type.*/
66 ADD_DYNAMIC_WATERMARK = 1 << 19, /**< Add a dynamic watermark to the entire document action type.*/
67 REMOVE_DYNAMIC_WATERMARK = 1 << 20, /**< Remove dynamic watermark action type.*/
68};
@ REMOVE_CONTENT_FOOTER
Remove content footer action type.
@ APPLY_LABEL
Apply label action type.
@ ADD_DYNAMIC_WATERMARK
Add a dynamic watermark to the entire document action type.
@ ADD_WATERMARK
Add a water mark to the entire document action type.
@ REMOVE_CONTENT_HEADER
Remove content header action type.
@ JUSTIFY
A justify action type.
@ PROTECT_DO_NOT_FORWARD
A protect by do not forward action type.
@ ADD_CONTENT_FOOTER
Add a content footer to the document action type.
@ REMOVE_WATERMARK
Remove watermarking action type.
@ PROTECT_BY_ENCRYPT_ONLY
A protect by encryption only action type.
@ CUSTOM
A custom defined action type.
@ METADATA
A Meta data change action type.
@ REMOVE_DYNAMIC_WATERMARK
Remove dynamic watermark action type.
@ PROTECT_ADHOC
A protect by adhoc policy action type.
@ ADD_CONTENT_HEADER
Add a content header to the document action type.
@ PROTECT_BY_TEMPLATE
A protect by template action type.
@ REMOVE_PROTECTION
Remove protection action type.
@ PROTECT_DO_NOT_FORWARD_DK
A protect by do not forward action type with double key.
@ RECOMMEND_LABEL
Recommend label action type.
@ PROTECT_ADHOC_DK
A protect by adhoc policy action type.

Function Documentation

◆ operator&()

ActionType operator& ( ActionType a,
ActionType b )
inlineconstexpr

And (&) operator for Action type enum.

Definition at line 79 of file action.h.

79 {
80 return static_cast<ActionType>(static_cast<unsigned int>(a) & static_cast<unsigned int>(b));
81}
ActionType
Different action types.
Definition action.h:46

◆ operator^()

ActionType operator^ ( ActionType a,
ActionType b )
inlineconstexpr

Xor (^) operator for Action type enum.

Definition at line 85 of file action.h.

85 {
86 return static_cast<ActionType>(static_cast<unsigned int>(a) ^ static_cast<unsigned int>(b));
87}

◆ operator|()

ActionType operator| ( ActionType a,
ActionType b )
inlineconstexpr

Or (|) operator for Action type enum.

Definition at line 73 of file action.h.

73 {
74 return static_cast<ActionType>(static_cast<unsigned int>(a) | static_cast<unsigned int>(b));
75}